Innholdsfortegnelse:

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

Video: Bus Pirate 3EEPROM Explorer Board: 5 trinn

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

Hvis du har en av Hack a Day's Bus Pirates, hva gjør du med den? Lær om 1-wire, I2C og SPI EEPROM-er med 3EEPROM explorer board (vi kaller det THR-EE-PROM). EEPROM er en type minnebrikke som lagrer data uten kontinuerlig strømforsyning. Det er nyttig for permanent datalagring i små loggerkretser, eller for å holde egendefinerte sider på en mini -webserver. EEPROM kommer i mange størrelser og protokoller. 3EEPROM har tre vanlige EEPROM-brikker: DS2431 (1-Wire), 24AA- (I2C) og 25AA- (SPI). Alle tre ble tidligere demonstrert på Hack a Day, men hver demo bruker en annen versjon av Bus Pirate -maskinvaren og fastvaren, det er vanskelig for en nybegynner å følge med en Bus Pirate v2go. Fortsett å lese for en oppdatert, trinnvis veiledning for bruk av DS2431, 24AA- og 25AA- EEPROMene med Bus Pirate v2go. Vi har også hele sesjonsloggene som tekstfiler, slik at du ikke går glipp av en eneste detalj. Vi kan få 3EEPROM explorer board PCB eller sett produsert på Seeed Studio. PCB er omtrent $ 10, sett er omtrent $ 15, sendt over hele verden. Vi må organisere et gruppekjøp på 10 PCB eller 20 sett for å komme i gang. Hvis du er interessert i en busspirat, kommer versjon 3. Jeg kunne ikke inkludere noen formateringselementer og HTML -tabeller i en Instructable, du kan se det opprinnelige innlegget på bloggen Dangerous Prototypes.

Trinn 1: 3EEPROM maskinvareoversikt

3EEPROM maskinvareoversikt
3EEPROM maskinvareoversikt
3EEPROM maskinvareoversikt
3EEPROM maskinvareoversikt
3EEPROM maskinvareoversikt
3EEPROM maskinvareoversikt

Målet med denne prototypen er å lære om EEPROM og tre vanlige bussprotokoller. Først ser vi på 3EEPROM PCB, så demonstrerer vi hver EEPROM ved hjelp av et universelt serielt grensesnittverktøy for Bus Pirate. Hvis du ikke har en Bus Pirate, kan du fortsatt følge med fordi den grunnleggende rekkefølgen på grensesnittoperasjoner forblir den samme uansett hvordan du implementerer dem. CircuitFull størrelse skjematisk [PNG]. Vi laget kretsen og PCB ved å bruke freeware -versjonen av Cadsoft Eagle. Du kan laste ned skjematisk og PCB fra Bus Pirate SVN-arkivet. 3EEPROM PCB har en DS2431 1-Wire EEPROM (IC1), en 24AA-I2C EEPROM (IC4) og en 25AA-SPI EEPROM (IC5). DS2431 (IC1) henter strøm parasittisk fra 1-trådsbussen, den har ikke en ekstern strømforsyningspinne og krever ikke en frakoblingskondensator. IC2 og IC3 er tomme plasser for ytterligere 1-tråds enheter, som en annen DS2431 eller en DS1822 temperatursensor. C1 (0.01uF) er valgfritt og er bare nødvendig hvis IC2 eller IC3 er fylt med en drevet 1-tråds enhet. 1-Wire krever en sterk opptrekksmotstand, maksimalt 2,2K ohm. Busspiratens opptrekksmotstander ombord er 10K, for svake til å drive DS2431 ordentlig under skrivingen. 3EEPROM explorer board inkluderer en 1,8 k ohm, 1/8 watt pull-up motstand (R1) på 1-wire bussen, slik at det ikke er behov for en ekstra pull-up motstand. 24AA- (IC4) og 25AA- (IC5) hver får en 0.1uF kondensator for å koble dem fra strømforsyningen (C2, C3). Du trenger sannsynligvis ikke kondensatorene i en så enkel krets, vi utelot dem fra prototypekortet i demonstrasjonen. I2C-bussen som brukes av 24AA- krever også opptrekkmotstander, men Bus Pirates innebygde 10K ohm opptrekkmotstander er tilstrekkelig. Alle komponentene vil fungere fra 2,8 volt til 5 volt DC. Kretsen drives gjennom VCC- og GND-pinnene i jumper 3. Det er to VCC-pinner, den ene er for strøm, den andre er for Bus Pirates pull-up-motstandsspenning-inngangspinne (Vpullup). PCB Vi laget kretsen og PCB ved hjelp av freeware -versjon av Cadsoft Eagle. Du kan laste ned skjematisk og PCB fra Bus Pirate SVN -arkivet. Hvis du vil ha et profesjonelt forberedt PCB- eller 3EEPROM -sett, kan vi kanskje ordne et gruppekjøp hvis 10 eller 20 personer er interessert. Deleliste R1 1800 ohm motstand (1/8th watt) C2, 3 0.1uF kondensator/10volt+JP1-4 0.1 "mannlig stifthodet IC1 DS2431 1K 1-leder EEPROM TO-92IC4 ** 24AA014-I/P I2C EEPROM DIP8IC5 ** 25AA010A-I/P SPI EEPROM DIP8ICS4, 5 8-pins DIP-sokkel for IC5, 6 ** IC4, IC5 kan være hvilken som helst størrelse, vi koblet til små chips, vi brukte 128bytes og 128Kbytes. Jeg kunne ikke inkludere noen formatering og HTML-tabeller i en Instructable, kan du se det opprinnelige innlegget på bloggen Dangerous Prototypes.

