Sommario:
- Passaggio 1: 3 Panoramica hardware EEPROM
- Passaggio 2: EEPROM 25AA- / 25LC-SPI
- Passaggio 3: EEPROM I2C 24AA- / 24LC
- Passaggio 4: EEPROM a 1 filo DS2431
- Passaggio 5: conclusione
Video: Bus Pirate 3EEPROM Explorer Board: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:06
Se hai uno dei pirati di Hack a Day's Bus, cosa ci fai? Scopri le EEPROM a 1 filo, I2C e SPI con la scheda di esplorazione 3EEPROM (la chiamiamo THR-EE-PROM). L'EEPROM è un tipo di chip di memoria che memorizza i dati senza un'alimentazione continua. È utile per l'archiviazione permanente dei dati in piccoli circuiti di logger o per contenere pagine personalizzate in un mini server web. Le EEPROM sono disponibili in molte dimensioni e protocolli. La 3EEPROM ha tre chip EEPROM comuni: DS2431 (1-Wire), 24AA- (I2C) e 25AA- (SPI). Tutti e tre sono stati precedentemente dimostrati su Hack a Day, ma ogni demo utilizza una versione diversa dell'hardware e del firmware di Bus Pirate, è difficile da seguire per un principiante utilizzando un Bus Pirate v2go. Continua a leggere per una guida passo passo aggiornata all'uso le EEPROM DS2431, 24AA- e 25AA- con il Bus Pirate v2go. Abbiamo anche i registri di sessione completi come file di testo in modo da non perdere un singolo dettaglio. Possiamo avere PCB o kit della scheda explorer 3EEPROM prodotti da Seeed Studio. I PCB costano circa $ 10, i kit costano circa $ 15, spediti in tutto il mondo. Abbiamo bisogno di organizzare un acquisto di gruppo di 10 PCB o 20 kit per iniziare. Se sei interessato a un Bus Pirate, è in arrivo la versione 3. Non ho potuto includere alcuni elementi di formattazione e tabelle HTML in un Instructable, puoi vedere il post originale sul blog Dangerous Prototypes.
Passaggio 1: 3 Panoramica hardware EEPROM
L'obiettivo di questo prototipo è conoscere l'EEPROM e tre protocolli bus comuni. Per prima cosa, esaminiamo il PCB 3EEPROM, quindi dimostriamo ogni EEPROM utilizzando uno strumento di interfaccia seriale universale Bus Pirate. Se non hai un Bus Pirate, puoi comunque seguirlo perché l'ordine di base delle operazioni dell'interfaccia rimane lo stesso, non importa come le implementi. Circuito Schema a grandezza naturale [PNG]. Abbiamo realizzato il circuito e il PCB utilizzando la versione freeware di Cadsoft Eagle. È possibile scaricare lo schema e il PCB dall'archivio SVN di Bus Pirate. Il PCB 3EEPROM contiene una EEPROM 1-Wire DS2431 (IC1), una EEPROM 24AA-I2C (IC4) e una EEPROM 25AA-SPI (IC5). Il DS2431 (IC1) preleva energia parassitariamente dal bus 1-Wire, non ha un pin di alimentazione esterno e non necessita di condensatore di disaccoppiamento. IC2 e IC3 sono spazi vuoti per dispositivi 1-Wire aggiuntivi, come un altro DS2431 o un sensore di temperatura DS1822. C1 (0.01uF) è opzionale e necessario solo se IC2 o IC3 sono popolati con un dispositivo 1-Wire alimentato.1-Wire richiede un forte resistore di pull-up, un massimo di 2,2K ohm. I resistori di pull-up integrati del Bus Pirate sono 10K, troppo deboli per alimentare correttamente il DS2431 durante le scritture. La scheda explorer 3EEPROM include una resistenza di pull-up da 1,8k ohm, 1/8 di watt (R1) sul bus 1-Wire in modo che non sia necessaria alcuna resistenza di pull-up aggiuntiva. Il 24AA-(IC4) e 25AA- (IC5) ciascuno ottiene un condensatore da 0.1uF per disaccoppiarli dall'alimentatore (C2, C3). Probabilmente non hai bisogno dei condensatori in un circuito così semplice, li abbiamo omessi dalla scheda prototipo nella dimostrazione. Anche il bus I2C utilizzato dal 24AA richiede resistori di pull-up, ma i resistori di pull-up da 10K ohm integrati del Bus Pirate sono sufficienti. Tutti i componenti funzioneranno da 2,8 volt a 5 volt CC. Il circuito è alimentato tramite i pin VCC e GND del jumper 3. Ci sono due pin VCC, uno è per l'alimentazione, l'altro è per il pin di ingresso della tensione del resistore di pull-up del Bus Pirate (Vpullup). versione gratuita di Cadsoft Eagle. È possibile scaricare lo schema e il PCB dall'archivio SVN di Bus Pirate. Se desideri un kit PCB o 3EEPROM preparato professionalmente, potremmo essere in grado di organizzare un acquisto di gruppo se 10 o 20 persone sono interessate. Elenco delle parti R1 Resistore da 1800 ohm (1/8 di watt) C2, 3 condensatore da 0,1 uF/10 volt + JP1-4 connettore maschio da 0,1" IC1 DS2431 EEPROM 1-filo TO-92IC4** 24AA014-I/P EEPROM I2C DIP8IC5** 25AA010A-I/P SPI EEPROM DIP8ICS4, 5 socket DIP 8 pin per IC5, 6**IC4, IC5 potrebbero essere di qualsiasi dimensione, abbiamo collegato a piccoli chip, abbiamo usato 128byte e 128Kbyte. Non ho potuto includere alcune tabelle di formattazione e HTML in un Instructable, puoi vedere il post originale sul blog Dangerous Prototypes.
Passaggio 2: EEPROM 25AA- / 25LC-SPI
DimostrazioniTutte le demo EEPROM sembrano più o meno uguali. Scriveremo alcuni numeri sul chip e poi li leggeremo. Ogni dispositivo ha condizioni che si applicano quando si desidera scrivere più di pochi valori, come le dimensioni della pagina e le limitazioni dei limiti. Leggi di più su questi nella scheda tecnica per il tuo dispositivo specifico. Se non riesci a far funzionare una dimostrazione, scarica il registro completo del terminale in modo da non perdere nemmeno una cosa che abbiamo fatto. I resistori di pull-up sono il problema più comune, controlla la tensione del pin di pull-up usando il menu 'v' nel terminale Bus Pirate. Chip: 25AA, SPI EEPROM (1Kbyte). Bus:SPI. Resistenze pull-up richieste solo per l'interfacciamento a tensione mista. Requisiti di alimentazione: da 1,8 volt a 5,5 volt (AA), da 2,5 volt a 5,5 volt (LC). Riferimenti: scheda tecnica, dimostrazione Hack a Day. Completare il registro della sessione Bus Pirate per questa dimostrazione. Non ho potuto includere alcune tabelle di formattazione e HTML in un Instructable, puoi vedere l'originale sul blog Dangerous Prototypes. IC5 è una EEPROM I2C serie 25AA di Microchip, queste EEPROM sono disponibili in un sacco di dimensioni. Le parti AA vanno da 1,8 volt a 5,5 volt, mentre le parti 25LC hanno un requisito minimo di 2,5 volt. C3 (0,1 uF) disaccoppia l'EEPROM SPI dall'alimentatore. I pin di protezione da scrittura (WP) e hold potrebbero essere controllati da un microcontrollore, ma li abbiamo disabilitati tenendo questi pin in alto. I pin del bus SPI, CS, DO, CLK e DI, sono portati all'intestazione JP4. Configurazione Se si utilizza un Bus Pirate, collegarlo alla 3EEPROM o al 25AA-IC come mostrato nell'immagine del grafico sottostante. SPI normalmente non richiede resistori di pull-up. Interfaccia Nel terminale Bus Pirate premere 'm' per il menu modalità e selezionare SPI. Configurare la libreria SPI per l'uscita pin normale, utilizzare i valori predefiniti per tutte le altre impostazioni della modalità SPI. Abilitare gli alimentatori (grande 'W') al prompt della modalità SPI. Infine, ottieni un rapporto sulla tensione per assicurarti che gli alimentatori funzionino ('v'). Dimostreremo come interfacciare la EEPROM direttamente a 3,3 volt utilizzando la libreria SPI in modalità pin normale. Le resistenze pull-up non sono necessarie per questa demo. Se si desidera interfacciare una EEPROM alimentata a 5 volt, utilizzare la libreria SPI in modalità pin open collector (HiZ) e abilitare le resistenze di pull-up con il pin Vpullup (Vpu) collegato all'alimentazione della EEPROM. Passaggio 1, disattiva la protezione dalla scrittura' SPI>[0b110]CS ENABLED <<<chip select enabledWRITE: 0x06 <<<disabilita il comando di protezione dalla scritturaCS DISABLED <<
Passaggio 3: EEPROM I2C 24AA- / 24LC
Chip: 24AA, EEPROM I2C (1Kbyte). Bus:I2C, resistori pull-up richiesti. Requisiti di alimentazione: da 1,8volt a 5,5volt (24AA), da 2,5volt a 5,5volt (24LC). Riferimenti:scheda tecnica, dimostrazione Hack a Day. Registro completo della sessione Bus Pirate per questa dimostrazione. Non ho potuto includere alcune tabelle di formattazione e HTML in un Instructable, puoi vedere l'originale sul blog Dangerous Prototypes. IC4 è una EEPROM I2C serie 24AA di Microchip, queste EEPROM sono fornite in un tonnellate di dimensioni. Le parti AA funzionano da 1,8 volt a 5,5 volt, mentre le parti 24LC hanno un requisito minimo di 2,5 volt. Un condensatore da 0,1 uF (C2) disaccoppia IC4 dall'alimentazione. Il pin di protezione da scrittura (WP) potrebbe essere controllato da un microcontrollore, ma per questa semplice dimostrazione lo disabilitiamo con una connessione a massa. I pin del bus I2C, SDA e SCL, vengono portati all'intestazione JP2. L'indirizzo della maggior parte delle EEPROM 24AA è 1010AAAS, con gli ultimi quattro bit determinati dai pin dell'indirizzo (A0, A1, A2) e dal bit di selezione della modalità di lettura/scrittura (S). Tutti i bit di indirizzo sono messi a terra in questo esempio, quindi l'indirizzo di scrittura della EEPROM è 10100000 (scheda tecnica pagina 6). Configurazione Se si utilizza un Bus Pirate, collegarlo alla 3EEPROM o al 24AA-IC come mostrato nell'immagine del grafico sottostante. I2C è un bus bidirezionale che richiede resistori di pull-up su entrambi i pin. È possibile utilizzare le resistenze pull-up integrate del Bus Pirate collegando il pin Vpullup (Vpu) all'alimentatore da 3,3 volt e abilitandole nel terminale. Interfaccia Nota: non tutte le EEPROM I2C funzionano allo stesso modo. Il minuscolo 24AA01, ad esempio, ha un sistema di indirizzamento e comando completamente diverso. Assicurati di controllare la scheda tecnica del tuo chip. Premi 'm' nel terminal Bus Pirate e seleziona I2C dal menu modalità. Abilitare gli alimentatori (grande 'W') e le resistenze di pull-up ('p', opzione 2) al prompt I2C. Ottieni un rapporto sulla tensione ('v') per assicurarti che gli alimentatori siano accesi e che il pin Vpullup sia collegato a una tensione. I2C>(0) <<
Passaggio 4: EEPROM a 1 filo DS2431
Chip: DS2431, EEPROM a 1 filo (1 Kbyte). Bus: 1 filo, resistenza di pull-up <2.2Kohm richiesta. Requisiti di alimentazione: da 2,8 volt a 5,25 volt. Riferimenti: scheda tecnica, dimostrazione Hack a Day. Registro completo della sessione Bus Pirate per questa dimostrazione. Non ho potuto includere alcune tabelle di formattazione e HTML in un Instructable, puoi vedere l'originale sul blog Dangerous Prototypes. Il DS2431 riceve energia dal resistore di pull-up e non ha bisogno di un alimentatore esterno o di un condensatore di disaccoppiamento. 1-Wire necessita di un forte resistore di pull-up, un massimo di 2,2Kohm. I resistori di pull-up integrati del Bus Pirate sono 10K, troppo deboli per alimentare adeguatamente il DS2431 durante le scritture. È necessario utilizzare un resistore esterno da 2,2Kohm o inferiore tra l'alimentazione e il pin del bus 1-Wire. Se hai difficoltà a scrivere i dati, assicurati che la tua resistenza di pull-up sia abbastanza grande. La scheda explorer 3EEPROM include un resistore pull-up da 1800 ohm (R1) sul bus 1-Wire, quindi non è necessario alcun resistore esterno. Setup Se stai usando un Bus Pirate, collegalo alla scheda 3EEPROM o DS2431 come mostrato nell'immagine del grafico qui sotto. Il DS2431 non richiede il pin di alimentazione, viene utilizzato sulla scheda 3EEPROM per alimentare la grande resistenza di pull-up per il bus 1-Wire. Interfaccia Premere 'm' nel terminale Bus Pirate e selezionare la modalità 1-Wire. Abilitare gli alimentatori di bordo (grande 'W') e controllare il monitor di tensione (v). Passaggio 1, trovare l'indirizzo del dispositivo 1-WIRE>(0xf0) <<<Macro di ricerca 1-Wire 1WIRE ROM COMMAND: SEARCH (0xF0)Dispositivi trovati su:Macro 1WIRE address1.0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B <<<DS2431 ID univoco*DS2431 1K EEPROM <<
Passaggio 5: conclusione
ConclusioneQuesto prototipo insegna la memoria EEPROM e dimostra come utilizzare il Bus Pirate con tre protocolli comuni: 1-Wire, I2C e SPI. La scheda explorer 3EEPROM assicura le connessioni corrette a ciascuna EEPROM e fornisce un resistore di pull-up esterno per il bus 1-Wire più esigente con componenti alimentati da parassiti. Possiamo avere PCB o kit di schede explorer 3EEPROM prodotti presso Seeed Studio. I PCB costano circa $ 10, i kit costano circa $ 15, spediti in tutto il mondo. Abbiamo bisogno di organizzare un acquisto di gruppo di 10 PCB o 20 kit per iniziare.
Consigliato:
Tachimetro/indicatore di scansione utilizzando Arduino, OBD2 e CAN Bus: 8 passaggi
Tachimetro/indicatore di scansione utilizzando Arduino, OBD2 e CAN Bus: qualsiasi proprietario di Toyota Prius (o di altri veicoli ibridi/speciali) saprà che ai loro cruscotti potrebbero mancare alcuni quadranti! La mia prius non ha giri motore o indicatore di temperatura. Se sei un tipo da esibizione, potresti voler sapere cose come l'anticipo del tempismo e
Roomba Explorer: 4 passaggi
Roomba Explorer: utilizzando MATLAB e il robot Create2 di iRobot, questo progetto esplorerà diverse aree di un luogo sconosciuto. Abbiamo impiegato i sensori sul Robot per aiutare a manovrare un terreno pericoloso. Ottenendo fotografie e feed video da un Raspberry Pi che
Scorciatoie da tastiera per Internet Explorer!!: 4 passaggi
Scorciatoie da tastiera per Internet Explorer!!: Questo Instructable ti mostrerà alcune utili scorciatoie da tastiera per Internet Explorer Iscriviti al mio canale Grazie
Roomba Scout Explorer: 8 passaggi
Roomba Scout Explorer: Essendo uno dei progetti americani più attesi e più ricercati, i progetti del rover su Marte sono diventati realizzazioni umane nella produzione in continua evoluzione di sistemi autonomi ad alta tecnologia al solo scopo di investigare e inte
HD44780 Scheda adattatore da LCD a I2C per Bus Pirate: 9 passaggi
HD44780 Scheda adattatore da LCD a I2C per Bus Pirate: Gli LCD a caratteri economici basati sul chipset HD44780 sono disponibili in una varietà di dimensioni: 2x16, 4x20, ecc. Questi display hanno due modalità di interfaccia standard, 4 bit e 8 bit in parallelo. 8bit richiede un totale di 11 linee dati, 4bit richiede 7 (6 per sola scrittura). Alcuni