OUT传输操作顺序:
1、 初始化USBFS全局寄存器。
2、 初始化和使能端点。
3、 当OUT令牌接收后, USBFS接收包数据或基于Rx FIFO状态和寄存器配置回复NAK握手包。如果事务成功完成(USBFS接收并保存数据到Rx FIFO,发送ACK握手包),USBFS_DOEPxLEN寄存器的PCNT值减1。如果事务成功完成(接收到ACK握手包),ACK标志被触发,或者,其他状态标志表示事务的结果。
4、 在一次传输的所有数据包都被成功接收, USBFS将TF状态条目压入Rx FIFO的最后的数据包的顶部,这样,软件在读取所有接收的包数据后,再读取TF状态条目。 USBFS生成TF标志来指示传输成功结束。 USBFS生成一个TF标志位表明传输成功结束,除能相应OUT端点。
|