Návrh I / O ovladačů pro I2C moduly…

I²C je multi-master, multi-závislé, synchronizované sériové rozhraní, které umožňuje mikročipům vzájemně komunikovat. Jako komunikační komunikační standard otevřený odtok / otevřený kolektor umožňuje I²C integrovaným obvodům (IC) komunikovat, i když se používají různé napěťové lišty.

Čtyři rychlosti standardu I²C

Ve standardu I²C existují čtyři provozní rychlosti: Standardní režim: 100 kHz Rychlý režim: 400 kHz Rychlý režim plus: 1 MHz Vysokorychlostní režim: 3,4 MHz

Sběrnicové linky I²C: sériová data a sériové hodiny

Sběrnice I²C používá dvě linky: Serial Data (SDA) a Serial Clock (SCL) a všechna hlavní a podřízená zařízení I²C jsou připojena pouze těmito dvěma linkami. Každé zařízení může být vysílačem i přijímačem. Signály SDA i SCL jsou obousměrné. Kolíky SDA a SCL každého zařízení jsou otevřené výpustné kolíky. K dosažení logiky 1 jsou připojeny zvedací odpory. Logika 1 závisí na napájecím napětí; neexistuje žádné standardní napětí sběrnice.

I²C buněčná struktura

Podívejme se na strukturu I / C I / O buňky zabudované v integrovaných obvodech. Blokové schéma struktury buněk I²C I / O je znázorněno na obrázku 1.

Obrázek 1. Blokové schéma řadiče I / C I / O

Blok TX je aktivován v časovém rámci příjmu, zatímco blok RX je aktivován, zatímco přenos je aktivován v časovém rámci.VDD1 a VDD2 jsou dvě různé napěťové lišty, na kterých pracuje hlavní a podřízený. VDD1 je zdroj čipu pro interní procesy a VDD2 je napájecí napětí používané externím systémem. Pro podporu různých napěťových kolejnic je pro převod signálů z jednoho napájecího napětí na druhé zapotřebí přepínač úrovně.

Obvod vysílače v I²C modulech

Blokové schéma obvodu vysílače je znázorněno na obrázku 2.

Obrázek 2. Blokové schéma vysílače

A je datový signál, který bude vysílán na pinu SDA / SCL. TLZ je třístavová kontrola během vypnutí VDD1. Úroveň TZ se změní z VDD1 na VDD2, aby se povolila výstupní otevřená odtoková vyrovnávací paměť pro A_OUT. Pokud je VDD1 úmyslně nebo neúmyslně uzavřen během provozu systému, zatímco je VDD2 stále aktivní, je aktivační signál TZ nízký nebo většinou nejistý. To může povolit výstupní vyrovnávací paměť na A_OUT. Signál TLZ se používá jako bezpečnostní mechanismus. TLZ se při vypnutí sníží, což zesílí signál TZ. V tomto okamžiku již není výstupní vyrovnávací paměť aktivní. Otevřená vypouštěcí podložka bude ve stavu tří stavů se zavřeným VDD1. Další informace o případech použití, výhodách a aplikacích používání vyrovnávací paměti I²C najdete v bílé knize AAC, kdy použít vyrovnávací paměť I²C.

Obvod přijímače v I²C modulech

Blokové schéma obvodu přijímače je znázorněno na obrázku 3.

Blokové schéma přijímače

Obrázek 3. Blokové schéma přijímače

Obvod přijímače je aktivován signálem RX_EN. TLZ má stejnou funkcionalitu jako v bloku vysílače. Signál HSMODE umožňuje vysokorychlostní režim Signál RX_EN je na úrovni posunuté z VDD1 na VDD2, aby se umožnilo ukládání do vyrovnávací paměti, která přijímá signál Y_IN. Řadič úrovně poté posune tlumený signál Y_IN na napěťovou lištu VDD1.

Použijte filtr závady

Signály I²C jsou náchylné k šumu a zkreslení. Ve výsledku potřebujete filtr chyb, který odfiltruje všechny nežádoucí chyby a umožní průchod pouze platných signálů. Ve standardním / rychlém režimu

Návrh poruchového filtru

Obrázek 4. Návrh poruchového filtru

Diagram časování filtru poruch

Obrázek 5. Diagram časování filtru poruch

Časová konstanta RC oddaluje průchod signálů a potlačuje jakoukoli poruchu. Kombinace R1, C1, R2, C2 určuje šířku pulzu poruch, které mají být potlačeny. Podle specifikací I²C je přijímač ve standardním a rychlém režimu

Pull-up rezistory v konfiguraci s otevřeným výbojem

Výstupní vyrovnávací paměť na linkách I²C je v konfiguraci s otevřeným odtokem, o které podrobněji pojednáváme v našem článku o hardwaru požadovaném pro sběrnici I²C. Jakékoli zařízení I²C může fungovat pouze na nízké úrovni na těchto linkách I²C nebo ve třech případech. Aby se dosáhlo vysoké logické úrovně, je třeba je vytáhnout na napěťovou lištu během třístavového stavu. Obr.

Otevřete konfiguraci odtoku

Obr. Otevřete konfiguraci odtoku

Doba náběhu závisí na časové konstantě pull-up rezistoru a parazitní kapacitě a je obecně delší než doba pádu, protože pokles je řízen zařízením (tj. NMOS). Proto jsou pro různé pracovní rychlosti vyžadovány různé zdvihací odpory. Další informace o tahových odporech a kapacitních zatíženích najdete v našem článku o matematice I²C, kde jsou uvedeny kapacitní a odporové.

Více o autobusu I²C