radzio.dxp.pl |
|||
Menu Wyświetlacze LCD Układy peryferyjne Programy dla PC Projekty Mikrokontrolery AVR
|
Pamięci EEPROM typu 24C01, 24C02, 24C04, 24C08, 24C16 posiadają pojemność od
jednego do szesnastu kilobitów, co odpowiada pojemności od 128 do 2
kilobajtów. Pamięci te posiadają szeregowy interfejs I2C. Rozkład wyprowadzeń układów pamięci 24C01-24C16 przedstawia poniższy rysunek
Każdy układ pracujący na magistrali I2C posiada 7-bitowy adres jednoznacznie identyfikujący dany układ na magistrali. W przypadku pamięci 24Cxx cztery najstarsze bity adresu są równe 1010 (0xA szesnastkowo). W zależności od pojemności wykorzystywanej pamięci EEPROM 4 młodsze bity mają różne znaczenie. Znaczenie tych bitów oraz strukturę bajtu adresu pamięci 24C01-24C16 przedstawia poniższa tabela :
Układy 24C01/02 posiadają 3 wejścia adresowe pozwalające na umieszczenie na jednej magistrali do 8 układów pamięci. Układ 24C04 posiada dwa wejścia adresowe, bit b1 jest bitem A8 adresu komórki pamięci. Podobnie sprawa wygląda z układem 24C08, który posiada jedno wejście adresowe (na jednej magistrali mogą się znajdować maksymalnie 2 układy) a pozostałe bity są najstarszymi bitami adresu komórki pamięci. Z kolei układ 24C16 nie posiada żadnych zewnętrznych linii adresowych (na magistrali może być tylko jeden taki układ) natomiast na bitach b3:b1 odwzorowane są 3 najstarsze bity adresu komórki pamięci. Zapis do pamięci
Procedura zapisu bajtu danych pod określony adres realizuje następujące zadania :
Układ pamięci każdy odebrany bajt potwierdza wystawieniem na magistralę bitu ACK (stan niski na magistrali). Brak potwierdzenia ostatniego bajtu (danych przeznaczonych do zapisu) sygnalizuje zabezpieczenie pamięci przed zapisem (sterowane stanem wyprowadzenia nr 7 układu pamięci). Przykładowa procedura zapisu bajtu do pamięci, korzystająca z układu TWI mikrokontrolerów Atmel AVR może wyglądać następująco :
Odczyt z pamięci
Procedura odczytu bajtu danych spod określonego adresu realizuje następujące zadania :
Przykładowa procedura odczytu bajtu może wyglądać następująco :
|
||
(c) Radosław Kwiecień |