Obsah:
Video: Pridanie EEPROM 24LC256 k Arduino kvôli: 3 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Arduinu chýba eeprom. Tento návod pridá jeden a umožní vám uložiť hodnoty do energeticky nezávislej pamäte, ktorá prežije aktualizáciu firmvéru arduino.
Krok 1: Breadboarding
Tu je niekoľko skutočne dobrých pokynov: https://www.hobbytronics.co.uk/arduino-external-eeprom Nasledoval som ich. Fotografia zobrazuje obložený obvod. kolíky 1 až 4 a kolík 7 sú uzemnené. kolík 8 je pripojený k zdroju 3,3 V na doske. Žltý (kolík 6) a biely (kolík 5) vodiče pripojený k pinom i2c SDA (údaje) a SCL (hodiny) na doske (číslované 21 a 20).
Krok 2: Čas kódu
Tu je niekoľko útržkov kódu, ktoré používam vo svojich náčrtkoch. Najprv zahrňte záhlavie knižnice Wire niekde v hornej časti náčrtu: / * Na uloženie nastavení použite 24LC256 EEPROM * / #include Potom pridajte niektoré funkcie na čítanie a zápis bajtov z EEPROM (starám sa iba o jednotlivé bajty, ale existuje funkcia zápisu stránky do čipu). Všimnite si, že existuje makro definícia 0x50.. toto je adresa čipu na zbernici i2c (na zbernicu i2c môžete pripojiť viac ako jednu vec i2c a zmeniť adresu, s ktorou sa chcete rozprávať). / * Tieto dve funkcie nám pomáhajú písať na čip 24LC256 EEPROM */ #define EEPROM_ADDR 0x50 neplatné EEPROM_write (nepodpísané int addr, bajtové údaje) {int rdata = data; Wire.beginTransmission (EEPROM_ADDR); Wire.write ((int) (adresa >> 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); oneskorenie (5); } byte EEPROM_read (nepodpísané int addr) {byte dáta = 0xFF; Wire.beginTransmission (EEPROM_ADDR); Wire.write ((int) (adresa >> 8)); // MSB Wire.write ((int) (addr & 0xFF)); // LSB Wire.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); oneskorenie (5); vrátiť údaje; } Ak chcete vidieť výstup ladenia, môžete zrušiť odkomentovanie riadkov Serial.print (…). Vo funkcii arduinos setup () spustíte drôtovú knižnicu a môžete čítať počiatočné hodnoty. Tu som prečítal v dvoch bajtoch (vlajky a max_cc), dve slová (lean_min a lean_max) a pole slov sd_max [3]: // čítanie hodnôt uložených v EEPROM Wire.begin (); flags = EEPROM_read (0); max_cc = EEPROM_read (1); lean_min = slovo (EEPROM_read (3), EEPROM_read (2)); lean_max = slovo (EEPROM_read (5), EEPROM_read (4)); pre (int j = 0; j <3; j) {sd_max [j] = slovo (EEPROM_read (7 j*2), EEPROM_read (6 j*2)); } Tu je kúsok kódu, ktorý ich zapíše do EEPROM: EEPROM_write (0, vlajky); EEPROM_write (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)); pre (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 naozaj všetko.
Krok 3: Pripojte ho
Pripojte ho na nejaký veroboard, aby ste ho zaskrutkovali do krytu a práce boli hotové.
Odporúča:
Pridanie funkcie aktuálneho limitu do programu Buck/Boost Converter: 4 kroky (s obrázkami)
Pridanie funkcie obmedzenia prúdu do prevodníka Buck/Boost: V tomto projekte sa bližšie pozrieme na bežný prevodník buck/boost a vytvoríme malý dodatočný obvod, ktorý k nemu pridá funkciu obmedzenia prúdu. Vďaka tomu je možné prevodník buck/boost používať rovnako ako variabilný laboratórny napájací zdroj. Le
Pridanie funkcie WiFi AutoConnect k existujúcemu náčrtu: 3 kroky
Pridanie funkcie WiFi AutoConnect do existujúcej skice: V nedávnom príspevku sme sa dozvedeli o funkcii AutoConnect pre dosky ESP32/ESP8266 a jedna z položených otázok bola o jej pridaní do existujúcich náčrtov. V tomto príspevku sa naučíme, ako to urobiť, a použijeme projekt času v sieti
Pridanie regenerácie v inteligentnej nabíjačke / vybíjačke Arduino ASCD 18650 spoločnosti Brett: 3 kroky
Pridanie regenerácie v inteligentnej nabíjačke / vybíjačke Arduino ASCD 18650 spoločnosti Brett: Komunita powerwall pre domácich majstrov TESLA sa rýchlo rozrastá. Najdôležitejším krokom pri stavbe powerwallu je zoskupenie batériových článkov do balení s rovnakou celkovou kapacitou. To umožňuje sériové nastavovanie batérií a ľahké vyváženie
Pridanie rádiového prijímača k domácemu audio systému: 3 kroky
Pridanie rádiového prijímača do domáceho audio systému: V dnešnej dobe s internetovým rádiom takmer nepoužívame normálne (anténne?) Rádio. Povedal by som, že je najlepší čas mať doma k dispozícii staré dobré a spoľahlivé rádio a počúvať príjemnú hudbu a správy Corona:) Ako hlavný domáci zvukový systém používam reproduktory do počítača
Pridanie vlastných dosiek k Arduino IDE: 3 kroky
Pridanie vlastných dosiek do Arduino IDE: Verzia 1.6.4 Arduino IDE zaviedla oficiálnu podporu pre pridávanie dosiek kompatibilných s arduino tretích strán do Arduino Board Manager. Táto podpora pridávania je skvelá správa, pretože umožňuje používateľom rýchlo pridávať vlastné nástenky jediným kliknutím