Używanie funkcji SPI w aplikacjach z obsługą czasu rzeczywistego
Usługa Azure Sphere obsługuje szeregowy interfejs peryferyjny (SPI) w trybie wzorca. SPI to szeregowy interfejs używany do komunikacji między urządzeniami peryferyjnymi i obwodami zintegrowanymi. W przeciwieństwie do I2C, SPI może być używany z bardziej złożonymi urządzeniami peryferyjnymi o wyższej prędkości.
W tym temacie opisano, jak używać funkcji SPI w aplikacjach obsługujnych w czasie rzeczywistym (RTApp). Aby uzyskać informacje na temat używania funkcji SPI w aplikacjach na wysokim poziomie, zobacz Używanie funkcji SPI w aplikacjach wysokiego poziomu.
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.
Wybór mikroukładu
Chip select zarządza połączeniem między interfejsem głównym SPI a zestawem urządzeń podrzędnych; i umożliwia interfejsowi głównej wysyłanie i odbieranie danych do każdego urządzenia podrzędnego niezależnie. Usługa Azure Sphere obsługuje ustawienia active-low i active-high dla opcji wyboru mikroukładów, a ustawieniem domyślnym jest aktywny-niski. W dowolnym momencie tylko jedna aplikacja może korzystać z każdego interfejsu głównego SPI. Aplikacja musi otworzyć interfejs główny SPI i zidentyfikować każde podłączone urządzenie podrzędne przed wykonaniem operacji odczytu i zapisu w interfejsie.
Obsługa MT3620 dla SPI na rdzeniach w czasie rzeczywistym
Po skonfigurowaniu tablicy deweloperów MT3620 możesz użyć dowolnego portu ISU jako interfejsu głównego SPI. Do każdego isu można podłączyć maksymalnie dwa urządzenia podrzędne. Jeśli używasz portu ISU jako interfejsu głównego SPI, nie możesz użyć tego samego portu co interfejs I2C lub UART.
MT3620 obsługuje transakcje SPI o częstotliwości do 40 MHz.
Mt3620 nie obsługuje równoczesnych operacji odczytu i zapisu dwukierunkowego (full-duplex) w ramach transakcji pojedynczej magistrali.
Specyfikacje SPI dla mt3620 są wymienione w mt3620 stan pomocy technicznej. Podręcznik użytkownika tablicy deweloperów MT3620 opisuje układ pinezki i funkcje okablowania.
Aby uzyskać informacje na temat rejestrowania adresów podstawowych, numerów przerwań, częstotliwości zegara, częstotliwości próbkowania i innych szczegółów dotyczących MT3620, zobacz arkusz danych MT3620 i podręcznik użytkownika MT3620 M4. jeśli pytania pozostaną, możesz poprosić o szczegółowe informacje w avnet, wysyłając Azure.Sphere@avnet.comwiadomość e-mail .
Ustawienia manifestu aplikacji
Aby korzystać z interfejsów API SPI, należy dodać SpiMaster
możliwość do manifestu aplikacji, a następnie określić każdy kontroler główny SPI do funkcji.
"Capabilities": {
"SpiMaster": [ "ISU0", "ISU1" ] }
Manifest aplikacji Azure Sphere zawiera więcej szczegółów na temat manifestu aplikacji.
Przykładowe aplikacje SPI
Repozytorium CodethinkLabs w witrynie GitHub zawiera przykładowe aplikacje, które pokazują, jak używać urządzeń peryferyjnych obsługiwanych przez MT3620 w aplikacjach obsługujących środowisko Azure Sphere w czasie rzeczywistym. W szczególności próbki SPI_RTApp_MT3620_BareMetal i SPI_SDCard_RTApp_MT3620_BareMetal pokazują, jak włączyć urządzenie peryferyjne SPI w aplikacji z obsługą czasu rzeczywistego.