您的位置:首页 > 职场人生

基于OHCI的USB主机 —— 寄存器(传输)

2009-11-23 17:10 567 查看


启动控制传输

进行控制传输之前,需要设置好相应的ED和TD参数(参见下一章),启动传输时需要设置OHCI寄存器中的控制传输ED头指针寄存器和控制传输的当前ED指针寄存器,然后设置控制寄存器允许处理控制传输列表,控制状态寄存器有控制传输列表数据需要传输,代码如下:
[align=left]/**[/align]
[align=left] * 通过Control端口传输数据[/align]
[align=left] * @param *ed 需要进行数据收发的ED指针[/align]
[align=left] * @return 0 - 成功[/align]
[align=left] */[/align]
[align=left]short ohciCtrlXfer(AT91S_UHP_ED *ed)[/align]
[align=left]{[/align]
//
Programming the CHED
[align=left] pUhp->UHP_HcControlHeadED = (unsigned int) ed;[/align]
[align=left] [/align]
//
Programming the CCED
[align=left] pUhp->UHP_HcControlCurrentED = (unsigned int) ed;[/align]
[align=left] [/align]
// UHP:
UHP is now operational and control list processing is enabled
[align=left] pUhp->UHP_HcControl = 0x90;[/align]
[align=left] [/align]
// UHP:
Notify the Hc that the Control list is filled
pUhp->UHP_HcCommandStatus =
OHCI_HC_COMMAND_STATUS_CLF;
[align=left] [/align]
[align=left] return 0;[/align]
[align=left]}[/align]

启动批量传输

启动批量传输的流程与控制传输类似,只不过相应寄存器换为批量传输的寄存器了:
[align=left]/**[/align]
[align=left] * 通过Bulk端口传输数据[/align]
[align=left] * @param *ed 需要进行数据收发的ED指针[/align]
[align=left] * @return 0 - 成功[/align]
[align=left] */[/align]
[align=left]short ohciBulkXfer(AT91S_UHP_ED *ed)[/align]
[align=left]{[/align]
[align=left] // 禁止ED[/align]
[align=left] pUhp->UHP_HcControl = 0x180;[/align]
[align=left] pUhp->UHP_HcCommandStatus = 0x00;[/align]
[align=left] [/align]
//
Programming the BHED
[align=left] pUhp->UHP_HcBulkHeadED = (unsigned int) ed;[/align]
[align=left] [/align]
//
Programming the BCED
[align=left] pUhp->UHP_HcBulkCurrentED = (unsigned int) ed;[/align]
[align=left] [/align]
// UHP:
UHP is now operational and control list processing is enabled
[align=left] pUhp->UHP_HcControl = 0x0A0;[/align]
[align=left] [/align]
// UHP:
Notify the Hc that the Bulk list is filled
pUhp->UHP_HcCommandStatus =
OHCI_HC_COMMAND_STATUS_BLF;
[align=left] [/align]
[align=left] return 0;[/align]
[align=left]}[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  职场 主机 USB 休闲 OHCI