Návrhy návrhu aplikací jádra 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.
Aplikace jádra v reálném čase (RT) běží na holých počítačích nebo s operačním systémem v reálném čase (RTOS) na jádrech v reálném čase. Řada doporučení návrhu pro aplikace jádra HL platí také pro navrhování aplikací s RT jádry. Toto téma popisuje další návrhy návrhu, které je potřeba zvážit při návrhu aplikací jádra RT.
- Použijte časovač watchdog: Doporučujeme povolit a implementovat časovač watchdog MT3620, abyste mohli rozpoznat zablokování a implementovat správnou logiku obnovení. Podrobnosti najdete v tématu Použití časovače watchdog v aplikaci RTApp. Může to být také důležitý bod, kdy aplikace RT může signalizovat aplikaci hl-core (například prostřednictvím poštovní schránky mezi jádry), že se něco nepovedlo, aby mohla provést příslušná akce, například resetování zařízení. To lze provést následujícími způsoby:
- Restartujte zařízení voláním
PowerManagement_ForceSystemReboot
funkce z aplikace HL-core. Podívejte se na úrovně restartování na zařízení. - Obejití rozhraní API jádra HL provedením resetování hardwaru prostřednictvím vyhrazené funkce GPIO s kolíky řízení spotřeby MT3620 (PMU_EN, EXT_PMU_EN nebo SYSRST_N). Další informace o PMU_EN a EXT_PMU_EN najdete v tématu Aspekty Power Down. Resetování hardwaru s SYSRST_N obvykle zahrnuje návrh schémat zařízení s až třemi (jedním na každé jádro) vyhrazenými objekty GPI, připojenými přes diody a RC filtry na SYSRST_N pin zařízení. Provedení hardwarového resetování umožňuje nezávislou akci z libovolné aplikace hl-core a RT-core, pokud návrh vyžaduje deterministické obnovení z jakékoli aplikace běžící na jakémkoli jádru.
- Restartujte zařízení voláním
Poznámka:
Velmi pečlivě zvažte použití objektů zásad skupiny k resetování zařízení z aplikace jádra RT, protože nezamýšleným účinkem programování nebo návrhu této aplikace (například průběžné resetování zařízení) může zabránit tomu, aby zařízení přijímalo operační systém a aktualizace aplikací.
- Implementujte komunikaci mezi jádry v projektech, které kombinují aplikace HL-core a RT-core: I když není explicitně potřeba, vždy se doporučuje implementovat minimální výměnu komunikace mezi aplikacemi HL-core a RT-core. Další informace naleznete v tématu Komunikace s aplikací podporující v reálném čase. Kromě běžné výměny dat, když je komunikace mezi jádry explicitně navržená jako součást celkové architektury aplikace, je užitečná a důležitá, že se obě strany synchronizují s ohledem na stav jednotlivých stran, aby bylo možné mezi sebou spravovat lepší celkový stav zařízení (viz ukázka komunikace mezi jádry).
Další referenční informace o vývoji aplikací jádra RT, včetně ovladačů a ukázek pro použití periferních zařízení a funkcí MT3620, najdete tady:
- Dokumentace k MediaTek MT3620
- Ovladač MediaTek MT3620 M4 a vzorový kód aplikace v reálném čase
- Ovladače pro jádra v reálném čase Azure Sphere MT3620 (CM4) codethink Labs – Tyto ovladače byly vyvinuty pomocí snadno použitelných rozhraní (API), která úzce napodobují ty, které jsou k dispozici pro aplikace jádra HL.
- Ukázky pro jádra Azure Sphere MT3620 v reálném čase (CM4) podle Codethink Labs