简单外围总线(SPB)技术的概述。
若要开发简单外围总线(SPB),需要以下标头:
有关编程指南,请参阅 简单外围总线(SPB)。
枚举
SPB_MULTI_SPI_TRANSFER_MODE SPB_MULTI_SPI_TRANSFER_MODE枚举指定总线驱动程序用来与外围设备通信的多 SPI 传输类型。 |
SPB_REQUEST_SEQUENCE_POSITION SPB_REQUEST_SEQUENCE_POSITION枚举指示 I/O 请求在 I/O 传输序列的传输列表中的位置。 |
SPB_REQUEST_TYPE SPB_REQUEST_TYPE枚举指定客户端请求的 SPB作的类型。 |
SPB_TRANSFER_BUFFER_FORMAT SPB_TRANSFER_BUFFER_FORMAT枚举指定由SPB_TRANSFER_BUFFER结构描述的缓冲区的格式。 |
SPB_TRANSFER_DIRECTION SPB_TRANSFER_DIRECTION枚举描述 I/O 传输序列中单个传输的方向(读取或写入)。 |
SpbIoctl 定义值以指示类型 I/O 控件请求。 |
功能
EVT_SPB_CONTROLLER_LOCK SPB 控制器驱动程序的 EvtSpbControllerLock 事件回调函数锁定 SPB 控制器,以便在总线上访问单个目标设备。 |
EVT_SPB_CONTROLLER_OTHER SPB 控制器驱动程序的 EvtSpbControllerIoOther 事件回调函数处理未由其他事件回调函数或 SPB 框架扩展(SpbCx)处理的设备 I/O 控制请求。 |
EVT_SPB_CONTROLLER_READ SPB 控制器驱动程序的 EvtSpbControllerIoRead 事件回调函数将数据从指定的目标设备读取到随读取请求提供的缓冲区中。 |
EVT_SPB_CONTROLLER_SEQUENCE SPB 控制器驱动程序的 EvtSpbControllerIoSequence 事件回调函数执行指定目标设备与随序列请求提供的缓冲区之间的数据传输序列。 |
EVT_SPB_CONTROLLER_UNLOCK SPB 控制器驱动程序的 EvtSpbControllerUnlock 事件回调函数解锁 SPB 控制器,SPB 控制器由先前对 EvtSpbControllerLock 事件回调函数的调用锁定。 |
EVT_SPB_CONTROLLER_WRITE SPB 控制器驱动程序的 EvtSpbControllerIoWrite 事件回调函数从随写入请求提供的缓冲区将数据写入指定的目标设备。 |
EVT_SPB_TARGET_CONNECT SPB 控制器驱动程序的 EvtSpbTargetConnect 事件回调函数打开与总线上目标设备的连接。 |
EVT_SPB_TARGET_DISCONNECT SPB 控制器驱动程序的 EvtSpbTargetDisconnect 事件回调函数关闭了与目标设备的连接,该设备以前是通过调用驱动程序的 EvtSpbTargetConnect 事件回调函数打开的。 |
PwmParsePinPath 分析脉冲宽度调节(PWM)控制器命名空间下的引脚路径,以验证其格式并提取引脚号。 |
SPB_CONNECTION_PARAMETERS_INIT SPB_CONNECTION_PARAMETERS_INIT函数初始化SPB_CONNECTION_PARAMETERS结构。 |
SPB_CONTROLLER_CONFIG_INIT SPB_CONTROLLER_CONFIG_INIT函数初始化SPB_CONTROLLER_CONFIG结构。 |
SPB_MULTI_SPI_READ_TRANSFER_INIT SPB_MULTI_SPI_READ_TRANSFER_INIT函数初始化SPB_MULTI_SPI_READ_TRANSFER结构。 |
SPB_MULTI_SPI_TRANSFER_INIT SPB_MULTI_SPI_TRANSFER_INIT函数初始化SPB_MULTI_SPI_TRANSFER结构。 |
SPB_MULTI_SPI_WRITE_TRANSFER_INIT SPB_MULTI_SPI_WRITE_TRANSFER_INIT函数初始化SPB_MULTI_SPI_WRITE_TRANSFER结构。 |
SPB_REQUEST_PARAMETERS_INIT SPB_REQUEST_PARAMETERS_INIT函数初始化SPB_REQUEST_PARAMETERS结构。 |
SPB_TRANSFER_DESCRIPTOR_INIT SPB_TRANSFER_DESCRIPTOR_INIT函数初始化SPB_TRANSFER_DESCRIPTOR结构。 |
SPB_TRANSFER_LIST_ENTRY_INIT_BUFFER_LIST SPB_TRANSFER_LIST_ENTRY_INIT_BUFFER_LIST函数返回一个SPB_TRANSFER_LIST_ENTRY结构,该结构初始化以描述散点收集列表。SPB_TRANSFER_LIST_ENTRY_INIT_BUFFER_LIST函数返回初始化以描述散点收集列表的SPB_TRANSFER_LIST_ENTRY结构。 |
SPB_TRANSFER_LIST_ENTRY_INIT_MDL SPB_TRANSFER_LIST_ENTRY_INIT_MDL函数返回一个SPB_TRANSFER_LIST_ENTRY结构,该结构初始化为使用 MDL 描述数据缓冲区。 |
SPB_TRANSFER_LIST_ENTRY_INIT_NON_PAGED SPB_TRANSFER_LIST_ENTRY_INIT_NON_PAGED函数返回一个SPB_TRANSFER_LIST_ENTRY结构,该结构初始化以描述非分页内存中的简单数据缓冲区。 |
SPB_TRANSFER_LIST_ENTRY_INIT_SIMPLE SPB_TRANSFER_LIST_ENTRY_INIT_SIMPLE函数返回初始化以描述简单数据缓冲区的SPB_TRANSFER_LIST_ENTRY结构。SPB_TRANSFER_LIST_ENTRY_INIT_SIMPLE函数返回初始化以描述简单数据缓冲区的SPB_TRANSFER_LIST_ENTRY结构。 |
SPB_TRANSFER_LIST_INIT SPB_TRANSFER_LIST_INIT函数初始化SPB_TRANSFER_LIST结构。 |
SpbControllerSetIoOtherCallback SpbControllerSetIoOtherCallback 方法注册 SPB 控制器驱动程序的 EvtSpbControllerIoOther 回调函数。 |
SpbControllerSetRequestAttributes SpbControllerSetRequestAttributes 方法设置将用于 SPB 框架扩展 (SpbCx) 传递给 SPB 控制器驱动程序的所有 SPBREQUEST 对象的对象属性。 |
SpbControllerSetTargetAttributes SpbControllerSetTargetAttributes 方法设置将用于 SPB 框架扩展 (SpbCx) 传递给 SPB 控制器驱动程序的所有 SPBTARGET 对象的对象属性。 |
SpbDeviceInitConfig SpbDeviceInitConfig 方法将 SPB 框架扩展 (SpbCx) 附加到要创建的 WDFDEVICE (FDO 或 PDO) 对象的 I/O 请求链。 |
SpbDeviceInitialize SpbDeviceInitialize 方法在此驱动程序创建关联的设备对象后完成 SPB 控制器驱动程序的初始化。 |
SpbRequestCaptureIoOtherTransferList SpbRequestCaptureIoOtherTransferList 方法检索自定义 IOCTL 请求的输入缓冲区中的SPB_TRANSFER_LIST结构。 |
SpbRequestComplete SpbRequestComplete 方法完成 I/O 请求并提供完成状态。 |
SpbRequestGetController SpbRequestGetController 方法将 WDFDEVICE 句柄返回到发送到指定 I/O 请求的 SPB 控制器的设备对象。 |
SpbRequestGetParameters SpbRequestGetParameters 方法从 I/O 请求中检索一组特定于 SPB 的参数值。 |
SpbRequestGetTarget SpbRequestGetTarget 方法从指定的 I/O 请求中检索 SPBTARGET 句柄。 |
SpbRequestGetTransferParameters SpbRequestGetTransferParameters 方法检索 I/O 传输序列中单个传输的传输参数。 |
SpbTargetGetConnectionParameters SpbTargetGetConnectionParameters 方法检索总线上目标设备的连接参数。 |
SpbTargetGetFileObject SpbTargetGetFileObject 方法接受作为输入参数、打开的目标设备的 SPBTARGET 句柄,并将 WDFFILEOBJECT 句柄返回到此目标。 |
结构
PNP_SERIAL_BUS_DESCRIPTOR PNP_SERIAL_BUS_DESCRIPTOR结构描述目标设备与串行总线(I2C、SPI 或 UART)的物理连接。 |
RH_QUERY_CONNECTION_PROPERTIES_OUTPUT_BUFFER RH_QUERY_CONNECTION_PROPERTIES_OUTPUT_BUFFER结构包含连接到串行总线(I2C、SPI 或 UART)的目标设备的连接属性。 |
SPB_CONNECTION_PARAMETERS SPB_CONNECTION_PARAMETERS结构包含简单外围总线上目标设备的连接参数。 |
SPB_CONTROLLER_CONFIG SPB_CONTROLLER_CONFIG结构包含 SPB 控制器驱动程序的配置设置。 |
SPB_MULTI_SPI_READ_TRANSFER SPB_MULTI_SPI_READ_TRANSFER结构描述在多 SPI(例如双 SPI 或 Quad SPI)模式下执行的读取作。 |
SPB_MULTI_SPI_TRANSFER SPB_MULTI_SPI_TRANSFER结构描述了一个 SPI I/O作,该作将使用多 SPI 传输模式(如双 SPI 或 Quad SPI)执行。 |
SPB_MULTI_SPI_TRANSFER_HEADER SPB_MULTI_SPI_TRANSFER_HEADER结构描述在多 SPI(例如双 SPI 或 Quad SPI)模式下执行的 SPI 传输。 |
SPB_MULTI_SPI_WRITE_TRANSFER SPB_MULTI_SPI_WRITE_TRANSFER结构描述在多 SPI(例如双 SPI 或 Quad SPI)模式下执行的写入作。 |
SPB_TRANSFER_BUFFER SPB_TRANSFER_BUFFER结构描述 I/O 传输序列中单个传输的数据缓冲区。 |
SPB_TRANSFER_BUFFER_LIST_ENTRY SPB_TRANSFER_BUFFER_LIST_ENTRY结构描述一个简单的传输缓冲区,或一个或多个传输缓冲区数组中的元素。 |
SPB_TRANSFER_DESCRIPTOR SPB_TRANSFER_DESCRIPTOR结构描述 I/O 传输序列中的单个传输。 |
SPB_TRANSFER_LIST SPB_TRANSFER_LIST结构描述 I/O 传输序列。 |
SPB_TRANSFER_LIST_ENTRY SPB_TRANSFER_LIST_ENTRY结构描述 I/O 传输序列中的单个传输。 |