INHOUDSOPGAWE:
Video: Voeg 'n 24LC256 EEPROM by die Arduino Due: 3 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Die arduino het nie 'n eeprom nie. Hierdie instruksies voeg een by en laat u waardes stoor in 'n nie -vlugtige geheue wat 'n arduino -firmware -opdatering sal oorleef.
Stap 1: Breadboarding
Hier is 'n paar baie goeie instruksies: https://www.hobbytronics.co.uk/arduino-external-eeprom penne 1 tot 4 en pen 7 is gegrond. pen 8 is gekoppel aan die 3.3V -toevoer op die gepaste bord. Die geel (pen 6) en wit (pen 5) drade wat gekoppel is aan die i2c SDA (data) en SCL (klok) penne op die behoorlike bord (genommer 21 en 20).
Stap 2: Kode tyd
Hier is 'n paar stukkies kode wat ek in my sketse gebruik. Sluit eerstens die Wire -biblioteekopskrifte iewers aan die bokant van u skets in: / * Gebruik 24LC256 EEPROM om instellings op te slaan * / #include Voeg dan 'n paar funksies by om te lees en skryf grepe uit die EEPROM (ek gee net om individuele grepe, maar daar is 'n bladsy -skryffunksie ook in die chip). Let op: daar is 'n makro -definisie van 0x50.. dit is die adres van die chip op die i2c -bus (u kan meer as een i2c -dingies op 'n i2c -bus aansluit en kies met wie u wil praat deur die adres te verander). / * Hierdie twee funksies help ons om te skryf aan die 24LC256 EEPROM -chip */ #define EEPROM_ADDR 0x50 void EEPROM_write (unsigned int addr, byte data) {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 skryf: addr: "); //Serial.print(addr); //Serial.print (""); //Serial.println (data); vertraging (5); } byte EEPROM_read (unsigned int addr) {byte data = 0xFF; Wire.beginTransmission (EEPROM_ADDR); Wire.write ((int) (addr >> 8)); // MSB Wire.write ((int) (addr & 0xFF)); // LSB Wire.endTransmission (); Wire.requestFrom (EEPROM_ADDR, 1); as (Wire.available ()) data = Wire.read (); //Serial.print("EEPROM lees: addr: "); //Serial.print(addr); //Serial.print (""); //Serial.println (data); vertraging (5); data terugstuur; } U kan die reëls van Serial.print (…) ontkommenteer as u 'n foutopsporing wil sien. In die arduinos setup () -funksie begin u die draadbiblioteek en kan u in die aanvanklike waardes lees. Hier lees ek in twee grepe (vlae en max_cc), twee woorde (lean_min en lean_max) en 'n verskeidenheid woorde sd_max [3]: // lees waardes wat in die EEPROM Wire.begin () gestoor is; vlae = EEPROM_read (0); max_cc = EEPROM_read (1); lean_min = word (EEPROM_read (3), EEPROM_read (2)); lean_max = word (EEPROM_read (5), EEPROM_read (4)); vir (int j = 0; j <3; j) {sd_max [j] = word (EEPROM_read (7 j*2), EEPROM_read (6 j*2)); } Hier is die stukkie kode wat dit in die EEPROM skryf: EEPROM_write (0, vlae); 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)); vir (int j = 0; j <3; j) {EEPROM_write (6 j*2, lowByte (sd_max [j])); EEPROM_write (7 j*2, highByte (sd_max [j])); } Dit is regtig daaroor.
Stap 3: Draai dit op
Draai dit op 'n verobord om in 'n omhulsel vas te maak en die werk wat gedoen is.
Aanbeveel:
Hoe om 'n tabel te skep en in te voeg en ekstra kolomme en/of rye by die tabel in Microsoft Office Word 2007 te voeg: 11 stappe
Hoe om 'n tabel te skep en in te voeg en ekstra kolomme en/of rye by die tabel in Microsoft Office Word 2007 te voeg: het u al ooit baie data gehad waarmee u werk en by uself gedink … " hoe kan ek alles maak van hierdie data beter lyk en makliker verstaanbaar is? " As dit die geval is, kan 'n tabel in Microsoft Office Word 2007 u antwoord wees
Konfigurasie van die AVR -mikrobeheerder. Skep en laai die LED -knipperprogram in die flitsgeheue van die mikrokontroleerder op: 5 stappe
Konfigurasie van die AVR -mikrobeheerder. Skep en laai die LED -knipperprogram in die flitsgeheue van die mikrokontroleerder: In hierdie geval sal ons 'n eenvoudige program in C -kode skep en dit in die geheue van die mikrokontroleerder verbrand. Ons sal ons eie program skryf en die hex -lêer saamstel, met behulp van die Atmel Studio as die geïntegreerde ontwikkelingsplatform. Ons sal die sekering van twee instel
Hoe om die veiligheid van die meeste blokkeerders aan die kant van die bediener te omseil: 3 stappe
Hoe om die veiligheid van die meeste webblokkers op die bediener te verlig: dit is my eerste instruksie, so hou my in gedagte: Ok, ek sal u vertel hoe u die webblokkers wat ek in skole gebruik het, kan omseil. Al wat u nodig het, is 'n flash drive en 'n paar sagteware aflaai
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: 9 stappe (met foto's)
Instruksies vir die voltooiing van die opmaak van die baanskyfontwerp vir die opheffing/verlaging van die middelste voetsteun op motorwielstoele: die middelste voetsteunhysers moet goed onder die sitplek geberg word en laer om te ontplooi. 'N Meganisme vir die onafhanklike werking van die opberging en ontplooiing van voetsteun is nie ingesluit by rolstoele op die mark nie, en PWC -gebruikers het die behoefte uitgespreek
Voeg 'n PC Sync-aansluiting by 'n Nikon Sc-28 Ttl-kabel (gebruik outomatiese instellings vir 'n flits op die kamera en aktiveer die flits van die kamera !!): 4 stappe
Voeg 'n Pc Sync-aansluiting by 'n Nikon Sc-28 Ttl-kabel (gebruik outomatiese instellings vir 'n flits op die kamera en aktiveer flitsers van die kamera !!): in hierdie instruksies sal ek jou wys hoe om een van die lastige eie 3-pins TTL-aansluitings op te verwyder aan die kant van 'n Nikon SC-28-kamera met TTL-kabel en vervang dit met 'n standaard rekenaar-sinchronisasie-aansluiting. Hiermee kan u 'n spesiale flits gebruik