Sadržaj:
Video: Dodavanje 24LC256 EEPROM -a u Arduino Due: 3 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Arduinu zbog nedostatka eeproma. Ova instrukcija dodaje jednu i omogućuje vam spremanje vrijednosti u nepromjenjivu memoriju koja će preživjeti ažuriranje arduino firmvera.
Korak 1: Breadboarding
Ovdje postoje neke jako dobre upute: https://www.hobbytronics.co.uk/arduino-external-eepromSamo sam ih slijedio. Na fotografiji je kružno platno. pinovi 1 do 4 i pin 7 su uzemljeni. pin 8 je spojen na napajanje 3.3V na odgovarajućoj ploči. Žute (pin 6) i bijele (pin 5) žice spojene na i2c SDA (podaci) i SCL (sat) pinove na odgovarajućoj ploči (označeni brojevima 21 i 20).
Korak 2: Vrijeme koda
Evo nekoliko isječaka koda koje koristim u svojim skicama. Najprije uključite zaglavlja knjižnice Wire negdje pri vrhu skice: / * Koristite 24LC256 EEPROM za spremanje postavki * / #include Zatim dodajte neke funkcije za čitanje i pisanje bajtova iz EEPROM -a (stalo mi je samo do pojedinačnih bajtova, ali postoji mogućnost pisanja stranica i u čipu). Imajte na umu da postoji makro definicija 0x50.. ovo je adresa čipa na sabirnici i2c (možete povezati više od jedne stvari i2c na sabirnici i2c i odabrati s kojom želite razgovarati promjenom adrese). / * Ove dvije funkcije pomažu nam u pisanju na 24LC256 EEPROM čip */ #define EEPROM_ADDR 0x50 void EEPROM_write (nepotpisani int adr, bajtni podaci) {int rdata = data; Wire.beginTransmission (EEPROM_ADDR); Wire.write ((int) (addr >> 8)); // MSB Wire.write ((int) (addr & 0xFF)); // LSB Wire.write (rdata); Wire.endTransmission (); //Serial.print("EEPROM write: addr: "); //Serial.print(addr); //Serial.print (""); //Serial.println(data); kašnjenje (5); } bajt EEPROM_čitano (nepotpisani int addr) {bajt podatak = 0xFF; Wire.beginTransmission (EEPROM_ADDR); Wire.write ((int) (addr >> 8)); // MSB Wire.write ((int) (addr & 0xFF)); // LSB žica.endTransmission (); Wire.requestFrom (EEPROM_ADDR, 1); if (Wire.available ()) data = Wire.read (); //Serial.print("EEPROM read: addr: "); //Serial.print(addr); //Serial.print (""); //Serial.println(data); kašnjenje (5); vratiti podatke; } Možete dekomentirati retke Serial.print (…) ako želite vidjeti neke ispravljačke pogreške. U arduinos setup () funkciji pokrećete knjižnicu žica i možete čitati početne vrijednosti. Ovdje čitam u dva bajta (zastavice i max_cc), dvije riječi (lean_min i lean_max) i niz riječi sd_max [3]: // čitaju vrijednosti spremljene u EEPROM Wire.begin (); zastavice = EEPROM_čitaj (0); max_cc = EEPROM_čitaj (1); lean_min = riječ (EEPROM_čitaj (3), EEPROM_čitaj (2)); lean_max = riječ (EEPROM_čitaj (5), EEPROM_čitaj (4)); za (int j = 0; j <3; j) {sd_max [j] = riječ (EEPROM_čitaj (7 j*2), EEPROM_čitaj (6 j*2)); } Evo dijela koda koji ih zapisuje u EEPROM: EEPROM_write (0, zastavice); EEPROM_pisati (1, max_cc); EEPROM_write (2, lowByte (lean_min)); EEPROM_write (3, highByte (lean_min)); EEPROM_write (4, lowByte (lean_max)); EEPROM_write (5, highByte (lean_max)); for (int j = 0; j <3; j) {EEPROM_write (6 j*2, lowByte (sd_max [j])); EEPROM_write (7 j*2, highByte (sd_max [j])); } To je otprilike to.
Korak 3: Povežite ga
Priključite ga na neki veroboard kako biste ga uvrnuli u kućište i obavili posao.
Preporučeni:
Dodavanje monitora upotrebe kućnom termostatu: 4 koraka
Dodajte nadzor korištenja kućnom termostatu: Davno, davno, prije nego što je postojalo nešto poput "pametnog" termostat, imao sam kućni termostat koji je davao dnevno (mislim - možda tjedno) ukupno " na vrijeme " za moj sustav grijanja i klimatizacije. Stvari su se promijenile … Las
Dodavanje mikrofona paru slušalica: 6 koraka
Dodavanje mikrofona paru slušalica: Imate li par slušalica za koje vam se jako sviđa kako zvuče, ali nemaju mikrofon? Slijedite ove jednostavne upute i imat ćete svoje omiljene slušalice spremne za upotrebu s mobitelom. Odricanje odgovornosti: ovdje opisani postupak m
Dodavanje novih knjižnica u KICAD: 6 koraka
Dodavanje novih knjižnica u KICAD: KiCad je besplatni programski paket za automatizaciju elektroničkog dizajna (EDA). Olakšava dizajn shema za elektroničke sklopove i njihovu pretvorbu u PCB dizajn. Sadrži integrirano okruženje za shematsko snimanje i izgled PCB -a za
Dodavanje regeneracije u Brettov Arduino ASCD 18650 pametni punjač / pražnjenje: 3 koraka
Dodavanje regeneracije u Brettov pametni punjač / pražnjilac Arduino ASCD 18650: Zajednica DIY TESLA powerwall brzo raste. Najvažniji korak u izgradnji energetskog zida je grupiranje ćelija baterija u pakete jednakog ukupnog kapaciteta. To omogućuje serijsko postavljanje baterija i jednostavno balansiranje
Dodavanje prilagođenih ploča u Arduino IDE: 3 koraka
Dodavanje prilagođenih ploča u Arduino IDE: Verzija 1.6.4 Arduino IDE -a uvela je službenu podršku za dodavanje arduino kompatibilnih ploča trećih strana u Arduino Board Manager. Ova dodatna podrška odlična je vijest jer omogućuje korisnicima brzo dodavanje prilagođenih ploča sa samo jednim klikom