Innehållsförteckning:

Bus Pirate 3EEPROM Explorer Board: 5 steg
Bus Pirate 3EEPROM Explorer Board: 5 steg

Video: Bus Pirate 3EEPROM Explorer Board: 5 steg

Video: Bus Pirate 3EEPROM Explorer Board: 5 steg
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
Buss Pirate 3EEPROM Explorer Board
Buss Pirate 3EEPROM Explorer Board

Om du har en av Hack a Day's Bus Pirates, vad gör du med den? Lär dig om 1-tråds, I2C och SPI EEPROM med 3EEPROM explorer-kortet (vi kallar det THR-EE-PROM). EEPROM är en typ av minneskort som lagrar data utan kontinuerlig strömförsörjning. Det är användbart för permanent datalagring i små loggerkretsar eller för anpassade sidor i en mini -webbserver. EEPROM finns i många storlekar och protokoll. 3EEPROM har tre vanliga EEPROM-chips: DS2431 (1-Wire), 24AA- (I2C) och 25AA- (SPI). Alla tre demonstrerades tidigare på Hack a Day, men varje demo använder en annan version av Bus Pirate -hårdvaran och firmware, det är svårt för en nybörjare att följa med en Bus Pirate v2go. Fortsätt läsa för en uppdaterad, steg -för -steg -guide till hur man använder DS2431, 24AA- och 25AA- EEPROM med Bus Pirate v2go. Vi har också hela sessionsloggarna som textfiler så att du inte kommer att missa en enda detalj. Vi kan få 3EEPROM explorer board PCB eller kit tillverkade på Seeed Studio. PCB är cirka $ 10, kit är cirka $ 15, levereras över hela världen. Vi måste organisera ett gruppköp av 10 PCB eller 20 kit för att komma igång. Om du är intresserad av en busspirat kommer version 3. Jag kunde inte inkludera några formateringselement och HTML -tabeller i en instruktionsbok, du kan se det ursprungliga inlägget på bloggen Dangerous Prototypes.

Steg 1: 3EEPROM maskinvaruöversikt

3EEPROM maskinvaruöversikt
3EEPROM maskinvaruöversikt
3EEPROM maskinvaruöversikt
3EEPROM maskinvaruöversikt
3EEPROM maskinvaruöversikt
3EEPROM maskinvaruöversikt

Målet med denna prototyp är att lära sig om EEPROM och tre vanliga bussprotokoll. Först tittar vi på 3EEPROM -kretskortet, sedan demonstrerar vi varje EEPROM med ett universellt seriellt gränssnittsverktyg för Bus Pirate. Om du inte har en Bus Pirate kan du fortfarande följa med eftersom den grundläggande ordningen för gränssnittsoperationer förblir densamma oavsett hur du implementerar dem. CircuitFull storlek schematisk [PNG]. Vi gjorde kretsen och kretskortet med freeware -versionen av Cadsoft Eagle. Du kan ladda ner schemat och PCB från Bus Pirate SVN-arkivet. 3EEPROM-kretskortet har en DS2431 1-tråds EEPROM (IC1), en 24AA-I2C EEPROM (IC4) och en 25AA-SPI EEPROM (IC5). DS2431 (IC1) drar ström parasitiskt från 1-trådsbussen, den har ingen extern strömförsörjningsstift och kräver inte en avkopplingskondensator. IC2 och IC3 är tomma platser för ytterligare 1-trådiga enheter, som en annan DS2431 eller en DS1822 temperatursensor. C1 (0.01uF) är valfritt och behövs bara om IC2 eller IC3 är utrustade med en driven 1-tråds enhet. 1-Wire kräver ett starkt uppdragsmotstånd, högst 2,2K ohm. Bus Pirates inbyggda pull-up-motstånd är 10K, för svaga för att korrekt driva DS2431 under skrivningar. 3EEPROM explorer-kortet innehåller ett 1,8 k ohm, 1/8 watt uppdragningsmotstånd (R1) på 1-trådsbussen så att inget extra uppdragningsmotstånd behövs. 24AA- (IC4) och 25AA- (IC5) var och en får en 0.1uF kondensator för att koppla bort dem från strömförsörjningen (C2, C3). Du behöver förmodligen inte kondensatorerna i en så enkel krets, vi utelämnade dem från prototypkortet i demonstrationen. I2C-bussen som används av 24AA- kräver också uppdragningsmotstånd, men Bus Pirates inbyggda 10K ohm uppdragningsmotstånd är tillräckliga. Alla komponenter fungerar från 2,8 volt till 5 volt DC. Kretsen drivs via bygelns VCC- och GND-stift. Det finns två VCC-stift, en är för ström, den andra är för busspiratens pull-up motståndsspänning (Vpullup). PCBVi gjorde kretsen och kretskortet med hjälp av freeware version av Cadsoft Eagle. Du kan ladda ner schemat och PCB från Bus Pirate SVN -arkivet. Om du vill ha ett professionellt förberett kretskort eller 3EEPROM -kit kan vi kanske ordna ett gruppköp om 10 eller 20 personer är intresserade. Reservdelslista R1 1800 ohm motstånd (1/8 watt) C2, 3 0.1uF kondensator/10volt+JP1-4 0.1 "hanstiftstift IC1 DS2431 1K 1-tråds EEPROM TO-92IC4 ** 24AA014-I/P I2C EEPROM DIP8IC5 ** 25AA010A-I/P SPI EEPROM DIP8ICS4, 5 8-stifts DIP-uttag för IC5, 6 ** IC4, IC5 kan vara vilken storlek som helst, vi länkade till små chips, vi använde 128bytes och 128Kbytes. Jag kunde inte inkludera några formaterings- och HTML-tabeller i en Instructable kan du se det ursprungliga inlägget på bloggen Dangerous Prototypes.

