• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 基于μC/OS-Ⅱ的数据采集系统设计与应用

基于μC/OS-Ⅱ的数据采集系统设计与应用

录入:edatop.com     点击:

在本系统中,测量压力采用的器件是广州森纳士仪器有限公司生产的压力变送器,其量程是 0.0lMPa,输出信号是 4~20mA的电流。当压力改变时,输出电流也随之发生变化,所以在信号输出端接一个精密电阻,然后对电阻两端的电压进行采样和转换,再经过固件程序的换算就可以得到测量压力了。

3.3 固件程序下载电路

固件程序下载电路的功能就是将编译好的程序代码下载到 ATmegal6单片机的 Flash中去。 ATmega16支持多种编程模式,其中比较简单也比较方便的一种就是 ISP(In-system-programming,在系统编程)模式,即通过串行 SPI(serial peripheral Interface,串行外设接口)总线将在 windows中调试、编译好的程序代码下载到 ATmegal6的存储器。 Flash程序存储器、 EEPROM数据存储器、熔丝位和加密锁定位都可以在这种模式下编程。固件程序下载电路如图 3所示。

3.4 LED显示部分设计

如图 4所示,系统的显示是使用 MAX7219实现的 8位稳定静态显示,MAX7219是串行共阴极数码管动态扫描显示驱动芯片,仅使用 3线串行接口传送数据,可直接与单片机接口,用户还可以方便地修改其内部参数以实现多位 LED显示,因此可以方便地使用单片机的串口送出显示数据,并且其占用的时间少,方便编程及对信号的检测。

4 USB数据采集系统的软件开发

USB数据采集系统是一个多任务系统,而且程序结构也比较复杂,为了提高开发率,增强系统的稳定性,降低开发和维护成本,就需要一个嵌入式操作系统作为系统发和运行的平台。?C/OS-Ⅱ作为一个源码公开的免费型嵌入式实时操作系统,其稳定性好、可靠性高,而且 ?C/OS-Ⅱ还具有移植性好、可固化、可裁剪等特点,非常适合作为 USB数据采集系统的开发平台。

USB数据采集系统的软件由三个部分组成:USB设备固件程序、主机 PC上的 USB设备驱动程序和主机上的客户应用程序。系统软件的组成及各部分之间的关系如图 5所示。

固件程序按功能可以划分为 USB通信程序、A/D转换程序和 LED显示程序,其中 USB通信程序是整个固件程序的主要部分,其功能是实现 USB设备枚举和数据传输。USB设备枚举是 USB设备插上之后,主机与设备交换信息并自动配置的过程,枚举成功后, USB接口与主机就可以进行通信了。

设备驱动程序是连接设备和主机应用程序的纽带,它向上提供应用程序的访问接口 (API),向下则实现对具体设备的访问和管理功能。驱动程序与设备硬件和上层用户程序密切相关,在 USB体系的中间起到信息转换和传递的中介作用。在开发 USB设备时,设备驱动程序的设计是一个非常重要的环节,直接影响到整个设备系统的性能。

本系统采用 Driverworks开发 WDM型 USB设备驱动程序应用程序的主要功能是在设备驱动程序中查找设备,与设备交换数据,并将设备发送来的数据进行处理和显示。应用程序和驱动程序的通信是通过访问应用程序接口 (API)函数实现的,所以应用程序的开发必须在能访问 API函数的平台上进行。 Microsoft公司提供的visualC++6.0是一种功能强大的支持 API函数的编程工具,本设计的主机应用程序就是以VC为平台进行开发的,其功能主要包括查找 USB设备,与 USB设备交换数据和动态显示数据曲线。

5 总结

本文的创新点在于完成的基于 USB接口和 ?C/OS-Ⅱ的数据采集系统,采样频率可达 15KSPS(每秒采样次数),数据传输错误恢复率大于 99%,即插即用、使用方便且具有很低的开发成本,可以为数据采集特别是电池供电移动或手持采集设备提供一种有效的解决方案和方便使用、高效传输的设备形式;其次,而在 PC端引入微软新近的 WDM驱动程序模型,在其基础上开发了数据采集系统的设备驱动程序,可以成功地对设备进行识别、配置,并提供了同设备进行数据交换的应用程序接口,基于这些接口,编制了具有查询设备、与设备交换数据并将数据绘制成动态曲线等功能的 PC端应用程序。

来源:维库开发网

上一篇:CAN总线与PC机串口通信适配器设计与实现
下一篇:多带激励语音编码的实现

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图