Použití I2S v aplikacích s podporou reálného času
Azure Sphere podporuje rozhraní I2S (Inter-IC Sound).
I2S je standard rozhraní sériové sběrnice, který se používá pro propojení digitálních zvukových zařízení dohromady. Sběrnice I2S má samostatné hodiny a sériové datové signály.
Toto téma popisuje, jak používat I2S v aplikacích s podporou v reálném čase (RTApps).
Poznámka
- I2S se v současné době nepodporuje pro použití v aplikacích vysoké úrovně.
- 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 I2S na jádrech v reálném čase
Tato část popisuje možnosti I2S, které platí jenom při spuštění Azure Sphere na MT3620.
MT3620 obsahuje dvě rozhraní I2S: I2S0 a I2S1. Je možné je přidělit přiřazenému jádru v reálném čase během přidělování prostředků po spuštění systému. Každé rozhraní I2S je chráněno modulem mapování jádra, který zakazuje přístup nepřiřazeným MCU.
Modul I2S podporuje pouze podřízený režim s externími kodeky. Hlavní režim a interní kodeky nejsou podporovány. Pro externí kodeky jsou však k dispozici hlavní hodiny (I2S_MCLK) pro generování synchronizace snímků I2S (I2S_FS) a I2S Bit Clock (I2S_BCLK).
Interní zvukové kodeky a hlavní režim nejsou podporovány. Rozhraní I2S se používá ke komunikaci s externími zvukovými kodeky prostřednictvím sběrnice I2S jako podřízený I2S.
Podporují se dva formáty dat: standardní protokol I2S a protokol TDM (Time Division Multiplexing).
Dva bloky pěti kolíků jsou multiplexované mezi GPIO a I2S (I2S0:GPIO56-GPIO60, I2S1:GPIO61-GPIO65).
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žívat podřízené rozhraní I2S, musí ho aplikace RTApp uvést v části Schopnosti manifestu aplikace. Například následující příkaz přidá rozhraní I2S do seznamu prostředků, ke kterým může aplikace přistupovat:
"Capabilities": {
"I2sSubordinate": [ "I2S0" ] }
Podřízené rozhraní I2S (Inter-IC Sound) je používáno pouze aplikací RTApp. Tato funkce není dostupná pro aplikace vysoké úrovně.
Manifest aplikace Azure Sphere obsahuje další podrobnosti o manifestu aplikace.
Ukázkové aplikace I2S
Úložiště CodethinkLabs na GitHubu obsahuje řadu ukázkových aplikací, které ukazují, jak používat periferní zařízení podporovaná pro MT3620 v aplikacích Azure Sphere podporujících real-time. Ukázka I2S_RTApp_MT3620_BareMetal konkrétně ukazuje, jak začlenit periferní zařízení I2S do aplikace podporující real-time.