Sdílet prostřednictvím


Použití I2C v aplikacích s podporou reálného času

Azure Sphere podporuje Inter-Integrated Circuit (I2C) v hlavním režimu. I2C je sériová sběrnice, která připojuje méně rychlá periferní zařízení k mikrořadičům. I2C používá model s více hlavními nebo více podřízenými, kde hlavní zařízení řídí sadu podřízených zařízení. I2C se často používá s periferními zařízeními, která vyžadují pouze jednoduchou komunikaci s mikrořadičem, jako jsou ovládací prvky nastavení, vypínače a senzory.

Toto téma popisuje, jak používat I2C v aplikacích s podporou v reálném čase (RTApps). Informace o použití I2C v aplikacích vysoké úrovně najdete v tématu Použití I2C v aplikacích vysoké úrovně.

Poznámka

Operační systém Azure Sphere nerestartuje periferní zařízení při spuštění. Vaše aplikace by měly zajistit, aby periferní zařízení byla při spuštění nebo po restartování ve známém funkčním stavu.

Podpora MT3620 pro I2C na jádrech v reálném čase

Specifikace I2C pro čip MT3620 jsou uvedeny ve stavu podpory MT3620. Uživatelská příručka vývojové desky MT3620 popisuje rozložení kolíků a funkce pro zapojení.

Při konfiguraci vývojového panelu MT3620 můžete použít jakýkoli blok ISU jako hlavní rozhraní I2C. Pokud jako hlavní rozhraní I2C použijete blok ISU, nemůžete použít stejný blok jako rozhraní SPI nebo UART.

Desetibitové adresy podřízených zařízení nejsou podporovány v MT3620; Podporují se pouze 7bitové adresy. MT3620 podporuje rychlosti sběrnice 100 kHz, 400 KHz a 1 MHz, ale ne 3,4 MHz. Čtení I2C bez bajtu nejsou podporována v MT3620.

Základní adresy registru, čísla přerušení, frekvence hodin, vzorkovací frekvence a další podrobnosti o MT3620 najdete v datovém listu MT3620 a uživatelské příručce MT3620 M4; pokud otázky přetrvávají, můžete si vyžádat podrobnosti od avnetu Azure.Sphere@avnet.come-mailem .

Nastavení manifestu aplikace

Pokud chcete použít I2C, musí ho aplikace RTApp uvést v části Schopnosti manifestu aplikace. Například následující řádek rezervuje hlavní rozhraní I2C na ISU0 na čipu MT3620:

"Capabilities": {
   "I2cMaster": [ "ISU0" ] }

Manifest aplikace Azure Sphere obsahuje další podrobnosti o manifestu aplikace.

Ukázkové aplikace I2C

Úložiště CodethinkLabs na GitHubu obsahuje řadu ukázkových aplikací, které ukazují, jak používat periferní zařízení podporovaná pro MT3620 v Azure Sphere RTApps. Konkrétně I2C_RTApp_MT3620_BareMetal ukázka ukazuje, jak používat periferní zařízení I2C v aplikaci s podporou reálného času.