AT24C256 to 256-kilometrowy EEPROM, który zapewnia nielotne przechowywanie, umożliwiając przetrwanie danych nawet po wyłączeniu zasilania. Komunikuje się z mikrokontrolerem za pośrednictwem protokołu I2C, dzięki czemu jest idealny do przechowywania danych czujników, konfiguracji lub innych informacji w projektach Arduino. Ten samouczek poprowadzi Cię przez interfejs i korzystanie z AT24C256 z Arduino.
Czego będziesz potrzebować
- AT24C256 Moduł EEPROM lub IC
- Arduino Board (np. UNO, Mega, Nano)
- Druty chleba i skoczków
- Komputer z zainstalowanym Arduino IDE
Krok 1: Zrozumienie AT24C256
EEPROM AT24C256 ma następujące funkcje:
- Pojemność przechowywania: 32 kb (256 kBits = 32 768 bajtów)
- Protokół komunikacji: I2C
-
Adres I2C: Konfigurowalne pomiędzy
0x50
I0x57
Korzystanie z pinów A0, A1 i A2 - Napięcie robocze: 2,5 V do 5,5 V.
Pinout
Szpilka | Funkcjonować |
---|---|
A0, A1, A2 | Konfiguracja adresu I2C |
VCC | Zasilacz (5 V) |
GND | Grunt |
SDA | I2C Linia danych |
Scl | Linia zegara I2C |
WP | Ochrona zapisu (opcjonalnie, połącz się z GND, aby włączyć dostęp do zapisu) |
Krok 2: Okablowanie AT24C256 do Arduino
Podłącz AT24C256 z Arduino w następujący sposób:
AT24C256 PIN | PIN Arduino |
---|---|
VCC | 5v |
GND | GND |
SDA | A4 |
Scl | A5 |
WP | GND |
Notatka: Jeśli używasz modułu z rezystorami podciągającymi, nie są potrzebne dodatkowe rezystory. W przypadku samodzielnych ICS użyj rezystorów podciągania 4,7 kΩ na liniach SDA i SCL.
Krok 3: Zainstaluj wymaganą bibliotekę
Aby uprościć pracę z AT24C256, zainstaluj bibliotekę „Wire” (wbudowaną w Arduino IDE) i bibliotekę „EEPROM_AT24C256”.
Kroki do zainstalowania biblioteki EEPROM_AT24C256:
- Otwórz Arduino IDE.
- Idź do Naszkicować > Uwzględnij bibliotekę > Zarządzaj bibliotekami.
- Wyszukaj „AT24C256” i kliknij Zainstalować.
Krok 4: Prześlij kod
Przykład: pisanie i czytanie danych
Ten kod pokazuje, jak napisać ciąg do EEPROM, a następnie odczytać go z powrotem:
#include <Wire.h>
#include <AT24C256.h>
AT24C256 eeprom(0x50); // Initialize EEPROM with default I2C address
void setup() {
Serial.begin(9600);
while (!Serial);
Serial.println("AT24C256 EEPROM Test");
// Write data to EEPROM
String dataToWrite = "Hello, EEPROM!";
Serial.print("Writing to EEPROM: ");
Serial.println(dataToWrite);
for (int i = 0; i < dataToWrite.length(); i++) {
eeprom.writeByte(i, dataToWrite[i]);
}
delay(1000); // Wait for data to be written
// Read data from EEPROM
Serial.println("Reading from EEPROM:");
for (int i = 0; i < dataToWrite.length(); i++) {
char c = eeprom.readByte(i);
Serial.print(c);
}
Serial.println();
}
void loop() {
// Nothing to do here
}
Krok 5: Przetestuj konfigurację
- Podłącz Arduino do komputera za pomocą USB.
- Otwórz Arduino IDE i wybierz poprawne Tablica I Port pod Narzędzia menu.
- Prześlij kod, klikając Wgrywać.
- Otwórz monitor szeregowy (Narzędzia > Monitor szeregowy) i ustaw wskaźnik transmisji na
9600
. - Obserwuj dane pisemne i odczytu wyświetlone w monitor szeregowych.
Opcjonalnie: usuwanie danych
Aby usunąć EEPROM, napisz 0xFF
Do wszystkich lokalizacji pamięci:
for (int i = 0; i < 32768; i++) {
eeprom.writeByte(i, 0xFF);
}
Zastosowania AT24C256
- Przechowywanie dzienników danych czujników
- Ustawienia konfiguracji urządzeń IoT
- Przechowywanie preferencji użytkownika
- Budowanie systemów logowania danych
Rozwiązywanie problemów
- Brak komunikacji: Sprawdź okablowanie I2C i upewnij się, że używany jest prawidłowy adres I2C.
- Nieprawidłowe odczyt danych: Upewnij się, że proces zapisu zakończył się przed przeczytaniem.
- Włączona ochrona przed zapisem: Sprawdź, czy pin WP jest podłączony do GND w celu uzyskania dostępu do zapisu.
Wniosek
Z powodzeniem połączyłeś EEPROM AT24C256 z Arduino, umożliwiając przechowywanie i pobieranie danych nieulotnych w twoich projektach. Eksperymentuj z możliwościami tworzenia systemów logowania danych, pamięci konfiguracji lub innymi aplikacjami zależnymi od pamięci!