Sdílet prostřednictvím


Použití PWM v aplikacích podporujících v reálném čase

Důležité

Toto je dokumentace k Azure Sphere (starší verze). Azure Sphere (starší verze) se vyřazuje 27. září 2027 a uživatelé musí do této doby migrovat do Azure Sphere (integrované). K zobrazení dokumentace k Azure Sphere (integrované) použijte selektor verzí umístěný nad obsahem.

Azure Sphere podporuje modulaci šířky impulsů. Modulace s šířkou impulsu se dosahuje různou zátěžovým cyklem (poměrem času k off-time) impulsovaného digitálního signálu. Modulátory s šířkou impulsu (PWM) se používají v široké škále aplikací, jako je digitální ovládání motoru, komunikace a digitální-analogová konverze.

Toto téma popisuje, jak používat PWM v aplikacích podporujících v reálném čase (RTApp). Informace o používání PWM v aplikacích vysoké úrovně naleznete v tématu Použití PWM v aplikacích vysoké úrovně.

Poznámka:

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

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

Tato část popisuje možnosti PWM, které platí jenom při spouštění Azure Sphere v MT3620.

Funkce PWM, které podporuje MT3620, jsou uvedeny ve stavu podpory MT3620. Uživatelská příručka vývojové desky MT3620 popisuje funkce připnutí a připnutí.

MT3620 má 12 kanálů PWM identifikovaných PWM0-PWM11. Jsou uspořádané do 3 skupin 4 kanálů. Každá skupina je přidružena k kontroleru PWM (PWM-CONTROLLER-0, PWM-CONTROLLER-1, PWM-CONTROLLER-2). PWM kanály a GPIO špendlíky GPIO0 až GPIO11 mapují na stejné kolíky na MT3620. Pokud vaše aplikace používá kontroler PWM všechny kolíky přidružené k danému kontroleru jsou přiděleny pro použití jako výstupy PWM. Pro GPIO se nedá použít žádná z nich.

Informace o registraci základních adres, přerušení čísel, frekvence hodin, vzorkování a dalších podrobnostech o MT3620 najdete v datovém listu MT3620 a uživatelské příručce MT3620 M4. Pokud dotazy zůstanou, můžete požádat o podrobnosti z Avnetu e-mailemAzure.Sphere@avnet.com.

Hardware PWM lze nakonfigurovat tak, aby používal jednu ze tří hodinových frekvencí: 32 KHz, 2 MHz (XTAL/13) nebo 26 MHz (XTAL). V jádrech v reálném čase (RT) může aplikace v reálném čase (RTApp) vybrat, které hodiny se mají použít jako základ. Uživatelsky definované základní frekvence nejsou podporovány. Aplikace však může generovat frekvence signálů, které jsou odvozeny z vybrané základní frekvence. Příklad najdete v ukázkové aplikaci PWMAudio v galerii Azure Sphere.

Nastavení manifestu aplikace

Pokud chcete použít PWM v aplikaci RTApp, přidáte Pwm do manifestu aplikace funkci a určíte kontrolery PWM, které budou použity v aplikaci. Například následující řádek určuje řadič PWM 0 pro použití v aplikaci RTApp, která cílí na referenční vývojové desky MT3620 (RDB):

"Capabilities": {
   "Pwm": [ "PWM-CONTROLLER-0" ] }

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

Ukázkové aplikace PWM

Úložiště CodethinkLabs na GitHubu obsahuje řadu ukázkových aplikací, které ukazují, jak používat podporovaná periferní zařízení MT3620 v aplikacích s podporou Azure Sphere v reálném čase. Konkrétně ukázka PWM_RTApp_MT3620_BareMetal ukazuje, jak začlenit periferní zařízení PWM do aplikace podporující v reálném čase.

Projekt PWMAudio ukazuje použití jader v reálném čase ke generování zvuku PWM (Pulse Width Modulation). Tento projekt je součástí galerie Azure Sphere, kolekce nepotřebných skriptů, nástrojů a funkcí.