DSM51 M11


Programator pamięci EEPROM
Model M-11
do Dydaktycznego Systemu
Mikroprocesorowego DSM-51
Instrukcja u\ytkowania
Copyright © 2007 by MicroMade
All rights reserved
Wszelkie prawa zastrze\one
MicroMade
Gałka i Drożdż sp. j.
64-920 PIAA, ul. Wieniawskiego 16
Tel./fax: (67) 213.24.14
E-mail: mm@micromade.pl
Internet: www.micromade.pl
Wszystkie nazwy i znaki towarowe u\yte w niniejszej publikacji są własnością od-
powiednich firm.
M-11 Programator pamięci EEPROM
1. Przeznaczenie modelu
Model M-11 jest przystawkÄ… do Dydaktycznego Systemu Mikroprocesorowego
DSM-51 umo\liwiającą programowanie szeregowych pamięci EEPROM.
Istnieje wiele ró\nych pamięci EEPROM, ró\niących się między sobą interfejsem
komunikacyjnym. Wśród nich wyró\niamy trzy najpopularniejsze:
Microwire
SPI
I²C
Wszystkie te interfejsy są obsługiwane przez model M-11 - jest to więc w pełni funk-
cjonalny programator pamięci EEPROM. Wykorzystanie tych mo\liwości zale\y tyl-
ko od napisania odpowiedniego oprogramowania.
Uwaga!
Model wyposa\ony jest w 3 dodatkowe podstawki, przeznaczone do przechowy-
wania załączonych pamięci EEPROM. Wyjmowanie układów z podstawek powi-
nno być wykonywane za pomocą cienkiego śrubokrętu, aby nie pogiąć nó\ek
układów.
2. Budowa i zasada działania
Zaprojektowanie programatora pamięci EEPROM to zupełnie inne zagadnienie ni\
podłączenie jednego, wybranego EEPROMu do mikrokontrolera. Projektując
programator często nale\y pogodzić sprzeczne wymagania. Na przykład, na tym
samym pinie jeden EEPROM wymaga dołączenia masy (minus zasilania), podczas,
gdy drugi ma w tym samym miejscu transmisjÄ™ dwukierunkowÄ…. Dlatego model M11
nie jest tylko podłączeniem wejść/wyjść cyfrowych do podstawki.
Model M-11 jest sterowany przez system DSM-51 za pośrednictwem złącza
wejść/wyjść cyfrowych. Wyjścia te są dwukierunkowe, ale przestawiane mogą być
tylko całymi portami. Programator wymaga natomiast indywidualnej zmiany kierun-
ku poszczególnych pinów. Dlatego wybrano następujące rozwiązanie.
Jako port wyjściowy u\yto port C, poniewa\ pozwala on na indywidualne sterowanie
poszczególnymi pinami. Do sterowania pinów, które dla pewnych pamięci są równie\
wyjściami, zastosowano tzw. otwarte kolektory. Ustawienie na danym pinie stanu 1
(podawanego faktycznie przez opornik podwieszajÄ…cy) pozwala na jego sterowanie
przez programowany EEPROM.
W celu odczytu tych pinów dołączono je dodatkowo do portu A, ustawionego jako
wejściowy.
Konsekwencją sterowania pinu poprzez jeden tranzystor w układzie otwartego kolek-
tora jest zanegowanie stanu z wyjścia portu. Trzeba o tym pamiętać pisząc
oprogramowanie.
© 08/2007 MicroMade System DSM-51 1
M-11 Programator pamięci EEPROM
Dołączenie masy (ujemnego bieguna zasilania układu) jest wykonane w ten sam spo-
sób, poniewa\ dla ró\nych pamięci EEPROM masa musi być podłączona do ró\nych
pinów.
Jak z powy\szego opisu wynika, poszczególne piny pełnią ró\ne funkcje, w zale\no-
ści od typu programowanego układu. W celu ułatwienia pisania oprogramowania,
mo\na programator przedstawić w postaci innego schematu blokowego, dla ka\dego
z typów pamięci EEPROM.
Programator pamięci microwire
VCC
PC0
VCC
PC6 CS
PC7 SK
8255
PC4 DI
PC5=0
93C46
PA0 DO
PC1 ORG
GND
PC3
2 Model DSM-51 © 08/2007 MicroMade
M-11 Programator pamięci EEPROM
Programator pamięci SPI
VCC
PC0
VCC
PC6 CS
PC1 SCK
8255
PC3 SI
PC7=0
25C040
PA2 SO
PC4 WP
PC2 HOLD
GND
PC5
Programator pamiÄ™ci I²C
VCC
PC0
VCC
PA4 SDA
PC3
8255
24C01A
PC1 SCL
PC2 WP
PC6 A0
PC7 A1
PC4 A2
GND
PC5
© 08/2007 MicroMade System DSM-51 3
M-11 Programator pamięci EEPROM
3. Oprogramowanie
Wraz z modelem M-11 dostarczane są trzy pamięci EEPROM:
93C46 - Microwire, 128 x 8 bitów (64 x 16 bitów)
25C040 - SPI, 512 x 8 bitów
24C01A - I²C, 128 x 8 bitów
Dostępne są równie\ trzy przykładowe programy, które potrafią odczytać i zapisać
dane do określonego EEPROMu.
Ka\dy z tych programów potrafi odczytać 8 pierwszych komórek pamięci EEPROM.
Po naciśnięciu klawisza Enter pozwala wybrać adres jednej z nich i wpisać do niej
nową wartość. Programy te nie są oczywiście pełnowartościowymi programatorami
pamięci EEPROM, ale wykorzystując zawarte w nich procedury odczytu i zapisu,
mo\na taki program napisać.
4. Interfejsy szeregowe
Microwire.
Interfejs Microwire jest opisany w podręczniku do DSM51. Interfejs stanowią 4 linie.
CS - wybór układu
SK - zegar transmisji
DI - wejście danych
DO - wyjście danych
EEPROMy Microwire posiadają jedną cechę nie występującą w innych pamięciach.
Istnieją pamięci Microwire o organizacji 8 lub 16 bitowej, a niektóre mogą pracować
w obu tych trybach. W takim wypadku, do zmiany organizacji pamięci słu\y linia
ORG. Dostarczany z przystawką EEPROM AT93C46 mo\e pracować w obu trybach.
Stan 0 na linii ORG powoduje wybór trybu 8-bitowego, a stan 1 trybu 16-bitowego.
Poni\ej przedstawiona jest przykładowa sekwencja odczytu:
CS
SK
DI 1 1 0 A6 A0
DO 0 D7 D0
4 Model DSM-51 © 08/2007 MicroMade
M-11 Programator pamięci EEPROM
SPI
Interfejs SPI jest bardzo zbli\ony do Microwire. Tu równie\ występują cztery podsta-
wowe linie interfejsu, w zasadzie o identycznych funkcjach (choć oznaczane innymi
skrótami).
CS - wybór układu (polaryzacja odwrotna ni\ w Microwire)
SCK - zegar transmisji
SI - wejście danych
SO - wyjście danych
W porównaniu do interfejsu Microwire ujednolicono tu długość wszystkich rozkazów
i danych - zawsze przesyłana jest wielokrotność 8 bitów. W Microwire długość roz-
kazu zmienia się wraz z rozmiarem pamięci EEPROM.
Stan 0 na linii WP powoduje zabezpieczenie zawartości EEPROMu 25C040 przed
modyfikacją. Aby rozkazy zapisu do pamięci działały linia ta musi być w stanie 1.
Linia HOLD pozwala na chwilowe zawieszenie komunikacji z EEPROMem w celu
wykonania na szynie SPI innej operacji. W czasie komunikacji z EEPROMem linia ta
musi być ustawiona w stan 1.
Przykładowa sekwencja odczytu dla EEPROMu AT25C040 przedstawiona jest na ry-
sunku.
CS
SCK
INSTRUKCJA ADRES DANE
A8 7 6 0
SI
SO
7 6 0
I²C
Interfejs I²C jest ju\ zdecydowanie inny. Z 4 linii pozostawiono tylko dwie:
SCL - zegar transmisji
SDA - dwukierunkowa linia danych.
© 08/2007 MicroMade System DSM-51 5
M-11 Programator pamięci EEPROM
Początek i koniec transmisji, czyli zbocza linii CS, zostały zastąpione odpowiednią
sekwencjÄ… zmian na linii SDA w czasie, gdy linia SCL jest w stanie wysokim.
SDA
SCL
START
STOP
Poza tymi sekwencjami, zmiana na linii danych mo\e następować tylko wtedy, kiedy
na linii SCL jest stan niski.
Do interfejsu I²C mo\na doÅ‚Ä…czyć wiele ukÅ‚adów, gdy\ w transmisji jest przesyÅ‚any
równie\ adres urządzenia. Ka\de przesłane 8 bitów jest zawsze potwierdzane na
dziewiątym bicie przez układ docelowy.
Trzy najmłodsze bity adresu EEPROMu 24C01A są określone przez stany podane na
jego linie A2,A1,A0. Pozwala to na podłączenie do 8 układów 24C01A do jednej
szyny I²C i niezale\ne komunikowanie siÄ™ z ka\dym z nich. W interfejsach MicroWi-
re i SPI takie rozwiązanie wymagałoby wytworzenia i rozprowadzenia niezale\nych
linii CS dla ka\dego EEPROMu.
Stan 1 na linii WP powoduje zabezpieczenie zawartości EEPROMu przed mody-
fikacjÄ….
Przykład sekwencji odczytu EEPROMu AT24C01A przedstawia rysunek.
ADRES
ADRES ADRES
UKAADU UKAADU DANA
DANEJ
7 6 10 7 6 1 0
S W A A S R A N S
T R C C T D C O T
A
A K K K A O
R R C P
T T K
Poszczególne interfejsy zostały przedstawione dość pobie\nie. Dokładne dane dostar-
czonych EEPROMów zawarte są w ich kartach katalogowych, umieszczonych w
katalogu DSM-51\Modele\M11.
6 Model DSM-51 © 08/2007 MicroMade
M-11 Programator pamięci EEPROM
Załączone, przykładowe programy wykorzystują najprostszy sposób obsługi
EEPROMów. Odczyt i zapis wykonywane są zawsze po jednym bajcie. Nie jest to
metoda zbyt efektywna. EEPROMy często pozwalają na odczyt kolejnych komórek
pamięci bez podawania kolejnych adresów (sequential read). Natomiast zapis odbywa
się przewa\nie większymi blokami danych, co znacznie przyspiesza programowanie
(czas programowania 1 bajtu i jednego bloku jest przewa\nie jednakowy). ChcÄ…c jed-
nak wykorzystywać te mo\liwości, trzeba zawsze dokładnie przejrzeć dane katalo-
gowe konkretnego EEPROMu. Zawsze mogą istnieć mniejsze lub większe ró\nice
pomiędzy EEPROMami ró\nych firm.
© 08/2007 MicroMade System DSM-51 7
1 2 3 4 5
D D
VCC
R1
PC6
S3
1k 1 8
T3
R11
VC 2 7
BC857
10k
R12
PC0 3 6
S1
R3 2k2 4 5
PA7 26 25 PA6 VC
R2 2k2
PA2
PA5 24 23 PA4 DIP8
R13
1k
C2
PA3 22 21 PA2 470
R4
PC7 100n
T1 S4
PA1 20 19 PA0
S2
2k2 BC847 1 8
PC7 18 17 PC6 D1
R5
GND 2 7
uW SPI I2C I2C SPI uW
LED1206R
PC5 16 15 PC4
2k2
GND 1 8 3 6
PC3 14 13 PC2 CS CS A0 VC VC VC GND
R14 1k
2 7 PC2 4 5
PC1 12 11 PC0 GND SK SO A1 WP HD NC
R6
C PC4 3 6 PC1 C
PB7 10 9 PB6 DI WP A2 SC SC OR DIP8
1k 4 5
1k
R15
PB5 8 7 PB4 DO GD GD SD SI GD
VC VC
S5
PB3 6 5 PB2
PROG_EE
1 8
PB1 4 3 PB0
R8 2 7
R16
2 1
R7 2k2 R17
2k2
PA0 PA4 3 6
D100/26GK 4 5
1k
1k
GND VCC
R9 R18
T4
PC5 PC3
T2
DIP8
BC847
2k2 BC847 2k2
C1
R10
R19 GND GND
100u/16
2k2
2k2
GND GND
GND
GND GND
B B
Tytuł:
Tytuł:
DSM-51 Programator pamięci EEPROM
A DSM-51 Programator pamięci EEPROM A
Symbol: Nr rys.: REV.
Symbol: Nr rys.: REV.
B
B
Model M11 DM11
Model M11 DM11
Data: Plik: Arkusz:
Data: Plik: Arkusz:
9-May-2007 D:\MM\MM_PROT\DSM\M11\DM11_B.SCH 1 z 1
9-May-2007 D:\MM\MM_PROT\DSM\M11\DM11_B.SCH 1 z 1
1 2 3 45


Wyszukiwarka

Podobne podstrony:
DSM51 M02
DSM51 M10
DSM51 M03
DSM51 M09
DSM51 M08
DSM51 M05
DSM51 M07
M11 Ogres Trolls
m11
R&M11 light
DSM51 M01
M11 Warstwa transportowa i aplikacji
DSM51 M13
dsm51 info
dsm51 IO (3)

więcej podobnych podstron