Steg 2: 25AA- / 25LC- SPI EEPROM

25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM
25AA- / 25LC- SPI EEPROM

Alla demonstrationer i EEPROM ser i stort sett likadana ut. Vi kommer att skriva några nummer till chipet och sedan läsa dem. Varje enhet har villkor som gäller när du vill skriva mer än några få värden, till exempel sidstorlek och gränsbegränsningar. Läs mer om dessa i databladet för din specifika enhet. Om du inte kan få en demonstration att fungera, ladda ner hela terminalloggen så att du inte missar en enda sak vi gjorde. Uppdragsmotstånd är det vanligaste problemet, kontrollera spänningen med dragstiftet med hjälp av menyn 'v' i Bus Pirate-terminalen. Chip: 25AA, SPI EEPROM (1Kbyte). Buss: SPI. Uppdragningsmotstånd krävs endast för blandad spänning. Strömkrav: 1,8 volt till 5,5 volt (AA), 2,5 volt till 5,5 volt (LC). Referenser: datablad, Hack a Day-demonstration. Komplett Bus Pirate-sessionslogg för denna demonstration. Jag kunde inte inkludera några formaterings- och HTML-tabeller i en Instructable, du kan se originalet på bloggen Dangerous Prototypes. IC5 är en 25AA-serie I2C EEPROM från Microchip, dessa EEPROM finns i massor av storlekar. AA-delar går från 1,8 volt till 5,5 volt, medan 25LC-delarna har ett minimikrav på 2,5 volt. C3 (0,1 uF) kopplar bort SPI EEPROM från strömförsörjningen. Skrivskyddet (WP) och hållstiftet kan styras av en mikrokontroller, men vi inaktiverade dem genom att hålla dessa stift högt. SPI -bussstiftet, CS, DO, CLK och DI, förs till rubrik JP4. Inställning Om du använder en busspirat, anslut den till 3EEPROM eller 25AA-IC som visas i diagrambilden nedan. SPI kräver normalt inte uppdragningsmotstånd. Gränssnitt I Bus Pirate -terminalen trycker du på 'm' för lägesmenyn och väljer SPI. Konfigurera SPI -biblioteket för normal pin -utgång, använd standardinställningarna för alla andra SPI -lägesinställningar. Aktivera strömförsörjningen (stort 'W') vid SPI -läget. Slutligen får du en spänningsrapport för att se till att nätaggregaten fungerar ('v'). Vi ska visa hur du kopplar EEPROM direkt till 3,3 volt med SPI -biblioteket i normalt stiftläge. Uppdragningsmotstånd krävs inte för denna demo. Om du vill ansluta en EEPROM som drivs med 5 volt, använd SPI-biblioteket i öppet kollektor (HiZ) stiftläge och aktivera uppdragningsmotstånden med Vpullup-stiftet (Vpu) anslutet till EEPROM: s strömförsörjning. Steg 1, stäng av skrivskyddet 'SPI> [0b110] CS ENABLED <<< chip select aktiverat SKRIVA: 0x06 <<< inaktivera skrivskydd kommando CS DISABLED <<25AA- är skrivskyddad vid start. Sänk markören (CS) ([), skicka kommandot inaktivera skrivskydd (0x06) och höj sedan CS (]) för att aktivera skrivningar till EEPROM. Inaktivera skrivskyddskommandot är 0b00000110 i binär men vi kan förkorta det till 0b110 och busspiraten förstår fortfarande. Steg 2, skriv några värden 'SPI> [0b10 0 3 2 1] CS ENABLED <<< chip select enabledSKRIV: 0x02 <<< skrivkommando SKRIVA: 0x00 <<< skriv startadress SKRIV: 0x03 <<< 3 värden att skriva (3, 2, 1) SKRIVA: 0x02 SKRIVA: 0x01CS INAKTIVERAD <<Nu är EEPROM skrivbar. Sänk först CS för att aktivera 25AA- ([). Skicka sedan skrivkommandot (0x02) och platsen för att börja skriva (0). Skicka data till lagring (3 2 1) och höj sedan CS (]) för att spara värdena. Obs: vi använde en liten 128byte EEPROM, större chips använder en 16bit (2 byte) adress. Detta kommando skulle vara [0b10 0 '' '0' '' 3 2 1] för EEPROM -enheter som är större än 256byte, notera den andra 0. Kontrollera databladet för din EEPROM för att vara säker. Steg 3, läs värden tillbaka SPI> [0b11 0 r: 3] CS ENABLED <<< chip select enabledSKRIV: 0x03 <<< läs kommando SKRIVA: 0x00 <<< läs startadress BULKLÄS 0x03 BYTES: <<< läs 3 värden0x03 0x02 0x01CS INAKTIVERAD <<Slutligen, läs tillbaka data för att verifiera att skrivningen lyckades. Välj 25AA- ([), skicka läskommando (0x03) och startadress (0) och läs sedan tre värden (r: 3). Höj CS för att slutföra transaktionen (]). Värdena matchar, skrivningen lyckades. Obs: vi använde en liten 128byte EEPROM, större chips använder en 16bit (2 byte) adress. Detta kommando skulle vara [0b11 0 '' '0' '' r: 3] för EEPROM -enheter som är större än 256byte, notera den andra 0. Kontrollera databladet för din EEPROM för att vara säker.

