基于OHCI协议的S3C2440 USB Host Driver之协议介绍(四)

HCCA

HCCA是256字节的内存结构,系统软件用来与HC发送或接受特殊控制和状态信息。256字节对齐。HC寄存器中的HcHCCA指向HCCA。


HccaInterruptTable为32个周期表的头指针数组。每帧HC仅访问该表一次。当前帧号的低5位用来索引。

HccaFramNumber HC每帧会更新该16位的值。在新帧,HC发SOF后,HC读一个ED开始处理之前,该值写为HcFmNumber的StartingFrame域。在SOF和更新该值之间,HC不在USB上传输任何数据。

HccaDoneHead周期性地,HC将HcDoneHead的值写到HccaDoneHead中,那么主机软件就可以处理完成的TD了。当延迟计数器为0,会在一帧的开始HcDoneHead写入内存。写完后,HC设值HcDoneHead=0,且设置WD位。写完后,HC可以开始建立新的完成队列,但是它不能讲其写往内存,除非HCD已经清楚了WD位。

该值的LSb用来表明中断情况。来自于HC的中断,HCD检查HccaDoneHead值,若为0该值不是HccaDoneHead更新导致的,需要检查HcInterruptStatus寄存器进一步确定是哪一个引起的。若不为0,是由HccaDoneHead更新引起的,但是如果此时LSb也不为0,那么一个另外的中断也产生了,需要检查中断状态寄存器来确定。




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值