1.2基于OHCI的USB主机 —— 背景介绍

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://lancelot.blog.51cto.com/393579/226133
使用AT91RM9200作为主控CPU,利用该芯片的USB主机接口访问U盘,根据接收的上层命令把相应数据保存到U盘的指定文件上。不使用额外的专用USB控制芯片,要求稳定可靠,效率高,不能影响运行在该CPU上的其它程序。
AT91RM9200程序加载后直接运行,没有操作系统。
以上就是我做的基于OHCI的USB主机的项目背景,这个项目是做什么的不重要,你可以把它想象成任何项目,关键是这个项目要求使用U盘来保存数据。
另外,在我们的项目中没有使用任何一款嵌入式操作系统,所有的程序都运行在同一个主循环中,自己来实现任务调度。说到操作系统,其实很惭愧,自从我开始从事嵌入式系统的开发到现在,十几年了,从来没有用过任何操作系统,所有程序都是裸机直接运行。好处是系统简单,一切都在自己的掌握之中,出了问题可以很快得到解决。坏处是系统的移植性差,换了个系统有很多通用的代码需要重新编写。
不过我做的那些嵌入式系统现在看来其实都是蛮简单的,用了操作系统可能反而更麻烦,首先得花时间学习操作系统,而且出了问题还要分析确认这问题是不是操作系统的问题,一旦是操作系统的问题还要想办法怎么规避,算了,有那个时间项目早就做完了。
没有操作系统,我的程序更加清晰,没有了驱动程序加载、操作系统API调用,反而可以更加清楚地知道如何基于OHCI规范实现USB主机。在开始讲解之前,我想读者应该具备如下的基础知识:
1、 USB接口基础知识;
2、 USB层通信协议及基本工作流程;
3、 USB主机对USB设备的管理流程;
4、 OHCI标准 —— AT91AM9200对USB接口的操作标准;
5、 Mass Storage Protocol —— 对U盘访问的存储控制协议;
6、 UFI Command - U盘读写等操作命令;
7、 FAT16文件系统;
以上内容有一些我会在需要的时候加以说明,更加详细的内容请自行参考相关资料。下面是我做开发过程中参考的一些资料:
1、 《Open Host Controller Interface Specification for USB》
路径
ftp://ftp.compaq.com/pub/supportinformation/papers/hcir1_0a.exe
说明
OHCI接口规范,解压后得到Word文档
2、 《ARM嵌入式系统软件开发实例(一、二)》
路径
 
说明
周立功等编著,北京航空航天大学出版社
3、 《USB 2.0应用系统开发实例精选》
路径
 
说明
廖济林编著,电子工业出版社
4、 《Universal Serial Bus Mass Storage Class Bulk-Only Transport》
USB Bulk-Only协议规范
5、 《Universal Serial Bus Mass Storage Class UFI Command Specification》
USB UFI命令规范
6、 《Microsoft Extensible Firmware Initiative FAT32 File System Specification》
FAT32文件格式,基础部分与FAT16兼容
阅读更多
个人分类: WINCE_驱动_USB
上一篇基于OHCI的USB主机 —— 目录
下一篇1.3 基于OHCI的USB主机 —— 总体构架
想对作者说点什么? 我来说一句

基于OHCIUSB主机

2013年06月23日 177KB 下载

基于OHCIUSB主机 HCCA

2013年06月22日 177KB 下载

基于AT91RM9200 OHCIUSB主机

2014年05月21日 514KB 下载

USB主机协议OHCI

2011年09月16日 1.31MB 下载

没有更多推荐了,返回首页

关闭
关闭