Obsah:
Video: Sniffer Arduino I2C: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
I2C je sériový protokol používaný ke komunikaci mikrokontroléru s externími periferiemi připojenými ke stejnému obvodu. Každá periferie musí mít jedinečné ID číslo, kterému se říká adresa, které se používá k identifikaci zamýšleného příjemce dané zprávy. Tyto adresy jsou přiřazeny výrobcem zařízení a většinu času nelze změnit. Sniffer skenuje všechny možné adresy a hledá připojená zařízení a hlásí ta, která najde. To pomáhá identifikovat neoznačené čipy, protože adresu lze poté googlit pro další informace týkající se čipu.
Toto zařízení napodobuje na Arduino UNO chování skriptu Raspberry Pi i2cdetect, očichává všechny možné adresy i2c, hledá připojená zařízení a tiskne výsledky pěkně na LCD obrazovku 16x02.
Aby se na obrazovku vešlo vše, jsou nad výsledky vytištěny vysoké i nízké části adresy, přičemž vysoká část je vyznačena tučným písmem. Dvě tlačítka umožňují navigaci mezi adresami a zobrazují 16 adres najednou. V případě detekce zařízení bude vytištěno W, aby se zobrazilo jako adresa pro zápis, a R by se zobrazilo v případě, že se jedná o adresu pro čtení. V případě, že na dané adrese není nic detekováno, zobrazí se na obrazovce spojovník (-).
Krok 1: Materiály
Možnost 1
1 x Arduino UNO
1 x 16x02 LCD displej
1x 10K potenciometr
1x odpor 330 ohmů
3x tlačítka
Propojovací kabely
1x řadič úrovně I2C (není na obrázku materiálů)
Možnost 2
1 x Arduino UNO
Štít klávesnice LCD (tlačítka na štítu nebudou použita)
3x tlačítka
Propojovací kabely
1x řadič úrovně I2C (není na obrázku materiálů)
Možnost 2 je ta, která bude postavena, protože to je to, co jsem měl v tuto chvíli po ruce. Přepínač úrovně je důležitou součástí obvodu, protože v dnešní době většina zařízení používá logiku 3,3 V a 5 V od Arduina je poškozuje.
(Na obrázcích není přeškrtnutý materiál vyžadován.)
Krok 2: Okruh
Obvod je docela přímočarý, používá standardní pinout pro příklady Arduino pro LCD, výchozí piny pro I2C a 3 náhradní piny pro tlačítka.
V případě, že používáte štít klávesnice LCD, změní se vývod pro LCD, ale to je již zahrnuto v kódu. Tlačítka štítu klávesnice LCD se nepoužívají, protože vyžadují analogový způsob dotazování, který narušuje kompatibilitu mezi dvěma možnými implementačními obvody (štít a samostatný LCD)
Krok 3: Kód
V případě, že je použit štít klávesnice LCD, #define LCD_SHIELD musí být na začátku náčrtu ponechán bez komentáře. V opačném případě ho komentujte a použijte první diagram.
Krok 4: Závěry
Pro testování kódu a obvodu byl použit čip BQ32000 RTC a akcelerometr MMA8452Q. Jak je vidět na obrázcích, zařízení detekuje 4 adresy: 0x3A a 0xD0 jako adresy pro zápis a 0x3B a 0xD1 jako adresy pro čtení. Tato adresa odpovídá testovacím zařízením, takže kód funguje.
Chtěl bych poděkovat laskavým dívkám z Beijing Makerspace, Fu Yao a Liu Xin, že mi pomohly získat materiály potřebné pro testování tohoto projektu v tak krátkém čase.
Doporučuje:
Arduino UNO Logic Sniffer: 8 kroků (s obrázky)
Arduino UNO Logic Sniffer: Tento projekt začal jako jednoduchý experiment. Během svého výzkumu nad datovým listem ATMEGA328P pro jiný projekt jsem našel něco docela zajímavého. Jednotka zachycení vstupu Timer1. Umožňuje mikrokontroléru našeho Arduino UNO detekovat signál
LCD displej I2C / IIC - Použijte SPI LCD na I2C LCD displej pomocí modulu SPI až IIC s Arduino: 5 kroků
LCD displej I2C / IIC | Použijte SPI LCD na I2C LCD displej pomocí modulu SPI až IIC s Arduino: Ahoj lidi, protože normální SPI LCD 1602 má příliš mnoho vodičů na připojení, takže je velmi obtížné propojit jej s arduino, ale na trhu je k dispozici jeden modul, který může převést SPI displej na IIC displej, takže pak potřebujete připojit pouze 4 vodiče
LCD displej I2C / IIC - Převeďte SPI LCD na I2C LCD displej: 5 kroků
LCD displej I2C / IIC | Převeďte SPI LCD na I2C LCD displej: použití spi lcd displeje vyžaduje příliš mnoho připojení, což je opravdu těžké, takže jsem našel modul, který dokáže převést i2c lcd na spi lcd, takže můžeme začít
Snorkel Sniffer: 4 kroky
Snorkel Sniffer: Dveře byly během letu zavřené a stejně jako mnoho jiných podobných letů vás přemůže ohromná ospalost. Když jsme vybírali daně, probudila mě vzhůru žena před námi křičící „pomozte mu!“" pomozte mu !!!! " "
Znakový adaptér LCD I2c (příklad připojení I2c): 12 kroků (s obrázky)
Adaptér Character LCD I2c (Příklad připojení I2c): Dělám schéma připojení pro adaptér i2c pro zobrazení znaků. Zkontrolujte aktualizace na mém webu. Nyní přidám také schéma zapojení kabeláže, abych použil původní knihovnu, nikoli moji rozeklanou. Knihovna LiquidCrystal Arduino pro znakové LCD displeje, vidlicový projektor