阅读:913回复:1
ISP1581bulk传输的问题
我做了一个ISP1581的bulk out的实验板(仿造周立功的板子),发现在进行bulk传输时,总是重启计算机。不知什么原因。具体是当固件接收到Start Bulk Transfer(40 C0 71 04 00 00 00 01),后再接受6位数据(offset(3 bytes) length(2 bytes) director(1 byte))后,当固件通过endpoint0 in pipe向PC发送响应(ACK)时,具体说就是当向ISP1581模式寄存器(28H)的Status位置1时,代码如下:
mov R1, #28H movx A, @R1 ORL A, #02H ;(给Status位置1) -> movx @R1, A ;一执行这一句计算机就重启 但当相应别的请求时并没用重启(如相应SetAddress、SetConfig时),不知什么原因。另用周立功的ISP1581开发板,做测试也是同样现象。不知什么原因。 测试环境:Windows 2000 、Widnows XP、Windows 98 希望各位大侠搭救。谢谢。 |
|
|
沙发#
发布于:2004-07-08 22:40
没有用汇编做过,但是我怀疑你的pc机中厂商请求传输的数据包没有和固件中设置的一致。
|
|