Jste zde

PCA967x GPIO expandér pro sběrnici I2C

GPIO je zkratka pro General Purpose Input/Output, hojně se vyskytuje na poli embedded systémů.  GPIO jsou piny, které mohou být konfigurovány jako vstupy i jako výstupy. Pokud jsou nastaveny jako výstupy, můžete do nich libovolně zapisovat (výstupní registr si uchovává nastavenou logickou úroveň do doby další změny). Pokud je pin nastaven jako vstupní, zjistíte hodnotu stavu vstupu přečtením logické hodnoty jeho interního registru. Obvody PCA967x jsou GPIO expandéry určené pro sběrnici I2C, a to důležité, rovnou pro verzi Fast-mode Plus (Fm+), z toho plyne maximální dostupná rychlost až 1Mbit (resp. 1MHz) a jedná se o světově nejrychlejší expandéry pro sběrnici I2C. Velkou výhodou je, že tyto obvody jsou zpětně kompatibilní s verzí Fast-mode a Standard I2C.

Sběrnice I2C:

I2CI2C je synchronní, sériová, Master-slave sběrnice, která využívá 7 nebo 10bitové adresace obvodů. Pro komunikaci se používá dvoudrátové vedení připojené na vývody označené jako SDA (datový a adresní I/O) a SCL (hodinový I/O). Oba tyto vývodu musí být na sběrnici připojeny přes Pull-up rezistory. Obvod, který je konfigurován jako Master se stará o generování hodin přičemž master obvodů může být na jedné sběrnici různý počet (hodiny mohou být však jen jedny v jednu chvíli). Obecně je množství obvodů připojených na společnou sběrnici limitován adresním prostorem, ale hlavně maximální povolenou kapacitou sběrnice (více obvodů – větší kapacita), která byla u referenčního modelu sběrnice I2C zvolena na hodnotu 400pF. I2C byla navržena společností Philips jako sběrnice pro vzájemné spojení obvodů v základních deskách, embedded systémech a mobilních telefonech. Systém adresace umožňoval signifikantní úsporu místo na deskách plošných spojů.

Tyto expandéry tedy obsahují řídící jednotku sběrnice I2C, která zaručuje správnou adresaci portu a samotného obvodu. Dále jsou vybaveny logikou přerušení, funkcí reset (i softwarovou) a generátorem PoR (Power-on reset), který celé zařízení správně zinicializuje.

NXPRodinu obvodů PCA967x vyrábí společnost NXP založená firmou Philips, hlavním distributorem je pak německý gigant Spoerle založený v roce 1967 jako distributor elektronických součástek a komponentů dnes již s více jak 1200 zaměstnanci.

Vlastnosti obvodů PCA976x:

  • Obvody obsahují 8 až 16bitové I/O porty, které jsou po resetu nastaveny jako vstupní
  • Maximální rychlost sběrnice: 1MHz
  • Maximální proud pinu SDA byl zvýšen na 30mA z původních 3mA, díky tomu může celá sběrnice pracovat až do velikosti kapacity 4000pF
  • Maximální proud výstupu: 25mA
  • 64 programovatelných slave adres používající adresních pinů (postup adresace obvodů je uveden v datasheetech)
  • Výstup přerušení INT aktivní v nule
  • Tři způsoby resetování obvodu: power-on-reset, pin reset (aktivní v nule) nebo příkaz reset z nadřazeného systému
  • Rozsah pracovního napětí: 2.3 to 5.5 V,
  • Nízký proud ve stavu Standby: 10 μA
  • Pracovní rozsah teplot: -40°C až +85°C
  • Široký rozsah dostupných pouzder: SO, TSSOP, SSOP, QSOP, DHVQFN, HVQFN a DIP

Blokové schéma obvodu PCA9673:

Blokové schéma PCA9673

Aplikace:

  • Řízení LED
  • Kontrola a řízení serverů
  • Průmyslové aplikace
  • Lékařské vybavení
  • Automaty PLC (Programmable Logic Controllers)
  • Mobilní telefony

SpoerleRodina obvodů PCA967x rozšiřuje nabídku expandérů GPIO společnosti NXP pro sběrnici I2C díky její podpoře protokolu Fast-mode Plus, a zároveň slouží, jako zmodernizovaná náhrada obvodů PCF8574(A) a PCF8575. To se týká obvodů PCA9674(A) a PCA9675, které jsou také pinově kompatibilní (viz. následující tabulka, Drop-in replacement).

Rodina obvodů PCA967x

Hlavní vylepšení:

Jak jsem se již zmínil hlavním vylepšením je zrychlení celé komunikace po sběrnici, a to z 400kHz na rovný 1MHz, a zvýšení proudu pinem SDA na 30mA namísto původních 3mA. Díky této rychlosti lze využít softwarového PWM k plynulému řízení jasu LED a díky vyššímu proudu datového pinu lze připojit více zařízení na stejnou sběrnici bez použití bufferu.
 
PCA967x vynikají svojí nízkou spotřebou včetně I/O portu který je však schopen dodat 25mA do každého pinu. Díky tomu může přímo budit téměř jakoukoliv LED. Také podporují vyšší proud celým pouzdrem, který je 200mA u 8bitové verze a 400mA u verze se 16bity, mimo lze zařízení adresovat až 64 adresami (namísto původních 8). To znamená, že všechny LED mohou být zapnuté naráz a více stejných obvodů může být přítomno na stejné sběrnici bez rizika konfliktu adres.

Výstup přerušení může být použit pro notifikování mikroprocesoru, že vstupy portu změnili svoji hodnotu nebo jsou na sběrnici příchozí data. Pro jednoduší přechod ze starších verzí expandérů GPIO (viz. výše) jsou některé obvody rodiny PCA967x pinově kompatibilní.

Závěr:

Malé, levné a výkonné. Tak by se dali označit tyto expandéry linky I2C. Jejich největší výhodou je bezesporu rychlost celé komunikace, k tomu připočtěte proud jaký dokáže poskytnout každý výstup, široký rozsah napájecích napětí a máme zde obvody hodící se jako kontrolér LED displejů, klávesnic a do spousty dalších aplikací, kde je žádoucí ušetření místa a výsoká rychlost portu.

Odkazy & Dowload:

Hodnocení článku: