FULL-C: I2C functions

Verze z 29. 11. 2021, 11:59, kterou vytvořil Adamn (diskuse | příspěvky) (Založena nová stránka s textem „ Tato stránka popisuje programovací jazyk '''FULL-C''', který je dostupný na vybraných zařízeních SDS. Některá zařízení používají SDS-C,…“)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Tato stránka popisuje programovací jazyk FULL-C, který je dostupný na vybraných zařízeních SDS. 
Některá zařízení používají SDS-C, pro který máme návody jinde na této WiKi.

Funkce pro komunikaci s rozšiřující (sandwich) deskou, pomocí sběrnice I2C

Zařízení SDS-BIG lze osadit doplňující/rozšiřující (sandwich) deskou. Většina těchto desek komunikuje přes COM3 respektive TOPB protokol; nicméně některé naopak využívají I2C sběrnici.

Desky které komunikují přes TOPB protokol totiž obsahují svůj vlastní mikroprocesor, který se stará o nějakou složitou funkci (např. obsluhu displaye, nebo nějaké komunikační sběrnice). Nicméně desky, u kterých není tato dodatečná inteligence potřebná, se do SDS-BIG připojují přes interní I2C sběrnici (konektor SC-2).

Pro zajištění naprosté univerzálnosti, je umožněno FULL-C programu bez omezení komunikovat po této I2C sběrnici. Tato sběrnice je sdílena s dalšími prvky uvnitř SDS, což nevadí, protože firmware v SDS-BIG to hlídá a správné časuje svou komunikaci versus komunikaci od FULL-C programu.

Program může použít tyto funkce:

         void SDS_I2C_write(unsigned int address, char *ptr, unsigned int len);
 unsigned int SDS_I2C_read(unsigned int address, char register, char *ptr, unsigned int len);


Základní popis

K dispozi jsou dvě funkce, jedna čistě pro zápis datových bajtů po I2C sběrnici, druhá pro čtení (se zápisem jednoho bajtu hned na začátku). Tyto funkce by měli pokrýt většinu běžných I2C periférií.

Výrobce SDS nabízí vlastní sandwich desky, které komunikují přes I2C. Nic však nebrání tomu, aby jste si mohli připojit své desky či vlastní I2C periférii (za předpokladu dodržení návrhových a provozních omezení) - kontaktujte výrobce pro detaily.


Deska SW-RELE6

První oficiální I2C rozšiřující deska pro SDS-BIG je deska SW-RELE6. Z hlediska I2C sběrnice je realizována pomocí dvou 8-bit expandérů (TCA9554A). Pomocí uvedených dvou FULL-C funkcí lze s touto deskou plně komunikovat a plně obsloužit všechny vstupní i výstupní periférii, které tam jsou osazeny.


UPOZORNĚNÍ

POZOR: podpora pro I2C komunikaci ve FULL-C je k dispozici až s verzí FULL-C 0x0C !