Indholdsfortegnelse:
Video: Arduino I2C Sniffer: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
I2C er en seriel protokol, der bruges til at kommunikere en mikrokontroller med eksterne perifere enheder forbundet til det samme kredsløb. Hver periferiudstyr skal have et unikt ID -nummer kaldet adresse, der bruges til at identificere det som den tiltænkte modtager af en given meddelelse. Disse adresser tildeles af enhedsproducenten, og de fleste gange kan de ikke ændres. En sniffer scanner alle mulige adresser på udkig efter tilsluttede enheder og rapporterer dem, den finder. Dette hjælper med at identificere umærkede chips, da adressen kan googles for mere information om chippen.
Denne enhed efterligner på en Arduino UNO opførslen af Raspberry Pi i2cdetect -scriptet, snuser alle mulige i2c -adresser på udkig efter tilsluttede enheder og udskriver resultaterne pænt på en 16x02 LCD -skærm.
For at passe alt på skærmen udskrives både de høje og lave dele af adressen over resultaterne, den høje del er med et fed skrift. To trykknapper giver mulighed for at navigere mellem adresserne og viser 16 adresser ad gangen. Hvis en enhed opdages, udskrives W for at vise den som en skriveadresse, og R ville blive vist, hvis det er en læseadresse. Hvis der ikke registreres noget på den adresse, vises en bindestreg (-) på skærmen.
Trin 1: Materialer
Mulighed 1
1 x Arduino UNO
1 x 16x02 LCD -skærm
1x 10K potentiometer
1x 330 ohm modstand
3x trykknapper
Jumper kabler
1x I2C niveauskifter (ikke på materialebilledet)
Mulighed 2
1 x Arduino UNO
LCD -tastaturskærm (knapperne på skjoldet bruges ikke)
3x trykknapper
Jumper kabler
1x I2C niveauskifter (ikke på materialebilledet)
Mulighed 2 er den, der skal bygges, fordi det var det, jeg havde lige ved hånden i øjeblikket. Niveauskifteren er en vigtig del af kredsløbet, da de fleste enheder i dag bruger 3.3V logik, og 5V fra Arduino skader dem.
(På billederne er det overstreget materiale ikke påkrævet.)
Trin 2: Kredsløb
Kredsløbet er ret lige frem, ved hjælp af standard pinout til Arduino -eksemplerne til LCD'et, standardstifterne til I2C og 3 ekstra ben til trykknapperne.
Hvis du bruger LCD -tastaturskærmen, ændres pinout for LCD'et, men det overvejes allerede inden for koden. LCD -tastaturets skærmknapper bruges ikke, fordi de kræver en analog afstemningsmetode, der bryder kompatibiliteten mellem de to mulige implementeringskredsløb (Shield og stand alone LCD)
Trin 3: Kode
Hvis LCD -tastaturskærmen bruges, skal #define LCD_SHIELD efterlades ukommenteret i begyndelsen af skitsen. Ellers kan du kommentere det for at bruge det første diagram.
Trin 4: Konklusioner
Til test af koden og kredsløbet blev der brugt en BQ32000 RTC -chip og et MMA8452Q -accelerometer. Som det kan ses på billederne, registrerer enheden 4 adresser: 0x3A og 0xD0 som skriveadresser og 0x3B og 0xD1 som læste adresser. Disse adresser svarer til testenhederne, så koden fungerer.
Jeg vil gerne takke de venlige piger i Beijing Makerspace, Fu Yao og Liu Xin, for at have hjulpet mig med at få de nødvendige materialer til at teste dette projekt med så kort varsel.
Anbefalede:
Arduino UNO Logic Sniffer: 8 trin (med billeder)
Arduino UNO Logic Sniffer: Dette projekt startede som et simpelt eksperiment. Under min undersøgelse af ATMEGA328P's datablad til et andet projekt fandt jeg noget ret interessant. Timer1 Input Capture Unit. Det giver vores Arduino UNOs mikrokontroller mulighed for at registrere et signal
Particle Sniffer: 6 trin (med billeder)
Particle Sniffer: Mens jeg arbejdede med de tidligere projekter om PM2.5 -vurdering, bemærkede jeg ulempen ved ikke at kunne lokalisere punktkilderne til forurening af små partikler. De fleste prøver fra kommunerne og satellitbilleder indsamler brede kilder, der ikke
I2C / IIC LCD -skærm - Brug et SPI LCD til I2C LCD Display Brug SPI til IIC modul med Arduino: 5 trin
I2C / IIC LCD -skærm | Brug en SPI LCD til I2C LCD -skærmen Brug af SPI til IIC -modulet med Arduino: Hej fyre, da en normal SPI LCD 1602 har for mange ledninger at tilslutte, så det er meget svært at grænseflade det med arduino, men der er et modul på markedet, som kan konverter SPI -skærm til IIC -skærm, så du skal kun tilslutte 4 ledninger
I2C / IIC LCD -skærm - Konverter en SPI LCD til I2C LCD Display: 5 trin
I2C / IIC LCD -skærm | Konverter en SPI LCD til I2C LCD Display: Brug af spi lcd display har brug for for mange forbindelser til at gøre, hvilket er virkelig svært at gøre, så jeg fandt et modul, der kan konvertere i2c lcd til spi lcd, så lad os komme i gang
Snorkel Sniffer: 4 trin
Snorkel Sniffer: Dørene var lukkede på flyvningen, og ligesom mange andre lignende flyvninger overvinder en overvældende døsighed dig. Da vi beskat, blev jeg vågnet af en kvinde foran os, der skreg " hjælp ham! &Quot; " hjælp ham !!!! " "