Sommario:

BYTEBANGER EEPROM Arduino I²C™: 5 passaggi
BYTEBANGER EEPROM Arduino I²C™: 5 passaggi

Video: BYTEBANGER EEPROM Arduino I²C™: 5 passaggi

Video: BYTEBANGER EEPROM Arduino I²C™: 5 passaggi
Video: Arduino I2C External I²C EEPROM BYTEBANGER OVERVIEW 2024, Novembre
Anonim
Arduino I²C™ EEPROM BYTEBANGER
Arduino I²C™ EEPROM BYTEBANGER

Di recente mi sono incuriosito con le EEProm I²C dopo averne recuperato alcune da una vecchia TV a retroproiezione che stavo demolendo.

Ho setacciato Internet cercando di trovare maggiori informazioni su di loro, come schede tecniche e tutorial su come funzionavano e potevano essere utilizzate queste cose. Sorprendentemente, le informazioni erano sparse e un po' scarse… i fogli dati erano abbastanza facili da trovare e ci sono alcuni tutorial (compresi i video) che mostrano alcuni modi molto semplici per accedere alla funzionalità delle eeprom. Non ero ancora soddisfatto di quello che volevo fare, quindi ho deciso di configurare la mia breadboard e scrivere il mio codice, insieme a un paio di librerie Arduino… ed è nato I²C™ EEPROM BYTEBANGER!

I tutorial che ho trovato mancavano di alcune cose che volevo fare, come leggere e scrivere dati da e verso l'eeprom più di un solo byte alla volta. Volevo anche avere la possibilità di scaricare i dati dell'eeprom su una scheda SD, nonché caricare un file CSV dalla scheda SD e riprogrammare l'eeprom.

L'aggiunta di alcune funzioni di manipolazione dei dati e impostazioni di controllo al codice ha davvero completato quella che credo sia un'applicazione Arduino molto carina che ti piacerà! Sorprendentemente, le scorte di cui hai bisogno sono poche… scrivere il codice è stata la parte più difficile… che è una buona notizia per te poiché è fornita qui per il download.

Volevo assicurarmi di poter fare tutto questo usando un Arduino UNO poiché sembra ancora essere un microcontrollore molto popolare, e i miei pensieri erano "se funziona su un UNO, allora dovrebbe funzionare su qualsiasi cosa" che probabilmente è true modificando leggermente il codice per il tuo microcontrollore specifico.

Forniture

Avrai bisogno:

un Arduino UNO R3 con cavo USB almeno 1 (e fino a 8) I²C EEPromsan modulo SD Cardun altoparlante o un cicalino piezo (opzionale)un cavo di collegamento breadboard

Passaggio 1: Schema

Schema
Schema
Schema
Schema

Usa lo schema e le foto di Fritzing sopra come guida per collegare le tue eeprom, il modulo SD e l'altoparlante opzionale.

Ho scoperto che era meglio iniziare con le eeprom.

Mettili sulla breadboard come mostrato, prestando attenzione alla spaziatura tra le eeprom. Controlla la scheda tecnica della tua eeprom specifica ma ho scoperto che la maggior parte delle eeprom I²C PDIP8 hanno lo stesso pinout:

I pin 1-3 sono le impostazioni dell'indirizzo per l'eeprom. Il pin 4 è collegato a massa. Il pin 5 è SDA (dati) che si collega al pin SDA UNO Il pin 6 è SCL (orologio) che si collega al pin SCL UNO Il pin 7 è WP (Write Protect) che è collegato a terraPin 8 è VCC collegato a +5v

Ho trovato più semplice iniziare aggiungendo prima il VCC e i fili di terra a ciascuna eeprom. (se stai usando solo una eeprom questo è semplicissimo!)

Successivamente cablare le linee SDA e le linee SCL al bus I²C.

Poiché possiamo indirizzare fino a 8 eeprom sul bus I²C, collegheremo tutte le linee SDA insieme e allo stesso modo con le linee SCL. Se noti nella foto, ho usato una barra di alimentazione aggiuntiva come bus I²C. Se non hai un binario in più, puoi semplicemente seguire lo schema di Fritzing.

Ora lega tutti i WP (pin7) a terra. Dopotutto vogliamo essere in grado di scrivere sulla eeprom… e non preoccuparti, c'è una funzione SAFEMODE nel codice che possiamo usare per emulare la funzione Write Protect.

Ora collegheremo il modulo SD…

Passaggio 2: modulo SD

Modulo SD
Modulo SD

Il tuo modulo SD potrebbe essere leggermente diverso da quello che ho usato, ma sono praticamente tutti uguali. (Potresti anche usare un adattatore per scheda micro SD da solo… ma questo è un progetto futuro)

Guardando i pin sul Modulo SD da sinistra a destra sono:

CS- Chip SelectSCK- Serial ClockMOSI- Master Out/Slave InMISO- Master In/ Slave OutVCC- +5vGROUND3.3 (non utilizzato)

Collegare CS a UNO pin 8 Collegare SCK a UNO pin 13 Collegare MOSI a UNO pin 11 Collegare MISO a UNO pin 12

Passaggio 3: collegare l'altoparlante

L'altoparlante o il cicalino piezoelettrico sono completamente opzionali.

Collegare l'altoparlante a terra e UNO pin 7.

Il codice utilizza alcune funzioni sonore, ma non è indispensabile per il funzionamento. (in effetti a volte scollego l'altoparlante quando non voglio sentire il suono. Potresti anche impostare un interruttore.)

Passaggio 4: collega l'alimentazione UNO e carica il codice

Connetti l'UNO Power e carica il codice
Connetti l'UNO Power e carica il codice
Connetti l'UNO Power e carica il codice
Connetti l'UNO Power e carica il codice

Collega la terra e +5v dall'UNO ai binari di alimentazione della breadboard.

NON DIMENTICARE DI LEGARE INSIEME LA TUA POTENZA SUPERIORE E INFERIORE E LE ROTAIE DI TERRA!

Ora collega il tuo UNO al tuo computer e carica il codice!

Il codice I²C EEPROM BYTEBANGER è piuttosto esteso e farò una serie di tutorial video su tutte le funzionalità, ma è anche abbastanza ben annotato con commenti.

Vi do il benvenuto ad iscrivervi al mio canale YouTube dove potrete presto trovare i video tutorial, così come altri progetti in arrivo.

Ci vediamo dopo ciao!

~MITZ

Consigliato: