基于OHCI的USB主机 —— 中断寄存器初始化
2010-01-08 16:40
302 查看
在AM9200中,中断寄存器分为2个层次,一个是用来设置某个功能允许哪些中断产生,另一个是AIC中断寄存器,用来设置是否允许该功能产生中断。当AIC对应的中断产生时,需要读取相应功能的中断状态寄存器,以判断产生中断的具体原因。
对于USB接口,首先需要设置UHP_HcInterruptEnable和UHP_HcInterruptStatus寄存器(关于这两个寄存器的功能,请参见OHCI规范)。这两个寄存器属于USB功能寄存器,确定允许哪些USB中断。代码如下:
对于USB接口,首先需要设置UHP_HcInterruptEnable和UHP_HcInterruptStatus寄存器(关于这两个寄存器的功能,请参见OHCI规范)。这两个寄存器属于USB功能寄存器,确定允许哪些USB中断。代码如下:
[align=left]//设置USB Host中断寄存器[/align] [align=left]pUhp->UHP_HcInterruptEnable = OHCI_HC_INTR_MIE | [/align] [align=left] OHCI_HC_INTR_RHSC | [/align] [align=left] OHCI_HC_INTR_UE | [/align] [align=left] OHCI_HC_INTR_WDH | [/align] [align=left] OHCI_HC_INTR_FNO;[/align] [align=left]pUhp->UHP_HcInterruptStatus = OHCI_HC_INTR_RHSC | [/align] [align=left] OHCI_HC_INTR_UE | [/align] [align=left] OHCI_HC_INTR_WDH | [/align] [align=left] OHCI_HC_INTR_FNO;[/align] [align=left]//设置AIC中断信息[/align] [align=left]AT91F_AIC_ConfigureIt( AT91C_BASE_AIC,[/align] [align=left] AT91C_ID_UHP,//AT91C_ID_TC1,[/align] [align=left] AT91C_AIC_PRIOR_HIGHEST,[/align] [align=left] AT91C_AIC_SRCTYPE_INT_EDGE_TRIGGERED, AT91F_ASM_UHP_Handler);[/align] [align=left]AT91F_AIC_EnableIt(AT91C_BASE_AIC,AT91C_ID_UHP);[/align] |
相关文章推荐
- 3.15 基于OHCI的USB主机 —— 中断寄存器初始化
- 基于OHCI的USB主机 —— 寄存器(初始化) 推荐
- 基于OHCI的USB主机 —— 中断处理程序 推荐
- 2.2 基于OHCI的USB主机 —— 寄存器(初始化)
- 基于OHCI的USB主机 —— 寄存器层(说明)
- 基于OHCI的USB主机 —— 寄存器(初始化)
- 基于OHCI的USB主机 —— 寄存器(传输)
- 基于OHCI的USB主机 —— 寄存器(复位)
- 基于OHCI的USB主机 —— OHCI(端点) 推荐
- 基于OHCI的USB主机 —— OHCI(ED结构说明)
- 基于OHCI的USB主机 —— OHCI(TD结构)
- 基于OHCI的USB主机 —— USB标准请求
- 基于OHCI的USB主机 —— 目录 推荐
- 3.17 基于OHCI的USB主机 —— 中断处理程序
- 基于OHCI的USB主机 —— 结束语
- 基于OHCI的USB主机 —— OHCI(TD结构说明)
- 基于OHCI的USB主机 —— 中断向量处理
- 基于OHCI的USB主机 —— 描述符说明
- 2.1 基于OHCI的USB主机 —— 寄存器层(说明)
- 基于OHCI的USB主机 —— USB设备描述符数据结构