关 闭

新闻中心

EEPW首页>工控自动化>设计应用> USB在PCR仪嵌入式系统中的应用

USB在PCR仪嵌入式系统中的应用

作者: 时间:2009-07-03 来源:网络 收藏

2系统的软件设计
根据2.O协议,在一个系统中,任何一次通信都是由USB主机发起的。USB设备根据主机发来的命令给予响应,执行相应的操作。在USB系统中,其软件包括以下几个部分:主机应用程序、设备驱动程序和设备固件程序。主机用于程序为用户提供设备应用的操作平台和交互界面,完成数据的处理和转换,向设备发出控制命令等。设备驱动程序是USB设备正常工作的基础,它提供了设备接人系统时要用到的引导文件、设备信息文件等。
2.1 动态链接库
系统应用中CH375提供了设备方式下标准驱动CH375WDM.INF和动态链接库 CH375DL L.DLL,通过加载驱动信息可以在应用程序中直接调用动态链接库。CH375在计算机端提供应用层接口。应用层接口是由CH375动态链接库DLL提供的面向功能应用的API,所有API在调用后都有操作状态返回,但不一定有应答数据。CH375动态链接库提供的API包括:设备管理API、数据传输 API、中断处理API。
设计中采用C语言作为计算机端应用软件的开发平台,首先需要将CH375的动态链接库、驱动程序添加到到编译环境中。动态链接库的使用,简化了USB设备开发的步骤,降低了开发难度,为系统调试节省了时间。
2.2 应用程序与设备间的通信
通过动态链接库的数据传输函数,CH375在与M30627FJPGP之间提供了端对端的连接。应用程序与设备固件间的通信采用请求加应答方式,该通信方式具有较好的交互性和可控性。请求加应答方式使用一个下传的主动请求和一个上传的被动应答进行交互式的双向数据通信,下传与上传一一对应,相互关联。所有的通信都由客户应用程序发起,然后以接收到M30627FJPGP的应答结束。
2.3 固件程序设计
CH375与M30627FJPGP之间设计成完全的中断驱动。当单片机处理前台任务时,USB的传输可在后台进行,这就确保了最佳的传输速率和更好的软件结构,同时简化了编程和调试。
后台ISR(中断服务程序)和前台主程序循环之间的数据交换可以通过事件标志和数据缓冲区来完成,其实现原理如图3所示。

应用中的单片机读写U盘软件可分成两大部分:应用程序和固件程序。应用程序完成系统的数据采集、处理任务、外围控制等功能,固件程序处理底层的USB通信协议、文件系统,完成数据在USB总线上的可靠传输和在U盘上的存取操作。为方便在不同控制器或应用系统上进行移植,固件采取积木式结构,如图4所示。

2.4 USB读写操作
USB读写操作可根据不同的系统要求设定执行程序。在仪系统设计中,M30627FJPGP将通过-A/D通道采集到的数据向U盘内指定的文件: ADC_DATA.TXT追加数据。开机后,单片机向CH375写入配置字,设定其进入主控(Host)模式,进人数据采集状态,等待USB总线事件发生。U盘追加数据流程如图5所示。

3 USB在中的难点及解决方案
传统的USB主控体系结构是PC应用的一种理想的解决方案,而在中很难实现,具体表现在:
(1)具有的系统资源容量和能力有限;
(2)嵌入式应用一般要对实时事件做出及时的响应。把USB固件添加到系统中,就会增加复杂性,导致在实时应用的设计和调试中出现更多中断和实时事件;
(3)嵌入式市场具有种类繁多的处理器和实时操作系统。将USB固件开发和移植到任何特定处理器/实时操作系统平台的努力都将花费大量时间,而且需要工作人员在USB技术上具有很高的专业技能。
克服嵌入式装置中USB主控设计的复杂性问题,其方法之一是把与USB即插即用能力相关的智能揉入USB主端控制器本身之中。要做到这一点,所采取的办法是:
把USB主控栈和器件驱动的共用组件嵌入到USB控制器硬件中;
将USB主控功能压缩到语族与ANSI C兼容的API中,而这些API被系统用来获取USB主控制器中的USB主控功能。
这种设计方法可以带来一个无需系统处理器干预,就能处理USB主控活动的USB主控制器。它不仅让系统资源的消耗降至最低,而且也将通过系统总线的USB 数据流减至最小。API的设计将简单易行,并且独立于处理器和实时操作系统,从而有效地降低了API集移植和集成的难度。


4 结 语
PCR仪系统的设计,实现USB总线在嵌入式系统中的基本应用模式。PCR仪中USB主机的实现方法,体现了USB存储设备的灵活性和方便性,USB系统嵌入到PCR仪中方便了用户的操作,提高了PCR仪的工作效率和仪器的可用性。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