简单外设总线 (SPB)
简单外围总线 (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 事件回调函数处理设备 I/O 控制请求,这些请求不由其他事件回调函数或 SPB 框架扩展 (SpbCx) 处理。 |
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 或象限 SPI) 模式)中执行的读取操作。 |
SPB_MULTI_SPI_TRANSFER SPB_MULTI_SPI_TRANSFER结构描述了要使用多 SPI 传输模式(如双 SPI 或象限 SPI)执行的 SPI I/O 操作。 |
SPB_MULTI_SPI_TRANSFER_HEADER SPB_MULTI_SPI_TRANSFER_HEADER结构描述在多 SPI ((例如双 SPI 或象限 SPI) 模式)中执行的 SPI 传输。 |
SPB_MULTI_SPI_WRITE_TRANSFER SPB_MULTI_SPI_WRITE_TRANSFER 结构描述在多 SPI ((例如双 SPI 或象限 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 传输序列中的单个传输。 |