Simple Peripheral Bus (SPB)
Übersicht über die SPB-Technologie (Simple Peripheral Bus).
Für die Entwicklung von Simple Peripheral Bus (SPB) benötigen Sie die folgenden Header:
Das Programmierhandbuch finden Sie unter Simple Peripheral Bus (SPB).
Enumerationen
SPB_MULTI_SPI_TRANSFER_MODE Die SPB_MULTI_SPI_TRANSFER_MODE-Enumeration gibt einen Typ der Multi-SPI-Übertragung an, die von einem Bustreiber für die Kommunikation mit einem Peripheriegerät verwendet werden soll. |
SPB_REQUEST_SEQUENCE_POSITION Die SPB_REQUEST_SEQUENCE_POSITION-Enumeration gibt die Position einer E/A-Anforderung in der Liste der Übertragungen für eine E/A-Übertragungssequenz an. |
SPB_REQUEST_TYPE Die SPB_REQUEST_TYPE-Enumeration gibt den Typ des SPB-Vorgangs an, den ein Client anfordert. |
SPB_TRANSFER_BUFFER_FORMAT Die SPB_TRANSFER_BUFFER_FORMAT-Enumeration gibt das Format des Puffers an, der durch eine SPB_TRANSFER_BUFFER-Struktur beschrieben wird. |
SPB_TRANSFER_DIRECTION Die SPB_TRANSFER_DIRECTION-Enumeration beschreibt die Richtung (Lese- oder Schreibzugriff) einer einzelnen Übertragung in einer E/A-Übertragungssequenz. |
SpbIoctl Definiert Werte, um die Typ-E/A-Steuerelementanforderung anzugeben. |
Functions
EVT_SPB_CONTROLLER_LOCK Die EvtSpbControllerLock-Ereignisrückruffunktion eines SPB-Controllertreibers sperrt den SPB-Controller für den Zugriff auf ein einzelnes Zielgerät auf dem Bus. |
EVT_SPB_CONTROLLER_OTHER Die EvtSpbControllerIoOther-Ereignisrückruffunktion eines SPB-Controllertreibers verarbeitet Geräte-E/A-Steuerelementanforderungen, die nicht von anderen Ereignisrückruffunktionen oder von der SPB-Frameworkerweiterung (SpbCx) verarbeitet werden. |
EVT_SPB_CONTROLLER_READ Die EvtSpbControllerIoRead-Ereignisrückruffunktion eines SPB-Controllertreibers liest Daten vom angegebenen Zielgerät in die Puffer, die mit der Leseanforderung bereitgestellt werden. |
EVT_SPB_CONTROLLER_SEQUENCE Die EvtSpbControllerIoSequence-Ereignisrückruffunktion eines SPB-Controllertreibers führt eine Sequenz von Datenübertragungen zwischen dem angegebenen Zielgerät und den Puffern aus, die mit der Sequenzanforderung bereitgestellt werden. |
EVT_SPB_CONTROLLER_UNLOCK Die EvtSpbControllerUnlock-Ereignisrückruffunktion eines SPB-Controllertreibers entsperrt den SPB-Controller, der durch einen vorherigen Aufruf der EvtSpbControllerLock-Ereignisrückruffunktion gesperrt wurde. |
EVT_SPB_CONTROLLER_WRITE Die EvtSpbControllerIoWrite-Ereignisrückruffunktion eines SPB-Controllertreibers schreibt Daten aus den Puffern, die mit der Schreibanforderung bereitgestellt werden, auf das angegebene Zielgerät. |
EVT_SPB_TARGET_CONNECT Die EvtSpbTargetConnect-Ereignisrückruffunktion eines SPB-Controllertreibers öffnet eine Verbindung mit einem Zielgerät im Bus. |
EVT_SPB_TARGET_DISCONNECT Die EvtSpbTargetDisconnect-Ereignisrückruffunktion eines SPB-Controllertreibers schließt eine Verbindung mit einem Zielgerät, das zuvor durch einen Aufruf der EvtSpbTargetConnect-Ereignisrückruffunktion des Treibers geöffnet wurde. |
PwmParsePinPath Analysiert einen Pinpfad unter dem PWM-Controllernamespace (Pulse Width Modulation), um dessen Format zu überprüfen und die Pinnummer zu extrahieren. |
SPB_CONNECTION_PARAMETERS_INIT Die SPB_CONNECTION_PARAMETERS_INIT-Funktion initialisiert eine SPB_CONNECTION_PARAMETERS-Struktur. |
SPB_CONTROLLER_CONFIG_INIT Die SPB_CONTROLLER_CONFIG_INIT-Funktion initialisiert eine SPB_CONTROLLER_CONFIG-Struktur. |
SPB_MULTI_SPI_READ_TRANSFER_INIT Die SPB_MULTI_SPI_READ_TRANSFER_INIT-Funktion initialisiert eine SPB_MULTI_SPI_READ_TRANSFER-Struktur. |
SPB_MULTI_SPI_TRANSFER_INIT Die SPB_MULTI_SPI_TRANSFER_INIT-Funktion initialisiert eine SPB_MULTI_SPI_TRANSFER-Struktur. |
SPB_MULTI_SPI_WRITE_TRANSFER_INIT Die SPB_MULTI_SPI_WRITE_TRANSFER_INIT-Funktion initialisiert eine SPB_MULTI_SPI_WRITE_TRANSFER-Struktur. |
SPB_REQUEST_PARAMETERS_INIT Die SPB_REQUEST_PARAMETERS_INIT-Funktion initialisiert eine SPB_REQUEST_PARAMETERS-Struktur. |
SPB_TRANSFER_DESCRIPTOR_INIT Die SPB_TRANSFER_DESCRIPTOR_INIT-Funktion initialisiert eine SPB_TRANSFER_DESCRIPTOR-Struktur. |
SPB_TRANSFER_LIST_ENTRY_INIT_BUFFER_LIST Die SPB_TRANSFER_LIST_ENTRY_INIT_BUFFER_LIST-Funktion gibt eine SPB_TRANSFER_LIST_ENTRY-Struktur zurück, die initialisiert wird, um eine Punktsammlungsliste zu beschreiben. SPB_TRANSFER_LIST_ENTRY_INIT_BUFFER_LIST-Funktion gibt eine SPB_TRANSFER_LIST_ENTRY-Struktur zurück, die initialisiert wird, um eine Punktsammlungsliste zu beschreiben. |
SPB_TRANSFER_LIST_ENTRY_INIT_MDL Die SPB_TRANSFER_LIST_ENTRY_INIT_MDL-Funktion gibt eine SPB_TRANSFER_LIST_ENTRY-Struktur zurück, die initialisiert wird, um eine MDL zum Beschreiben eines Datenpuffers zu verwenden. |
SPB_TRANSFER_LIST_ENTRY_INIT_NON_PAGED Die SPB_TRANSFER_LIST_ENTRY_INIT_NON_PAGED-Funktion gibt eine SPB_TRANSFER_LIST_ENTRY-Struktur zurück, die initialisiert wird, um einen einfachen Datenpuffer im nicht auslagerten Arbeitsspeicher zu beschreiben. |
SPB_TRANSFER_LIST_ENTRY_INIT_SIMPLE Die SPB_TRANSFER_LIST_ENTRY_INIT_SIMPLE-Funktion gibt eine SPB_TRANSFER_LIST_ENTRY-Struktur zurück, die initialisiert wird, um einen einfachen Datenpuffer zu beschreiben. SPB_TRANSFER_LIST_ENTRY_INIT_SIMPLE Funktion gibt eine SPB_TRANSFER_LIST_ENTRY-Struktur zurück, die initialisiert wird, um einen einfachen Datenpuffer zu beschreiben. |
SPB_TRANSFER_LIST_INIT Die SPB_TRANSFER_LIST_INIT-Funktion initialisiert eine SPB_TRANSFER_LIST-Struktur. |
SpbControllerSetIoOtherCallback Die SpbControllerSetIoOtherCallback-Methode registriert die EvtSpbControllerIoOther-Rückruffunktion eines SPB-Controllertreibers. |
SpbControllerSetRequestAttributes Die SpbControllerSetRequestAttributes-Methode legt Objektattribute fest, die für alle SPBREQUEST-Objekte verwendet werden, die von der SPB-Frameworkerweiterung (SpbCx) an den SPB-Controllertreiber übermittelt werden. |
SpbControllerSetTargetAttributes Die SpbControllerSetTargetAttributes-Methode legt Objektattribute fest, die für alle SPBTARGET-Objekte verwendet werden, die von der SPB-Frameworkerweiterung (SpbCx) an den SPB-Controllertreiber übermittelt werden. |
SpbDeviceInitConfig Die SpbDeviceInitConfig-Methode fügt die SPB-Frameworkerweiterung (SpbCx) an die E/A-Anforderungskette für ein zu erstellendes WDFDEVICE-Objekt (FDO oder PDO) an. |
SpbDeviceInitialize Die SpbDeviceInitialize-Methode schließt die Initialisierung des SPB-Controllertreibers ab, nachdem dieser Treiber das zugeordnete Geräteobjekt erstellt hat. |
SpbRequestCaptureIoOtherTransferList Die SpbRequestCaptureIoOtherTransferList-Methode ruft die SPB_TRANSFER_LIST-Struktur im Eingabepuffer der benutzerdefinierten IOCTL-Anforderung ab. |
SpbRequestComplete Die SpbRequestComplete-Methode schließt eine E/A-Anforderung ab und stellt einen Abschluss status bereit. |
SpbRequestGetController Die SpbRequestGetController-Methode gibt das WDFDEVICE-Handle an das Geräteobjekt für den SPB-Controller zurück, an den die angegebene E/A-Anforderung gesendet wurde. |
SpbRequestGetParameters Die SpbRequestGetParameters-Methode ruft einen Satz SPB-spezifischer Parameterwerte aus einer E/A-Anforderung ab. |
SpbRequestGetTarget Die SpbRequestGetTarget-Methode ruft das SPBTARGET-Handle aus der angegebenen E/A-Anforderung ab. |
SpbRequestGetTransferParameters Die SpbRequestGetTransferParameters-Methode ruft die Übertragungsparameter für eine einzelne Übertragung in einer E/A-Übertragungssequenz ab. |
SpbTargetGetConnectionParameters Die SpbTargetGetConnectionParameters-Methode ruft die Verbindungsparameter für ein Zielgerät im Bus ab. |
SpbTargetGetFileObject Die SpbTargetGetFileObject-Methode akzeptiert als Eingabeparameter ein SPBTARGET-Handle für ein geöffnetes Zielgerät und gibt ein WDFFILEOBJECT-Handle an dieses Ziel zurück. |
Strukturen
PNP_SERIAL_BUS_DESCRIPTOR Die PNP_SERIAL_BUS_DESCRIPTOR-Struktur beschreibt die physische Verbindung eines Zielgeräts mit einem seriellen Bus (I2C, SPI oder UART). |
RH_QUERY_CONNECTION_PROPERTIES_OUTPUT_BUFFER Die RH_QUERY_CONNECTION_PROPERTIES_OUTPUT_BUFFER-Struktur enthält die Verbindungseigenschaften für ein Zielgerät, das mit einem seriellen Bus (I2C, SPI oder UART) verbunden ist. |
SPB_CONNECTION_PARAMETERS Die SPB_CONNECTION_PARAMETERS-Struktur enthält die Verbindungsparameter für ein Zielgerät auf einem einfachen Peripheriebus. |
SPB_CONTROLLER_CONFIG Die SPB_CONTROLLER_CONFIG-Struktur enthält die Konfigurationseinstellungen für einen SPB-Controllertreiber. |
SPB_MULTI_SPI_READ_TRANSFER Die SPB_MULTI_SPI_READ_TRANSFER-Struktur beschreibt einen Lesevorgang, der in einem Multi-SPI-Modus (z. B. Dual SPI oder Quad SPI) ausgeführt werden soll. |
SPB_MULTI_SPI_TRANSFER Die SPB_MULTI_SPI_TRANSFER-Struktur beschreibt einen SPI-E/A-Vorgang, der mit einem Multi-SPI-Übertragungsmodus wie Dual oder Quad SPI ausgeführt werden soll. |
SPB_MULTI_SPI_TRANSFER_HEADER Die SPB_MULTI_SPI_TRANSFER_HEADER-Struktur beschreibt eine SPI-Übertragung, die in einem Multi-SPI-Modus (z. B. Dual SPI oder Quad SPI) ausgeführt werden soll. |
SPB_MULTI_SPI_WRITE_TRANSFER Die SPB_MULTI_SPI_WRITE_TRANSFER-Struktur beschreibt einen Schreibvorgang, der in einem Multi-SPI-Modus (z. B. Dual SPI oder Quad SPI) ausgeführt werden soll. |
SPB_TRANSFER_BUFFER Die SPB_TRANSFER_BUFFER-Struktur beschreibt den Datenpuffer für eine einzelne Übertragung in einer E/A-Übertragungssequenz. |
SPB_TRANSFER_BUFFER_LIST_ENTRY Die SPB_TRANSFER_BUFFER_LIST_ENTRY-Struktur beschreibt entweder einen einfachen Übertragungspuffer oder ein Element in einem Array von mindestens einem Übertragungspuffer. |
SPB_TRANSFER_DESCRIPTOR Die SPB_TRANSFER_DESCRIPTOR-Struktur beschreibt eine einzelne Übertragung in einer E/A-Übertragungssequenz. |
SPB_TRANSFER_LIST Die SPB_TRANSFER_LIST-Struktur beschreibt eine E/A-Übertragungssequenz. |
SPB_TRANSFER_LIST_ENTRY Die SPB_TRANSFER_LIST_ENTRY-Struktur beschreibt eine einzelne Übertragung in einer E/A-Übertragungssequenz. |