Orodha ya maudhui:
Video: Kuongeza 24LC256 EEPROM kwa Arduino Kutokana: 3 Hatua
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Dhima ya arduino haina eeprom. Hii inaweza kuongezewa moja na hukuruhusu kuhifadhi maadili katika kumbukumbu isiyo tete ambayo itaishi sasisho la firmware ya arduino.
Hatua ya 1: Bodi ya mkate
Kuna maagizo mazuri sana hapa: pini 1 hadi 4 na pini 7 imewekwa chini. pini 8 imeunganishwa na usambazaji wa 3.3V kwenye bodi inayofaa. Njano (pini 6) na nyeupe (pini 5) waya zilizounganishwa na pini za i2c SDA (data) na SCL (saa) kwenye bodi inayofaa (nambari 21 na 20).
Hatua ya 2: Saa ya Msimbo
Hapa kuna vijisehemu vya nambari ambazo ninatumia katika michoro yangu. Kwanza, jumuisha vichwa vya maktaba ya waya mahali pengine karibu na juu ya mchoro wako: / * Tumia 24LC256 EEPROM kuhifadhi mipangilio * / # pamoja na Kisha ongeza kazi kadhaa kusoma na kuandika ka kutoka kwa EEPROM (Ninajali tu kaiti binafsi lakini kuna makala ya kuandika ukurasa kwenye chip pia). Kumbuka kuna ufafanuzi wa jumla wa 0x50.. hii ndio anwani ya chip kwenye basi ya i2c (unaweza kuunganisha vitu zaidi ya moja vya i2c kwenye basi ya i2c na uchague ni ipi unataka kuzungumza nayo kwa kubadilisha anwani). / * Kazi hizi mbili zinatusaidia kuandika kwa chip 24LC256 EEPROM * / #fafanua EEPROM_ADDR 0x50 batili EEPROM_write (data isiyosajiliwa, data ya ka) {int rdata = data; Uwasilishaji wa waya (EEPROM_ADDR); Andika waya ((int) (nyongeza >> 8)); // MSB Waya. Andika ((int) (nyongeza & 0xFF)); // Waya wa LSB. Andika (rdata); Uwasilishaji wa waya (); //Serial.print ("EEPROM andika: nyongeza:"); //Serial.print (addr); //Serial.print (""); //Serial.println (data); kuchelewesha (5); } byte EEPROM_read (unsigned int addr) {byte data = 0xFF; Uwasilishaji wa waya (EEPROM_ADDR); Andika waya ((int) (nyongeza >> 8)); // MSB Waya. Andika ((int) (nyongeza & 0xFF)); // Waya wa LSB. Uhamishaji (); Ombi la Wire. Toka (EEPROM_ADDR, 1); ikiwa (Wire.available ()) data = Wire.read (); //Serial.print ("EEPROM soma: nyongeza:"); //Serial.print (addr); //Serial.print (""); //Serial.println (data); kuchelewesha (5); data ya kurudi; } Unaweza kutenganisha mistari ya Serial.print (…) ikiwa unataka kuona pato la utatuzi. Katika usanidi wa arduinos () kazi unaanza maktaba ya waya na unaweza kusoma kwa maadili ya mwanzo. Hapa nilisoma kwa ka mbili (bendera na max_cc), maneno mawili (konda_min na konda_max) na safu ya maneno sd_max [3]: // soma maadili yaliyohifadhiwa kwenye waya wa EEPROM.begin (); bendera = EEPROM_read (0); max_cc = EEPROM_read (1); lean_min = neno (EEPROM_read (3), EEPROM_read (2)); lean_max = neno (EEPROM_read (5), EEPROM_read (4)); kwa (int j = 0; j <3; j) {sd_max [j] = neno (EEPROM_read (7 j * 2), EEPROM_read (6 j * 2)); } Hapa kuna kanuni ndogo ambayo huwaandika kwenye EEPROM: EEPROM_write (0, bendera); Andika EEPROM_ (1, max_cc); Andika EEPROM_ (2, lowByte (lean_min)); Andika EEPROM_ (3, highByte (lean_min)); Andika EEPROM_ (4, lowByte (konda_max)); Andika EEPROM_ (5, highByte (konda_max)); kwa (int j = 0; j <3; j) {EEPROM_write (6 j * 2, lowByte (sd_max [j])); Andika EEPROM_ (7 j * 2, highByte (sd_max [j])); } Hiyo ni juu yake kweli.
Hatua ya 3: Waya It Up
Weka waya kwenye veroboard fulani ili kuingilia ndani ya boma na kazi zifanyike.
Ilipendekeza:
Onyesho la LCD la 5V na Arduino kutokana na 3.3V I2C: Hatua 5
Onyesho la LCD la 5V na Arduino Kutokana 3.3V I2C: Chapisho hili linalenga kuelezea njia rahisi ya kutumia Arduino Ngenxa (au bodi nyingine ya 3.3V) na onyesho maarufu la LCD 16x2 na moduli ya adapta ya I2C. Tatizo la kwanza ni kwamba LCD inahitaji 5V kwa mwangaza wake kufanya kazi vizuri, lakini SCL na SDA p
Jinsi ya kuongeza kwa urahisi aina zozote za LED kwa Printa yako ya 3d: Hatua 8 (na Picha)
Jinsi ya Kuongeza Kwa urahisi Aina Zote za LED kwa Printa yako ya 3d: Je! Una LED za vipuri zinazokusanya vumbi kwenye basement yako? Je! Umechoka kwa kutoweza kuona chochote printa yako inachapisha? Usiangalie zaidi, hii inayoweza kufundishwa itakufundisha jinsi ya kuongeza ukanda wa taa ya LED juu ya printa yako kwa
Jenereta ya Mganda wa Sine ya Awamu ya 3 Kulingana na Arduino Kutokana: Hatua 5
Jenereta ya Mganda wa Sine ya Awamu ya 3 Kulingana na Arduino Kutokana: madhumuni ya sehemu hii ni kusaidia mtu anayejaribu kutumia utendaji mkubwa wa Kutokana + ukosefu wa rejeleo + la data lisilosaidia. sampuli / mzunguko kwa freq ya chini (< 1kHz) na 16 s
Kuongeza Kuingia Moja kwa Moja kwa Stereo ya Gari Yako kwa Kicheza IPod / mp3: Hatua 5
Kuongeza Kuingia Moja kwa Moja kwenye Stereo ya Gari Yako kwa Kicheza IPod / mp3: Hii inayoweza kufundishwa itakuonyesha jinsi ya kuongeza mchango msaidizi, kama kichwa cha kichwa, kwa gari lako ili uweze kusikiliza iPod / mp3 player / GPS au Chochote kilicho na laini kupitia stereo za magari yako. Wakati nitakuwa nikiongeza kwenye '99 Chevy Subu yangu
Jinsi ya Kuongeza kasi kwa kasi PC Yout, na Kudumisha Kasi Hiyo kwa Maisha ya Mfumo: Hatua 9
Jinsi ya Kuongeza kasi kwa kasi PC Yout, na Kudumisha Kasi hiyo kwa Maisha ya Mfumo. na kusaidia kuiweka hivyo. Nitachapisha picha mara tu nitakapopata nafasi, kwa bahati mbaya kama hivi sasa sina