Udostępnij za pośrednictwem


Funkcja SPIMaster_Open

Nagłówek: #include <applibs/spi.h>

Otwiera i konfiguruje interfejs główny SPI do wyłącznego użytku, a także zwraca deskryptor plików do użycia w kolejnych wywołaniach.

Interfejs zostanie zainicjowany przy użyciu ustawień domyślnych: SPI_Mode_0, SPI_BitOrder_MsbFirst. Po otwarciu interfejsu można zmienić te ustawienia za pomocą funkcji SPI.

static inline int SPIMaster_Open(SPI_InterfaceId interfaceId, SPI_ChipSelectId chipSelectId, const SPIMaster_Config *config);

Parametry

  • interfaceId Identyfikator interfejsu głównego SPI do otwarcia.

  • chipSelectId Identyfikator wyboru mikroukładu do użycia z interfejsem głównym SPI.

  • config Konfiguracja interfejsu głównego SPI. Przed wywołaniem tej funkcji należy wywołać SPIMaster_InitConfig , aby zainicjować strukturę SPIMaster_Config . Ustawienia można zmienić po zainicjowaniu struktury. Argument config zawiera wszystkie ustawienia, które muszą być skonfigurowane jako część otwierania interfejsu, a które mogą nie zostać później zmienione.

Błędy

Zwraca wartość -1 w przypadku napotkania błędu i ustawia errno wartość błędu.

  • EACCES: dostęp do tego interfejsu SPI jest niedozwolony, ponieważ interfaceId parametr nie jest wymieniony w polu SpiMaster manifestu aplikacji.

Mogą być również określone inne errno błędy; takie błędy nie są deterministyczne i to samo zachowanie może nie być zachowane za pośrednictwem aktualizacji systemu.

Zwracana wartość

Zwraca opis pliku interfejsu SPI, jeśli został pomyślnie otwarty, lub -1 dla niepowodzenia, w którym to przypadku errno jest ustawiona wartość błędu. Tego deskryptora można używać ze standardem read(2) i write(2) funkcjami do obsługi transakcji z połączonym urządzeniem. Możesz również użyć SPIMaster_TransferSequential , aby uruchomić sekwencję transferów.

Wymagania dotyczące manifestu aplikacji

Aby uzyskać dostęp do poszczególnych interfejsów SPI, aplikacja musi zidentyfikować je w polu SpiMaster manifestu aplikacji.