Steg 3: 24AA- / 24LC I2C EEPROM

24AA- / 24LC I2C EEPROM
24AA- / 24LC I2C EEPROM
24AA- / 24LC I2C EEPROM
24AA- / 24LC I2C EEPROM
24AA- / 24LC I2C EEPROM
24AA- / 24LC I2C EEPROM

Chip: 24AA, I2C EEPROM (1Kbyte). Buss: I2C, uppdragningsmotstånd krävs. Strömkrav: 1,8 volt till 5,5 volt (24AA), 2,5 volt till 5,5 volt (24LC). Referenser: datablad, Hack a Day demonstration. Komplett Bus Pirate-sessionslogg för denna demonstration. Jag kunde inte inkludera några formaterings- och HTML-tabeller i en Instructable, du kan se originalet på bloggen Dangerous Prototypes. IC4 är en 24AA-serie I2C EEPROM från Microchip, dessa EEPROM kommer i en massor av storlekar. AA-delar fungerar från 1,8 volt till 5,5 volt, medan 24LC-delarna har ett minimikrav på 2,5 volt. En 0,1 uF kondensator (C2) kopplar bort IC4 från strömförsörjningen. Skrivskyddsstiftet (WP) kan styras från en mikrokontroller, men för denna enkla demonstration inaktiverar vi det med en anslutning till jord. I2C -busstiften, SDA och SCL, förs ut till rubrik JP2. Adressen för de flesta 24AA EEPROM är 1010AAAS, med de sista fyra bitarna bestämda av adresspinnarna (A0, A1, A2) och läs-/skrivlägesvalsbiten (S). Alla adressbitar är jordade i detta exempel, så skrivadressen för EEPROM är 10100000 (datablad sidan 6). Inställning Om du använder en busspirat, anslut den till 3EEPROM eller 24AA-IC som visas i diagrambilden nedan. I2C är en dubbelriktad buss som kräver uppdragningsmotstånd på båda stiften. Du kan använda Bus Pirates inbyggda pull-up motstånd genom att ansluta Vpullup (Vpu) stift till 3,3 volt strömförsörjning och aktivera dem i terminalen. Gränssnitt Obs: Inte alla I2C EEPROM fungerar likadant. Den lilla 24AA01 har till exempel ett helt annat adresserings- och kommandosystem. Var noga med att kontrollera databladet för ditt chip. Tryck på 'm' i Bus Pirate -terminalen och välj I2C från lägesmenyn. Aktivera nätaggregaten (stora 'W') och uppdragningsmotstånden ('p', alternativ 2) vid I2C-prompten. Få en spänningsrapport ('v') för att se till att nätaggregaten är på och att Vpullup -stiftet är anslutet till en spänning. I2C> (0) <<(1) <<< använd adress sökmakro Sök 7bit I2C adressutrymme. Hittade enheter på: 0xA0 0xA1 <<Vi vet redan att I2C-adressen är 10100000, men vi kan också använda Bus Pirates I2C-sökmakro (1) för att söka efter 24AA-. Sökmakrotet hittade enheten vid de förväntade skriv- (0xA0) och lästa (0xA1) adresserna. Steg 1, skriv några värden I2C> [0b10100000 0 0 3 2 1] I2C STARTVILLKOR <<< I2C startförhållande SKRIVA: 0xA0 FÅR ACK: JA <<< 24AA- skriv adress SKRIV: 0x00 FÅR ACK: JA <<< skriv adressbyte 1WRITE: 0x00 GOT ACK: YES <<< write address byte 2WRITE: 0x03 FÅR ACK: YES <<< 3 värden att skriva (3, 2, 1) SKRIVA: 0x02 FÅR ACK: YESWRITE: 0x01 FÅR ACK: YESI2C STOPPVILLKOR < <Börja skriva med ett I2C-startvillkor ([), följt av 24AA-skrivadressen (0xa0). Skicka sedan 16 -bitarsadressen för att skriva vid (0 0) och data som ska skrivas (3 2 1). Avsluta I2C -transaktionen med ett stoppvillkor (]). Steg 2, placera läspekaren I2C> [0b10100000 0 0] I2C STARTVILLKOR <<< I2C startförhållande SKRIVA: 0xA0 FÅR ACK: JA <<< 24AA- skriv adress SKRIV: 0x00 FÅR AKT: JA <<< skriv adress byte 1WRITE: 0x00 FÅR ACK: JA <<< skriv adress byte 2I2C STOPPVILLKOR <<Det tar två operationer att läsa från 24AA-. Den ena placerar läs-/skrivpekaren, den andra returnerar värdena. Börja med ett I2C -startvillkor ([) och skrivadressen (0xa0). Skicka 16 -bitarsadressen för att läsa (0 0), och sedan stoppvillkoret (]). Vi skickade inga data för att skriva den här gången, vi placerade bara läs-/skrivpekaren tillbaka till början av data vi skrev i steg 1. Steg 3, läs några värden I2C> [0b10100001 r: 3] I2C STARTVILLKOR <<< I2C startvillkor SKRIVA: 0xA1 Fick ACK: JA <<< 24AA- läs adressBULKLÄS 0x03 BYTES: <<< läs 3 värden0x03 0x02 0x01I2C STOPPVILLKOR <<Steg 2 ställ in läs-/skrivpekaren till början av data vi vill läsa. Nu kan vi läsa data med hjälp av 24AA-läsadressen. Börja med I2C-startvillkoret ([) och 24AA-läsadressen (0xa1). Läs de tre värdena vi skrev i steg 1 (r: 3) och avsluta med ett stoppvillkor (]). Om värdena överensstämmer, var din skrivning framgångsrik.

