微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 工业电子 > 基于USB的嵌入式CCD图像数据采集系统的实现

基于USB的嵌入式CCD图像数据采集系统的实现

时间:12-22 来源:互联网 点击:


2 USB部分软件设计

USB系统软件由固件程序、USB系统驱动程序和应用程序三部分构成。

2.1 固件程序的开发

固件程序实际上是置于微控制器内部的程序文件,用来辅助硬件完成通信任务。通过ISP1581的INT中断信号与微控制器S3C44B0X的EINT0中断口相连,当接收数据或发送数据成功时就会产生中断,固件程序的任务就是对这些中断进行响应,完成设备的配置,让USB驱动程序知道设备的能力,接收USB主控制器发来的数据和向主机发送数据。设备固件程序是设备运行的核心,本系统采用Keil C进行编写。SP1581的固件程序采用模块化设计,包括主循环程序、中断服务程序、USB标准请求处理和批量数据传送请求处理四部分。固件模块结构见图4。


2.2 应用程序

应用程序包括Win32DLL程序和用户应用程序。Win32动态连接库包含共享函数库的二进制文件,可以被多个应用程序同时使用。客户应用程序则是实现数据采集系统功能的软件程序,在本系统中采用Visual C++进行编写。

2.3 USB系统驱动程序

USB系统驱动程序采用分层结构模型(WDM),该模型定义了分层的驱动程序, USB设备驱动程序不直接与硬件对话,而是通过USB驱动程序接口将USB请求块提交到总线驱动程序进而完成硬件操作。从系统的角度来说,在USB设备插入主机后,主机检测到USB设备,读取设备描述符,然后主机根据设备描述符中提供的厂商ID和产品ID等,启用相应USB设备驱动程序,读取USB设备中的配置描述符、接口描述符和端点描述符,根据需要选择恰当的配置、接口和端点,确定传输方式。这一过程完成后,PC机与USB设备之间就能够进行数据传输了。

USB总线的特点使其非常适合用作小型仪器与主机之间的通讯接口,实现主机与便携式仪器之间的简单、快速和可靠的连接。将USB接口应用到数据采集系统中,提高了数据采集系统的速度,增强了系统的抗干扰能力和数据传输的可靠性。本文详细介绍了基于ARM芯片S3C44B0X和USB2.0接口控制芯片ISP1581的数据采集系统的软硬件设计开发方案,设计开发过程较为繁杂,涉及到多方面的软件程序与硬件电路的联合使用,通过实验测试,效果良好。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top