本帖最后由 David_ming 于 2011-5-3 18:01 编辑
不用去读规格书了,大家可以直接跟帖
84系列是Megawin的USB芯片,抗干扰不错,而且也特别适合学习,带有USB
的引导程序,开发的时候可以不用任何工具,只用笙泉的DFU软件即可,特
此发点学习资料,不正确的地方请斑竹指正,欢迎跟帖纠正
1. 硬件自动做的事情有:
1.编解码,CRC,PID令牌解码,总线事件等最底层的事情;
2.ACK,NAK信号的回复;
3.DATA0/1自动切换;
4.错误重试;
2. 发STALL信号命令:(EPCON |= RXSTL | TXSTL)
置位RXSTL和TXSTL就把硬件端点给挂起了,下一次主机问的时候就会自动
回复STALL信号。注意,这个STALL信号只会有效一次。
3. FIFO特性
每个端点都是FIFO特性(先进先出),对于IN端点,可以通过RXCNT判断接收
到了多少个字节,当然,虽然每次收到的数据个数都是已知的.在每次读完
FIFO后记得清零一下,即 RXCLR 位置一。
4. 当想往上位机发送数据的时候,要写数据到FIFO,然后再写入包的大小到
TXCNT中以告诉硬件要发送多少byte数据,当然也可以写0到该寄存器,以
发送状态信息。
5. 对于中断OUT型端点,记得收到数据后清一下 RXFFRC 位以使能下一次的
接收,不然,会一直回复NAK。
想到了这么多,知道上面的这些,应该可以做不少东东了
贴个能工作的工程,注意这个工程只是能工作,省略了很多东西,下载进去后能看见鼠标向右下角移动 |