Używanie funkcji GPT w aplikacjach z obsługą czasu rzeczywistego
Usługa Azure Sphere obsługuje korzystanie z czasomierzy ogólnego przeznaczenia (gpt) w aplikacjach z obsługą czasu rzeczywistego.
Każdy rdzeń w czasie rzeczywistym na MT3620 obsługuje pięć gpt. Czasomierze GPT0, GPT1 i GPT3 są oparte na przerwach. Te czasomierze odliczają od wartości początkowej i twierdzą przerwanie, gdy liczba osiągnie 0. Czasomierze GPT2 i GPT4 to czasomierze działające wolno działające. Te czasomierze liczą się od wartości początkowej.
Dla czasomierzy opartych na przerwach zdefiniowano dwa tryby:
- Tryb jednostrzałowy: Czasy kończą się po zliczeniu do 0.
- Tryb automatycznego powtarzania: Czasomierz jest uruchamiany ponownie po zliczeniach do 0.
Rejestry kontroli GPT dla każdego rdzenia w czasie rzeczywistym są mapowane na adresy 0x2103_0000 za pośrednictwem 0x2103_FFFF w prywatnej pamięci rdzenia.
Aby uzyskać więcej informacji na temat używania podstawowych układów zasad grupy w czasie rzeczywistym w aplikacjach, zobacz Instrukcja obsługi interfejsu API Azure Sphere MT3620 M4.
Uwaga
System operacyjny Azure Sphere nie resetuje urządzeń peryferyjnych podczas uruchamiania. Twoje aplikacje powinny mieć pewność, że urządzenia peryferyjne są w dobrze znanym stanie podczas uruchamiania lub po ponownym uruchomieniu.
Przykładowe aplikacje gpt
W poniższych przykładowych aplikacjach pokazano, jak używać gptów na rdzeniach mt3620 w czasie rzeczywistym:
- W próbce GPT_RTApp_MT3620_BareMetal używane są dane GPT1 i GPT3.
- W próbce MT3620_RTApp_FreeRTOS_GPT są używane dane GPT0 i GPT3.