共2条
1/1 1 跳转至页
PDIUSBD12 PDIUSBD12,这样理解正确吗
问
如果在建立阶段PC主机向设备发送如下数据(Get Device Descriptor):
SETUP ADDR ENDP
0xB4 0x0 0x0 ①
DATA0 DATA
0xC3 0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00 ②
设备采用PDIUSBD12,我是这样理解的:
1、 D12发生两次中断,一次为SETUP后,另一次为DATA0后
2、 D12在接收①后,改变状态寄存器40H的值,并发出中断信号
控制输入、控制输出缓冲区内为空,其作用仅仅是指定了端点0和
管道0
3、D12在接收②后,改变状态寄存器40H的值,并发出中断信号
控制输入缓冲区内为0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00
我是USB的新手,不知道上述理解是否正确,请高手指正!
答 1: 错!!简单也说:通常只有正确接收到数据才会产生中断.以上所列的如果被D12正确接收只会产生一个中断,如果传输出错如:CRC、位填充等等出错,将不会产生中断。
SETUP ADDR ENDP
0xB4 0x0 0x0 ①
DATA0 DATA
0xC3 0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00 ②
设备采用PDIUSBD12,我是这样理解的:
1、 D12发生两次中断,一次为SETUP后,另一次为DATA0后
2、 D12在接收①后,改变状态寄存器40H的值,并发出中断信号
控制输入、控制输出缓冲区内为空,其作用仅仅是指定了端点0和
管道0
3、D12在接收②后,改变状态寄存器40H的值,并发出中断信号
控制输入缓冲区内为0x80 0x06 0x00 0x01 0x00 0x00 0x12 0x00
我是USB的新手,不知道上述理解是否正确,请高手指正!
答 1: 错!!简单也说:通常只有正确接收到数据才会产生中断.以上所列的如果被D12正确接收只会产生一个中断,如果传输出错如:CRC、位填充等等出错,将不会产生中断。
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 基于MCP23S17的输入输出功能模块控制被打赏¥20元 | |
| 【S32K3XX】SPD 软件包使用Link文件修改被打赏¥22元 | |
| Switch-Case局部变量定义问题被打赏¥23元 | |
| 基于米尔TIAM62L开发板的串口通信及应用被打赏¥20元 | |
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
我要赚赏金
