阅读:2564回复:5
求助:实现OHCI协议时写入了ED地址到HcControlHeadED寄存器怎么没有WDH中断?
我是新手,请大虾们多多指教!谢谢啦!
我已经设置了以下几个寄存器:(拔插设备已经可以收到RHSC中断) HcInterruptEnable MIE = 1; RHSC = 1; WDH = 1; HcControl HCFS = 2; CLE = 1; HcCommandStatus CLF = 1; 然后把设置好的ED写入HcControlHeadED里,HC应该处理这个ED下的TD然后触发WDH中断,可是我却一直没等到WDH中断,究竟是怎么回事啊?是不是我少设置了什么寄存器?或者是其他什么问题? 谢谢! |
|
沙发#
发布于:2005-07-19 15:14
TD.control 没设好 有个中断延迟 你可能设成111了
|
|
板凳#
发布于:2005-07-20 14:25
没有啊,这个中断延迟我设置为0了。唉,我觉得该设置的都设置了呀
HcControlHeadED里写入了ED的地址,这个地址应该就是分配的内存地址吧? 下边是我设置的Hc ED和TD ED: MaxPacketSize = 8; Format = 0; sKip = 0; Speed = 0;//full speed device Direct = 0;//get from td EndPointNumber = 0; FunctionAddress = 0; TDQueueHead = 0x1c180; TDQueueTail = 0x1c190; ToggleCarry = 0; Halted = 0; NextED = 0; TD head:(address:0x1c180) CompletionCode = 15; ErrorCode = 0; DataToggle = 2;//control transfer,setup phase DelayInterrupt = 0; DirectPID = 0;//Setup BufferRounding = 0; CurrentBufferPointer = 0x19168; NextTD = 0x1c190; BufferEnd = 0x1916f; TD Tail:(address: 0x1c190) CompletionCode = 15; ErrorCode = 0; DataToggle = 3;//control transfer,status phase DelayInterrupt = 0; DirectPID = 2;//Out BufferRounding = 0; CurrentBufferPointer = 0; NextTD = 0; BufferEnd = 0; 下面是引用hantian_2005于2005-07-19 15:14发表的: |
|
地板#
发布于:2005-07-20 14:31
没有啊,这个中断延迟我设置为0了。唉,我觉得该设置的都设置了呀
HcControlHeadED里写入了ED的地址,这个地址应该就是分配的内存地址吧? 下边是我设置的Hc ED和TD ED: MaxPacketSize = 8; Format = 0; sKip = 0; Speed = 0;//full speed device Direct = 0;//get from td EndPointNumber = 0; FunctionAddress = 0; TDQueueHead = 0x1c180; TDQueueTail = 0x1c190; ToggleCarry = 0; Halted = 0; NextED = 0; TD head:(address:0x1c180) CompletionCode = 15; ErrorCode = 0; DataToggle = 2;//control transfer,setup phase DelayInterrupt = 0; DirectPID = 0;//Setup BufferRounding = 0; CurrentBufferPointer = 0x19168; NextTD = 0x1c190; BufferEnd = 0x1916f; TD Tail:(address: 0x1c190) CompletionCode = 15; ErrorCode = 0; DataToggle = 3;//control transfer,status phase DelayInterrupt = 0; DirectPID = 2;//Out BufferRounding = 0; CurrentBufferPointer = 0; NextTD = 0; BufferEnd = 0; |
|
地下室#
发布于:2005-07-24 22:40
host controller在工作么,数据成功发送了么,DelayInterrupt不要设成零试试
|
|
5楼#
发布于:2014-05-04 22:59
楼主,解决了吗?什么 问题,我也遇到了。解决了一的话,告诉我一下吧,1263174944@qq.com
|
|