阅读:1061回复:2
请教isp1581的高速检测和resume的解决 救命啊
在1581收到总线复位信号后,会产生一个chirp信号并等待2.0hub的握手,当收到握手后,会在中断寄存器中将h_stat位置1并重新初始化1581。大家都是怎么处理这个过程的?我是在收到busreset中断后,循环等待h_stat中断的到来,但是这样虽然能够检测到高速中断,却又进入了resume中断,我对这个中断的处理是只将此中断位清零。然后我得1581就再没有任何动作了,~~~~
请问开发过1581的朋友,是如何处理这两个问题的 |
|
沙发#
发布于:2004-04-09 14:29
把resume中断禁用掉,还有你干吗要循环等待hs中断?用philips提供的固件程序的isr框架就行,如果第一次没收到那么之后会收到的,到时候只需要重新init一下就可以了。
|
|
板凳#
发布于:2004-04-09 17:28
huiren兄:
我还有几个问题请教: 如果按这样做的话,那意味着1581在连接到2。0的hub后,只能以高速模式工作? 另外,我如果不在中断程序中循环等待h-stat中断的话,就根本收不到这个中断,直接转入全速工作了 我看了1581的例程,他在收到h-stat中断后,在初始化1581的时候,向0c寄存器中写09,把上拉电阻给接上了,可是按照规范来看,在设备转入高速工作以后,是应该断开上拉电阻的啊,固件是不是有错误啊 |
|