CDC AuxJackHookState通知
2025-07-11
0
0
AuxJackHookState 通知用途
AuxJackHookState 通知指示USB设备辅助电话接口上的环路发生了变化。
连接到辅助电话接口的次级或下游设备的钩挂状态发生了变化。对于提供辅助或下游电话接口独立控制的设备,此通知提供了一种宣布插入该接口的设备钩挂状态变化的方法。
通知格式
字段 | 值/说明 |
---|---|
bmRequestType | 0xA1 (10100001B) 方向:设备到主机,类型:类,接收者:接口 |
bNotification | 0x08 (AUX_JACK_HOOK_STATE) |
wValue | 0 = 挂机(On hook)<br>1 = 摘机(Off hook) |
wIndex | 接口号 |
wLength | 0 |
Data | 无 |
典型设备端通知示例
C 结构体示例:
// 辅助接口摘机通知
uint8_t aux_hook_off_notification[] = {
0xA1, // bmRequestType (设备到主机,类,接口)
0x08, // bNotification (AUX_JACK_HOOK_STATE)
0x01, 0x00, // wValue (1 = Off hook)
0x01, 0x00, // wIndex (Interface 1)
0x00, 0x00 // wLength (0 = No data)
};
// 辅助接口挂机通知
uint8_t aux_hook_on_notification[] = {
0xA1, // bmRequestType
0x08, // bNotification (AUX_JACK_HOOK_STATE)
0x00, 0x00, // wValue (0 = On hook)
0x01, 0x00, // wIndex (Interface 1)
0x00, 0x00 // wLength (0 = No data)
};
主机端处理要点
- 通过中断端点接收通知。
- 检查wValue值:
- 0:辅助接口挂机
- 1:辅助接口摘机
- 根据钩挂状态更新主机软件的状态。
- 触发相应的电话事件处理。
常见应用场景
场景 | wValue | 说明 |
---|---|---|
辅助电话摘机 | 1 | 检测到辅助电话摘机 |
辅助电话挂机 | 0 | 检测到辅助电话挂机 |
分机状态变化 | 0/1 | 检测到分机钩挂状态变化 |
参考
- USB CDC PSTN 子类规范 6.3.3](https://www.usb.org/document-library/class-definitions-communication-devices-12)