Steg 4: DS2431 1-tråds EEPROM

DS2431 1-tråds EEPROM
DS2431 1-tråds EEPROM
DS2431 1-tråds EEPROM
DS2431 1-tråds EEPROM
DS2431 1-tråds EEPROM
DS2431 1-tråds EEPROM

Chip: DS2431, 1-tråds EEPROM (1Kbyte). Buss: 1-tråd, <2,2Kohm uppdragningsmotstånd krävs. Strömkrav: 2,8 volt till 5,25 volt. Referenser: datablad, Hack a Day-demonstration. Komplett busspirat session logg för denna demonstration. Jag kunde inte inkludera några formaterings- och HTML-tabeller i en instruerbar, du kan se originalet på bloggen Dangerous Prototypes. DS2431 drar ström från uppdragsmotståndet och behöver inte en extern matning eller avkopplingskondensator. 1-Wire behöver ett starkt uppdragningsmotstånd, högst 2,2Kohms. Bus Pirates inbyggda pull-up-motstånd är 10K, för svaga för att korrekt driva DS2431 under skrivningar. Du måste använda ett 2.2Kohm eller mindre externt motstånd mellan ström och 1-tråds bussstift. Om du har svårt att skriva data, se till att ditt uppdragningsmotstånd är tillräckligt stort. 3EEPROM explorer-kortet innehåller ett upptagningsmotstånd på 1800 ohm (R1) på 1-trådsbussen så inget externt motstånd behövs. Inställning Om du använder en busspirat, anslut den till 3EEPROM -kortet eller DS2431 som visas i diagrambilden nedan. DS2431 kräver ingen strömförsörjningsstift, den används på 3EEPROM-kortet för att driva det stora uppdragningsmotståndet för 1-trådsbussen. Gränssnitt Tryck på 'm' i Bus Pirate-terminalen och välj 1-trådsläge. Aktivera inbyggda strömförsörjningar (stora 'W') och kontrollera spänningsmonitorn (v). Steg 1, hitta enhetsadressen 1-WIRE> (0xf0) <<< 1-Wire search macro 1WIRE ROM COMMAND: SEARCH (0xF0) Found devices at: Macro 1WIRE address1.0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B <<< DS2431 unikt ID*DS2431 1K EEPROM <<Varje 1-Wire-enhet har ett unikt ID på 8 byte. 1-Wire har en sökprocedur som identifierar ID för alla anslutna enheter. Bus Pirate implementerar 1-Wire-sökningen som makro (240). Skriv '(240)' i Bus Pirate-terminalen för att starta 1-Wire-sökningen. Varje enhetsadress skrivs ut, kända enheter identifieras. De första tio 1-Wire-enhetsadresserna lagras som makron, i detta exempel är vår DS2431-adress tillgänglig genom att skriva '(1)' i terminalen. Steg 2, skriv 8 byte till skrapblocket 1-WIRE> (0x55) (1) 0x0f 0 0 8 7 6 5 4 3 2 11WIRE BUS RESET OK <<< also {command 1WIRE WRITE ROM COMMAND: MATCH (0x55) * följ med 64bit adress1WIRE ADDRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B 'SKRIV: 0x0F <<< DS2431 skrivskiva kommando SKRIVA: 0x00 <<< DS2431 skriv adress byte 1 SKRIV: 0x00 <<< DS24W skriv adress: 0x08 <<Därefter skriver vi 8 byte till en tillfällig plats i DS2431 som kallas scratch pad. Starta transaktionen med en 1-tråds bussåterställning och MATCH-kommando (0x55). Båda är tillgängliga som makro '(0x55)'. Detta kan också göras utan ett makro genom att skriva '{0x55', {skickar 1-Wire-återställningen, 0x55 är 1-Wire MATCH-kommandot. Efter MATCH-kommandot, skicka enhetens 8-byte-ID till adress. Vi använde makrot (1) som fylldes med DS2431 -ID i steg 1. Du kan också ange 8 -byte -ID manuellt. Vid denna tidpunkt borde DS2431 ha fått sin adress och vara redo för kommandon. 0x0f är skrivskrapblocket -kommandot, det säger till DS2431 att förvänta sig data. Nästa två byte berättar var data ska läggas, vi sparar dem i början (0 0). Slutligen skickar vi 8 byte med värden för att lagra, siffrorna 8 till 1. Du måste skriva hela 8 byte till DS2431. Dessutom måste skrivadressen ligga på en 8 byte gräns. Se databladet för en fullständig översikt över skrivbegränsningarna. Steg 3, verifiera kladdplattan och få behörighetskoden 1-WIRE> (0x55) (1) 0xaa r: 3 r: 8 r: 2 r: 21WIRE BUS RESET OK <<< adressera enheten1WIRE WRITE ROM COMMAND: MATCH (0x55) *följ med 64 -bitars adress1WIRE ADDRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0xAA <<< read scratch pad commandBULK READ 0x03 BYTES: <<< autorisationskod0x00 0x00 0x07B0K08T0008T008T0B0K08X0B0K08X0B0K08X0B0K08X0B0K08 0x07 0x06 0x05 0x04 0x03 0x02 0x01BULK LÄS 0x02 BYTES: <<< CRC för data0xC8 0x86BULK LÄS 0x02 BYTES: <<Kontrollera att data har tagits emot korrekt och få en skrivbehörighetskod. Börja igen med en 1-Wire-återställning och MATCH-kommandomakro (0x55) och enhetsadressmakrot (1). Den här gången skickar du kommandot DS2431 read scratch pad (0xAA) och läser sedan totalt 15 bytes. De första 3 byte som läses (r: 3) är skrivbehörighetskoden, vi behöver den i nästa steg för att kopiera skrapdynan till EEPROM. Nästa 8 byte (r: 8) ska matcha data vi skickade i steg 2. De sista 2 bytes (r: 2) är en CRC16 för data. Läser efter CRC returnerar alla 1: or. Steg 4, skriv skrapblocket till EEPROM 1-WIRE> (0x55) (1) 0x55 0x00 0x00 0x071WIRE BUS RESET OK <<< adressera enheten1WIRE WRITE ROM COMMAND: MATCH (0x55) *följ med 64bit adress1WIRE ADRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0x55 <<< kopiera scratchpad-kommandot WRITE: 0x00 <<< 3 byte-auktoriseringskod från steg 3WRITE: 0x00WRITE: 0x071-WIRE> Vi har allt vi behöver för att lagra skrapbladsdata permanent i EEPROM. Adress the device, send then the DS2431 copy scratch pad command (0x55) followed by the three byte authorization code we retrieved in step 3 (0x00 0x00 0x07). Om behörighetskoden är korrekt flyttas data till EEPROM. Steg 5, verifiera skrapblocket skriv 1-WIRE> (0x55) (1) 0xaa r: 31WIRE BUS RESET OK <<< address the device1WIRE WRITE ROM COMMAND: MATCH (0x55) *follow with 64bit address1WIRE ADDRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0xAA <<< read scratch pad commandBULK READ 0x03 BYTES: 0x00 0x00 0x87 <<DS2431 ställer in den övre delen av skrivbehörighetskoden efter ett lyckat kopieringsskrap -kommando. Skicka ytterligare ett kommando för läsningskrapa (0xAA) för att få den uppdaterade behörighetskoden, men läs bara de tre första byten (r: 3). Det tidigare värdet 0x07 har ändrats till 0x87, kopieringskommandot togs emot. Steg 6, läs tillbaka värdena 1-WIRE> (0x55) (1) 0xf0 0x00 0x00 r: 8 r: 81WIRE BUS RESET OK <<< address the device1WIRE WRITE ROM COMMAND: MATCH (0x55) *follow with 64bit address1WIRE ADRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0xF0 <<< DS2431 läs kommando SKRIV: 0x00 <<< 2 byte läs adress SKRIVA: 0x00BULK LÄS 0x08 BYTES: <<< läs de 8 byte 0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x00x0x0x00x0x00x0x0x0x0x0x0x0x0x0x0x0x0 0x08 BYTES: <<Kontrollera att skrivningen fungerade korrekt genom att hämta värdena. Adress till DS2431, skicka sedan läskommandot (0xf0) och adressen att läsa från (0x00 0x00). Det är möjligt att läsa hela minnesområdet med ett enda kommando. Vi läste de åtta bytes som vi skrev tidigare (r: 8), som returnerade de förväntade värdena. De åtta bytes utöver dessa värden har inte skrivits och returnerar 0.

Steg 5: Slutsats

Slutsats
Slutsats

Slutsats Denna prototyp lär om EEPROM-minne och visar hur man använder Bus Pirate med tre vanliga protokoll: 1-Wire, I2C och SPI. 3EEPROM explorer-kortet säkerställer korrekta anslutningar till varje EEPROM och tillhandahåller ett externt pull-up-motstånd för den mer krävande 1-trådsbussen med parasitdrivna komponenter. Vi kan ha 3EEPROM explorer board PCB eller kit tillverkade på Seeed Studio. PCB är cirka $ 10, kit är cirka $ 15, levereras över hela världen. Vi måste organisera ett gruppköp på 10 PCB eller 20 kit för att komma igång.

Rekommenderad: