我阅读了ch55x的手册,关于bUEP_R_RES / bUEP_T_RES有点疑惑,当遇到控制传输就搞得更糊涂了。我发现在状态阶段,收到了IN事务,代码写的是UEP0_CTRL = UEP_R_RES_ACK | UEP_T_RES_NAK。在状态阶段,收到了OUT事务,代码写的是UEP0_CTRL |= UEP_R_RES_ACK | UEP_T_RES_NAK。一个是=另一个是|=。为什么要这样写能解释一下吗?
还有就是每次放入Ep0Buffer的数据是为了下一次IN事务准备的对吗,这就是为啥在setup阶段就开始填写Ep0Buffer了?
热门产品 :
CH397: 高集成度、低功耗USB网卡芯片