Mündəricat:
Video: Arduino Due -yə 24LC256 EEPROM əlavə etmək: 3 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Arduinoda eeprom yoxdur. Bu təlimat bir əlavə edir və arduino firmware yeniləməsindən sağ çıxacaq dəyərləri dəyişməz yaddaşda saxlamağa imkan verir.
Addım 1: Breadboard
Həqiqətən yaxşı təlimatlar var: https://www.hobbytronics.co.uk/arduino-external-eeprom 1 -dən 4 -ə qədər sancaqlar və 7 -ci pinlər torpaqlıdır. pin 8, müvafiq lövhədəki 3.3V elektrik təchizatına bağlıdır. 21 və 20 nömrəli lövhədə i2c SDA (məlumat) və SCL (saat) pinlərinə qoşulmuş sarı (pin 6) və ağ (pin 5) tellər.).
Addım 2: Kod Zamanı
Eskizlərimdə istifadə etdiyim bəzi kod parçaları. Birincisi, eskizin yuxarısına yaxın bir yerə Wire kitabxana başlıqlarını daxil edin: / * Ayarları saxlamaq üçün 24LC256 EEPROM istifadə edin * / #include Sonra EEPROM -dan bayt oxumaq və yazmaq üçün bəzi funksiyalar əlavə edin (yalnız fərdi baytlara əhəmiyyət verirəm, ancaq çipdə səhifə yazma xüsusiyyəti də var). 0x50 makro tərifinin olduğunu unutmayın.. bu, i2c avtobusundakı çipin ünvanıdır (i2c avtobusda birdən çox i2c şeyi birləşdirə və ünvanı dəyişdirərək hansı biri ilə danışmaq istədiyinizi seçə bilərsiniz). / * Bu iki funksiya 24LC256 EEPROM çipinə yazmağımıza kömək edir */ #define EEPROM_ADDR 0x50 boş EEPROM_write (imzasız int addr, bayt məlumatları) {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 yaz: addr: "); //Serial.print(addr); //Serial.print (""); //Serial.println(data); gecikmə (5); } bayt EEPROM_read (imzasız int addr) {bayt məlumatları = 0xFF; Wire.beginTransmission (EEPROM_ADDR); Wire.write ((int) (addr >> 8)); // MSB Wire.write ((int) (addr & 0xFF)); // LSB Wire.endTransmission (); Wire.requestFrom (EEPROM_ADDR, 1); əgər (Wire.available ()) data = Wire.read (); //Serial.print("EEPROM oxu: addr: "); //Serial.print(addr); //Serial.print (""); //Serial.println(data); gecikmə (5); məlumatların qaytarılması; } Bəzi ayıklama çıxışını görmək istəyirsinizsə, Serial.print (…) sətirlərini şərh edə bilərsiniz. Arduinos setup () funksiyasında tel kitabxanasını işə salırsınız və ilkin dəyərlərdə oxuya bilərsiniz. Burada iki bayt (bayraqlar və max_cc), iki söz (lean_min və lean_max) və bir sıra sd_max [3] oxudum: // EEPROM Wire.begin () -də qeyd olunan dəyərləri oxuyun; bayraqlar = EEPROM_read (0); max_cc = EEPROM_read (1); lean_min = söz (EEPROM_read (3), EEPROM_read (2)); lean_max = söz (EEPROM_read (5), EEPROM_read (4)); for (int j = 0; j <3; j) {sd_max [j] = söz (EEPROM_read (7 j*2), EEPROM_read (6 j*2)); } EEPROM -a bunları yazan kod biti: EEPROM_write (0, bayraqlar); 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)); 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])); } Həqiqətən bu barədə.
Addım 3: Bağlayın
Bir korpusa və görülən işlərə vidalaşmaq üçün bir az veroboardun üzərinə bağlayın.
Tövsiyə:
Cədvəl yaratmaq və əlavə etmək və Microsoft Office Word 2007 -də bu cədvələ əlavə sütunlar və/və ya satırlar əlavə etmək: 11 addım
Microsoft Office Word 2007 -də Cədvəl Yaratmaq və Daxil etmək və Cədvələ Əlavə Sütunlar və/və ya Satırlar Əlavə etmək: İşlədiyiniz və özünüz üçün düşündüyünüz bir çox məlumatınız olubmu? &Quot; hamısını necə edə bilərəm? bu məlumatlardan daha yaxşı görünür və başa düşülməsi daha asan olur? " Əgər belədirsə, cavabınız Microsoft Office Word 2007 -dəki bir cədvəl ola bilər
Raspberry Pi -yə Əlavə Xüsusiyyətlər Əlavə etmək üçün RaspberryPi 3/4 Uzatma Kartı: 15 Addım (Şəkillərlə)
Raspberry Pi -yə Əlavə Xüsusiyyətlər Əlavə etmək üçün RaspberryPi 3/4 Uzatma Kartı: bilirik ki, moruq pi 3/4 ADC (rəqəmsal çeviriciyə analoq) və RTC (real vaxt saatı) ilə birlikdə gəlmir, buna görə 16 ədəd olan bir PCB dizayn edirəm kanal 12bit ADC, RTC, SIM7600 4G modulu, düymələr, rölelər, USB çıxışı, 5V güc çıxışı, 12V güc
Ibook G4/macbook -a Əlavə Soğutma Əlavə etmək: 5 Addım
Ibook G4/macbook -a Əlavə Soyutma Ekləmə: Yaxşı, bu həm mənim ölü xboxumdan, həm də yarısında dremelingdən başladı və bu yaxınlarda termal yastığı çıxarıb termal pasta ilə əvəz etmək üçün ibookumu ayırdığımda (Gülməli, düşündüm artıq termal pasta olardı). Yaxşı, bu uğursuz oldu, çünki
Faydalı bir kompüter etmək üçün NT4e ilə EVO T20 -ə Sınırsız Yaddaş əlavə etmək: 7 addım
Faydalı bir kompüter yaratmaq üçün NT4e ilə EVO T20 -ə Sınırsız Yaddaş əlavə etmək: Compaq EVO T20 İncə Müştəriləri 50 dollardan az qiymətə götürülə bilər və əsasən məhdudlaşdırılmış mini kompüterlərdir ki, bir az sərbəst mövcud proqram təminatı və bəzi qurğular istifadə edilə bilən səssiz aşağı gərginlikli masa üstü kompüter. Əsas məsələ
Əlavə Düymə Əlavə etmədən Rapid Fire Mouse Modu: 4 Addım
Əlavə Düymə Əlavə etmədən Rapid Fire Mouse Modu: Mən döyülmüş Logitech MX500 siçanımı sürətli bir atəş modu etdim. Ətrafda bir çox yol var, mən bunu istifadə etdim: www.instructables.com/id/Add_a_rapid_fire_button_to_your_mouse_using_a_555_/ Mənim yanaşmamdakı fərq budur: Əlavə etmədən etdim