Trinn 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

Alle EEPROM -demoer ser ganske like ut. Vi skriver noen tall til brikken, og leser dem deretter. Hver enhet har betingelser som gjelder når du vil skrive mer enn noen få verdier, for eksempel sidestørrelse og grensebegrensninger. Les mer om disse i databladet for din spesifikke enhet. Hvis du ikke kan få en demonstrasjon til å fungere, kan du laste ned hele terminalloggen slik at du ikke går glipp av en eneste ting vi gjorde. Pull-up motstander er det vanligste problemet, sjekk pull-up pin spenningen ved hjelp av menyen 'v' i Bus Pirate terminalen. Chip: 25AA, SPI EEPROM (1Kbyte). Bus: SPI. Pull-up-motstander kreves bare for blandet spenning. Strømkrav: 1,8 volt til 5,5 volt (AA), 2,5 volt til 5,5 volt (LC). Referanser: datablad, Hack a Day-demonstrasjon. Komplett buss-pirat-sesjonslogg for denne demonstrasjonen. Jeg kunne ikke inkludere noen formatering og HTML-tabeller i en Instructable, du kan se originalen på bloggen Dangerous Prototypes. IC5 er en 25AA-serie I2C EEPROM fra Microchip, disse EEPROMene kommer i massevis av størrelser. AA-deler går fra 1,8 volt til 5,5 volt, mens 25LC-delene har et minimumskrav på 2,5 volt. C3 (0,1 uF) kobler SPI EEPROM fra strømforsyningen. Skrivebeskyttelsen (WP) og holdepinnene kan styres av en mikrokontroller, men vi deaktiverte dem ved å holde disse pinnene høyt. SPI -busspinnene, CS, DO, CLK og DI, bringes til topptekst JP4. Oppsett Hvis du bruker en busspirat, kobler du den til 3EEPROM eller 25AA-IC som vist i diagrammet nedenfor. SPI krever normalt ikke opptrekkmotstander. Grensesnitt I Bus Pirate -terminalen trykker du på 'm' for modusmenyen og velger SPI. Konfigurer SPI -biblioteket for normal pin -utgang, bruk standardinnstillingene for alle andre SPI -modusinnstillinger. Aktiver strømforsyningene (store 'W') ved spørsmål om SPI -modus. Til slutt får du en spenningsrapport for å sikre at strømforsyningene fungerer ('v'). Vi skal demonstrere hvordan du kobler EEPROM direkte til 3,3 volt ved bruk av SPI -biblioteket i normal pin -modus. Pull-up motstander er ikke nødvendig for denne demoen. Hvis du vil koble til en EEPROM drevet av 5 volt, bruker du SPI-biblioteket i åpen samler (HiZ) pin-modus og aktiverer opptrekkmotstandene med Vpullup-pinnen (Vpu) koblet til EEPROMs strømforsyning. Trinn 1, slå av skrivebeskyttelse 'SPI> [0b110] CS ENABLED <<< chip select aktivert SKRIV: 0x06 <<< deaktiver skrivebeskyttelseskommando CS deaktivert <<25AA- er skrivebeskyttet ved oppstart. Senk brikken, velg (CS) ([), send kommandoen for deaktivering av skrivebeskyttelse (0x06), og hev deretter CS (]) for å aktivere skriving til EEPROM. 0b110 og busspiraten forstår fortsatt. Trinn 2, skriv noen verdier 'SPI> [0b10 0 3 2 1] CS ENABLED <<< chip select enabledSKRIV: 0x02 <<< skriv kommando SKRIV: 0x00 <<< skriv startadresse SKRIV: 0x03 <<< 3 verdier å skrive (3, 2, 1) SKRIV: 0x02 SKRIV: 0x01CS DEABLERT <<Nå er EEPROM skrivbar. Senk først CS for å aktivere 25AA- ([). Send deretter skrive -kommandoen (0x02) og stedet for å begynne å skrive (0). Send dataene til lagring (3 2 1), og øk deretter CS (]) for å lagre verdiene. Merk: vi brukte en liten 128byte EEPROM, større chips bruker en 16bit (2 byte) adresse. Denne kommandoen vil være [0b10 0 '' '0' '' 3 2 1] for EEPROM -er større enn 256byte, merk den andre 0. Kontroller databladet for EEPROM -en din for å være sikker. Trinn 3, les verdiene tilbake SPI> [0b11 0 r: 3] CS ENABLED <<< chip select enabledSKRIV: 0x03 <<< les kommando SKRIV: 0x00 <<< les startadresse BULK LES 0x03 BYTES: <<< les 3 verdier0x03 0x02 0x01CS DØMMET <<Til slutt, les dataene tilbake for å bekrefte at skrivingen var vellykket. Velg 25AA- ([), send read-kommandoen (0x03) og startadressen (0), og les deretter tre verdier (r: 3). Hev CS for å fullføre transaksjonen (]). Verdiene samsvarer, skriveren var vellykket. Merk: vi brukte en liten 128byte EEPROM, større chips bruker en 16bit (2 byte) adresse. Denne kommandoen vil være [0b11 0 '' '' 0 '' 'r: 3] for EEPROM -er større enn 256byte, merk den andre 0. Kontroller databladet for EEPROM -en din for å være sikker.

Trinn 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, opptrekksmotstander påkrevd Strømkrav: 1,8 volt til 5,5 volt (24AA), 2,5 volt til 5,5 volt (24LC). Referanser: datablad, Hack a Day demonstrasjon. Komplett Bus Pirate-sesjonslogg for denne demonstrasjonen. Jeg kunne ikke inkludere noen formatering og HTML-tabeller i en Instructable, du kan se originalen på Dangerous Prototypes-bloggen. IC4 er en 24AA-serie I2C EEPROM fra Microchip, disse EEPROM-ene kommer i en tonnevis med størrelser. AA-deler fungerer fra 1,8 volt til 5,5 volt, mens 24LC-delene har et minimumskrav på 2,5 volt. En 0,1 uF kondensator (C2) kobler IC4 fra strømforsyningen. Skrivebeskyttelsesnålen (WP) kan styres fra en mikrokontroller, men for denne enkle demonstrasjonen deaktiverer vi den med tilkobling til bakken. I2C -busspinnene, SDA og SCL, bringes ut til topptekst JP2. Adressen til de fleste 24AA EEPROM -er er 1010AAAS, med de fire siste bitene bestemt av adressepinnene (A0, A1, A2) og les/skrivemodusvelgeren (S). Alle adressebitene er jordet i dette eksemplet, så skriveadressen til EEPROM er 10100000 (datablad side 6). Oppsett Hvis du bruker en busspirat, kobler du den til 3EEPROM eller 24AA-IC som vist i diagrammet nedenfor. I2C er en toveis buss som krever opptrekkmotstander på begge pinnene. Du kan bruke Bus Pirates innebygde pull-up-motstander ved å koble Vpullup (Vpu) -pinnen til 3,3 volt strømforsyning og aktivere dem i terminalen. Grensesnittmerknad: Ikke alle I2C EEPROM -er fungerer på samme måte. Den lille 24AA01 har for eksempel et helt annet adresserings- og kommandosystem. Sørg for å sjekke databladet for brikken din. Trykk på 'm' i Bus Pirate -terminalen og velg I2C fra modusmenyen. Aktiver strømforsyningene (store 'W') og pull-up-motstandene ('p', alternativ 2) ved I2C-ledeteksten. Få en spenningsrapport ('v') for å kontrollere at strømforsyningene er på og at Vpullup -pinnen er koblet til en spenning. I2C> (0) <<(1) <<< bruk adressesøk makro Søker 7 -biters I2C -adresserom. Funnet enheter på: 0xA0 0xA1 <<Vi vet allerede at I2C-adressen er 10100000, men vi kan også bruke Bus Pirates I2C-søkemakro (1) til å søke etter 24AA-. Søkemakroen fant enheten ved forventet skrive (0xA0) og lese (0xA1) adresser. Trinn 1, skriv noen verdier I2C> [0b10100000 0 0 3 2 1] I2C START TILSTAND <<< I2C starttilstand SKRIV: 0xA0 FÅTT ACK: JA <<< 24AA- skriv adresse SKRIV: 0x00 FÅTT ACK: JA <<< skriv adresse byte 1WRITE: 0x00 GOT ACK: YES <<< write address byte 2WRITE: 0x03 GOT ACK: YES <<< 3 verdier å skrive (3, 2, 1) SKRIV: 0x02 FÅ ACK: YESWRITE: 0x01 FÅ ACK: YESI2C STOPP TILSTAND < <Start skrivingen med en I2C-startbetingelse ([), etterfulgt av 24AA- skriveadressen (0xa0). Send deretter 16 -biters adressen for å skrive på (0 0) og dataene som skal skrives (3 2 1). Avslutt I2C -transaksjonen med en stoppbetingelse (]). Trinn 2, plasser lesepekeren I2C> [0b10100000 0 0] I2C START TILSTAND <<< I2C starttilstand SKRIV: 0xA0 GET ACK: JA <<< 24AA- skriv adresse SKRIV: 0x00 FÅTT ACK: JA <<< skriv adresse byte 1WRITE: 0x00 FÅTT ACK: JA <<< skriv adresse byte 2I2C STOPPBETINGELSE <<Det tar to operasjoner å lese fra 24AA-. Den ene plasserer lese/skrive -pekeren, den andre returnerer verdiene. Begynn med en I2C startbetingelse ([) og skriveadressen (0xa0). Send 16bit -adressen for å lese (0 0), og deretter stopptilstanden (]). Vi sendte ingen data for å skrive denne gangen, vi plasserte bare lese/skrive pekeren tilbake til begynnelsen av dataene vi skrev i trinn 1. Trinn 3, les noen verdier I2C> [0b10100001 r: 3] I2C START TILSTAND <<< I2C starttilstand SKRIV: 0xA1 FÅTT ACK: JA <<< 24AA- les adresse BULK LES 0x03 BYTES: <<< les 3 verdier0x03 0x02 0x01I2C STOPPTILSTAND <<Trinn 2 setter lese/skrive pekeren til begynnelsen av dataene vi vil lese. Nå kan vi lese dataene ved hjelp av 24AA-leseadressen. Begynn med I2C-startbetingelsen ([) og 24AA-leseadressen (0xa1). Les de tre verdiene vi skrev i trinn 1 (r: 3), og avslutt med en stopptilstand (]). Hvis verdiene samsvarer, var skrivingen vellykket.

Trinn 4: DS2431 1-Wire EEPROM

DS2431 1-leder EEPROM
DS2431 1-leder EEPROM
DS2431 1-leder EEPROM
DS2431 1-leder EEPROM
DS2431 1-leder EEPROM
DS2431 1-leder EEPROM

Chip: DS2431, 1-leder EEPROM (1Kbyte). Buss: 1-Wire, <2,2Kohm pull-up-motstand påkrevd. Krav til strøm: 2,8 volt til 5,25 volt. Referanser: datablad, Hack a Day-demonstrasjon. Komplett buss-piratøktlogg for denne demonstrasjonen. Jeg kunne ikke inkludere noen formatering og HTML-tabeller i en Instructable, du kan se originalen på bloggen Dangerous Prototypes. DS2431 henter strøm fra pull-up-motstanden og trenger ikke ekstern forsyning eller frakoblingskondensator. 1-Wire trenger en sterk opptrekksmotstand, maksimalt 2,2Kohms. Busspiratens opptrekksmotstander ombord er 10K, for svake til å drive DS2431 ordentlig under skrivingen. Du må bruke en ekstern motstand på 2,2 Kohm eller mindre mellom strøm og 1-tråds bussstift. Hvis du har problemer med å skrive data, må du kontrollere at opptrekksmotstanden er stor nok. 3EEPROM explorerkortet inneholder en opptrekningsmotstand på 1800 ohm (R1) på 1-trådsbussen, så det er ikke nødvendig med ekstern motstand. Oppsett Hvis du bruker en busspirat, kobler du den til 3EEPROM -kortet eller DS2431 som vist i diagrammet nedenfor. DS2431 krever ikke strømforsyningspinne, den brukes på 3EEPROM-kortet for å drive den store opptrekkmotstanden for 1-trådsbussen. Grensesnitt Trykk på 'm' i Bus Pirate-terminalen og velg 1-ledningsmodus. Slå på innebygde strømforsyninger (store 'W') og sjekk spenningsmonitoren (v). Trinn 1, finn 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 unik ID*DS2431 1K EEPROM <<Hver 1-Wire-enhet har en unik 8-byte ID. 1-Wire har en søkeprosedyre som oppdager ID-en til alle tilkoblede enheter. Bus Pirate implementerer 1-Wire-søket som makro (240). Skriv '(240)' i Bus Pirate-terminalen for å starte 1-Wire-søket. Hver enhetsadresse skrives ut, kjente enheter identifiseres. De første ti 1-Wire enhetsadressene lagres som makroer, i dette eksemplet er DS2431-adressen vår tilgjengelig ved å skrive '(1)' i terminalen. Trinn 2, skriv 8 byte til skrapeplaten 1-WIRE> (0x55) (1) 0x0f 0 0 8 7 6 5 4 3 2 11WIRE BUS RESET OK <<< også {kommando 1WIRE WRITE ROM COMMAND: MATCH (0x55) * følg med 64bit adresse1 WIRE ADDRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2B 'SKRIV: 0x0F <<< DS2431 skriv skrapelodd kommando SKRIV: 0x00 <<< DS2431 skriv adresse byte 1 SKRIFT: 0x00 <<< DS24W skriv adresse: 0x08 <<Deretter skriver vi 8 byte til et midlertidig sted i DS2431 som kalles scratchpad. Start transaksjonen med en 1-Wire buss reset og MATCH kommando (0x55). Begge er tilgjengelige som makro '(0x55)'. Dette kan også gjøres uten en makro ved å skrive '{0x55', {sender 1-Wire reset, 0x55 er 1-Wire MATCH-kommandoen. Etter MATCH-kommandoen, send 8-byte-IDen til enheten til adresse. Vi brukte makroen (1) som var fylt med DS2431 ID i trinn 1. Du kan også angi 8 byte ID manuelt. På dette tidspunktet burde DS2431 ha mottatt adressen og være klar for kommandoer. 0x0f er skrive -skrapekommandoen, den forteller DS2431 å forvente data. De to neste byte forteller hvor du skal legge dataene, vi lagrer dem i begynnelsen (0 0). Til slutt sender vi 8 byte med verdier for å lagre, tallene 8 til 1. Du må skrive hele 8 byte til DS2431. I tillegg må skriveadressen være på en 8 byte grense. Se databladet for en fullstendig oversikt over skrivebegrensningene. Trinn 3, bekreft skrapeplaten og få autorisasjonskoden 1-WIRE> (0x55) (1) 0xaa r: 3 r: 8 r: 2 r: 21WIRE BUS RESET OK <<< address the device1WIRE WRITE ROM COMMAND: MATCH (0x55) *følg med 64 -biters adresse1 WIRE ADDRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0xAA <<< read scratch pad commandBULK READ 0x03 BYTES: <<< autorisasjonskode0x00 0x00 0x07B0K08T008T008T08X0B0K08X0B0K08X0B0K08X0B0K08X0B0K08 0x07 0x06 0x05 0x04 0x03 0x02 0x01BULK LES 0x02 BYTES: <<< CRC for data0xC8 0x86BULK LES 0x02 BYTES: <<Kontroller at dataene ble mottatt riktig, og få en skriveautorisasjonskode. Start på nytt med en 1-tråds tilbakestilling og MATCH-kommandomakro (0x55), og enhetsadressemakroen (1). Denne gangen send DS2431 read scratch pad -kommandoen (0xAA), og les deretter totalt 15 byte. De første 3 byte som er lest (r: 3) er skriveautorisasjonskoden, vi trenger den i neste trinn for å kopiere skrapeplate til EEPROM. De neste 8 byte (r: 8) skal matche dataene vi sendte i trinn 2. De siste 2 byte (r: 2) er en CRC16 for dataene. Leser etter at CRC returnerer alle 1 -ene. Trinn 4, skriv skrapeplaten til EEPROM 1-WIRE> (0x55) (1) 0x55 0x00 0x00 0x071WIRE BUS RESET OK <<< adresse til enheten1WIRE WRITE ROM COMMAND: MATCH (0x55) *følg med 64bit adresse1WIRE ADRESS MACRO 1: 0x2D 0x54 0xD2 0xEF 0x00 0x00 0x00 0x2BWRITE: 0x55 <<< kopier scratchpad kommando SKRIFT: 0x00 <<< 3 byte autorisasjonskode fra trinn 3 SKRIFT: 0x00WRITE: 0x071-WIRE> Vi har alt vi trenger for å lagre skrapeloddene permanent i EEPROM. Adresser enheten, send deretter kommandoen DS2431 copy scratch pad (0x55) etterfulgt av autorisasjonskoden på tre byte vi hentet i trinn 3 (0x00 0x00 0x07). Hvis autorisasjonskoden er korrekt, flyttes dataene til EEPROM. Trinn 5, bekreft skrapeplaten 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 angir den øverste delen av skriveautorisasjonskoden etter en vellykket kommando for kopi -skrapeplate. Send en annen kommando for å lese skrapelodd (0xAA) for å få den oppdaterte autorisasjonskoden, men les bare de tre første byte (r: 3). Den forrige verdien 0x07 har endret seg til 0x87, kopieringskommandoen ble mottatt. Trinn 6, les tilbake verdiene 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 lese kommando SKRIFT: 0x00 <<< 2 byte lese adresse SKRIFT: 0x00BULK LES 0x08 BYTES: <<< les 0 å0 0 000000000000040x0x080x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0 0x08 BYTES: <<Kontroller at skrivingen fungerte som den skal ved å hente verdiene. Adresse til DS2431, send deretter lese -kommandoen (0xf0) og adressen du vil lese fra (0x00 0x00). Det er mulig å lese hele minneområdet med en enkelt kommando. Vi leste de åtte byte vi skrev tidligere (r: 8), som returnerte de forventede verdiene. De åtte byte utover disse verdiene er ikke skrevet og returnerer 0.

Trinn 5: Konklusjon

Konklusjon
Konklusjon

Konklusjon Denne prototypen lærer om EEPROM-minne, og demonstrerer hvordan du bruker Bus Pirate med tre vanlige protokoller: 1-Wire, I2C og SPI. 3EEPROM explorer board sørger for riktige tilkoblinger til hver EEPROM, og gir en ekstern pull-up motstand for den mer krevende 1-tråds bussen med parasittdrevne komponenter. Vi kan få 3EEPROM explorer board PCB eller sett produsert på Seeed Studio. PCB er omtrent $ 10, sett er omtrent $ 15, sendt over hele verden. Vi må organisere et gruppekjøp på 10 PCB eller 20 sett for å komme i gang.

Anbefalt: