首页 > 嵌入式软件 > Uc/os II

1引言

本文引用地址: http://www.21ic.com/embed/software/ucos/201712/49622.html

随着科学技术的不断发展,人们对数据采集的性能指标要求越来越高,传统的数据采集方式已经不能满足需要。通用串行总线因 (USB)具有传输速度快、即插即用、易于扩展、占用系统资源少等优点;嵌入式实时操作系统 (RTOS)中的 ?C/OS-Ⅱ则具有代码效率高、占用空间小、良好的实时性和可靠性等特点。本文将二者与传统的数据采集技术相结合,设计实现了一种基于 USB通信和 ?C/OS-Ⅱ的集数据采集、分析、显示为一体的数据采集系统。

 

2 系统体系结构

基于 USB通信的数据采集系统的体系结构如图 1所示。系统的工作过程就是一个数据采集的过程,其中的每一步都需要不同组的支持。首先,温度和压力参数经传感器转换成模拟信号,模拟信号经过 A/D转换变单片机可识别的数字信号。单片机将数字信号进行处理之后,就可以送往 LED显示或者发送给 USB接口芯片。USB接口芯片在主机需要的时候,把接收到的数据经 USB总发送给主机进行处理和显示。主机和 USB接口的通信则需要设备固件程序、USB设驱动程序和 USB主机应用程序的支持。

 

1.jpg

3 USB数据采集系统的硬件电路设计

USB数据采集系统的硬件电路结构主要包括以下几个部分:USB通信电路部分、数据采集电路部分、数码显示电路部分和固件程序下载电路部分。这些模块的功能都是在以 ATmega16为核心的硬件平台上实现的。

3.1 USB通信电路的设计

USB通信电路的功能是实现数据采集系统设备端和主机端之间的通信,这一功能主要是由核心微控制器 ATmega16和 USB控制器件 PDIUSBD12实现的。其中, PDIUSBD12是符合 USB1.1协议的芯片,在 USB通信电路中起着联系设备和主机的桥梁的作用。微控制器 ATmegal6和 USB控制器 PDIUSBD12之间通过 8位并行总线进行通信, 8位并行总线在 ATmegal6端需要连接 8个 I/O口。PDIUSBD12片内集成了时钟乘法 PLL,晶振电路使用 6MHZ的晶振和两个 2pF到 68pF的电容。 PDIUSBD12的信号输出端 D+/D一上要各串接一个 18欧的匹配电阻。通信电路如图 2所示。

 

2.jpg

3.2 数据采集电路的设计数据采集电路的功能就是将现场的温度、压力以及应力等数据转换成合适的模拟信号,再把模拟信号传送给 A/D转换电路。此模块包括温度采集模块和压力采集模块两部分。

由于 ATmegal6片内集成了可调增益的差分放大电路和 A/D转换通道,所以温度采集电路仅由一个用于测温的电桥组成。具体做法是根据热电阻阻值随温度变化的特性,将铜热电 阻作为电桥的一臂,当温度改变时,电桥输出电压也随之发生变化。将电桥输出电压送至 ATmegal6内部的采样保持电路,然后进行放大、 A/D转换,再经过固件程序的换算就可以得到测量温度了。

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

3.3 固件程序下载电路

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

 

3.jpg

3.4 LED显示部分设计

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

 

4.jpg

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

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

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

 

5.jpg

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

换一批

延伸阅读

[真心话] 资深硬件研发工程师:抄袭可耻!但产品抄袭可用,资料抄袭可笑

资深硬件研发工程师:抄袭可耻!但产品抄袭可用,资料抄袭可笑

硬件研发一般是指电子产品硬件研发,是一种看得见实物的电子产品研发,比如我们所说的手机、鼠标、键盘、音响都是硬件,硬件开发也就是在这些方面进行的一系列研究。本文分享一位资深工程师对硬件研发的一些看法,希望能对大家有所帮助。......

关键字:硬件研发 抄袭 生产体系

[真心话] 在美国的电子工程师看中国电子行业,为什么不受发达国家待见?

在美国的电子工程师看中国电子行业,为什么不受发达国家待见?

首先声明我承认中国有很多问题。但我个人是不太相信那种把中国的各种问题一罗列,就得出结论迟早要完之类结论的。这种论证太廉价。要说问题,三四十年前问题更多,八十年代的公知讲喊的是“河殇”,但中国没有完蛋,还是走过来了。风物长宜放眼量。......

关键字:美国 电子工程师 中国 电子行业

[猎聘集] 重磅!程序猿月薪过7万,可以落户北京了

重磅!程序猿月薪过7万,可以落户北京了

这是北京“近十年最宽松的落户政策”!消息在北京创投圈激起了涟漪。这些年,北京几乎聚集了中国数量最多顶尖的创业公司和创投机构,从IDG资本、红杉中国、经纬创投到百度、京东、美团、今日头条….浩浩荡荡数十万人。这一纸新规有望让他们落地生根。......

关键字:程序猿 月薪 北京
条评论

我 要 评 论

网友评论

大家都爱看

  • 扇出型晶圆级封装的优势和挑战!

    我们有能力创造一些能保持前代性能并且更好更小的电子设备,例如今天的可穿戴设备、智能手机或平板电脑,这是由于很多因素超过摩尔定律而快速发展,从而能够从底层的嵌入组件发展到今天把它们封…

    2018-03-29
  • Xilinx推出革命性的新型自适应计算产品

    自适应和智能计算的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX)),近日宣布推出一款超越FPGA功能的突破性新型产品,名为ACAP(Adaptive Compute Acceleration Platform,自适应计算加速…

    2018-03-20
  • 赛普拉斯为树莓派3 B+ IoT单板计算机提供强大稳定的无

    先进嵌入式系统解决方案的领导者赛普拉斯(纳斯达克代码:CY)近日宣布其Wi-Fi®和蓝牙®combo解决方案为全新的树莓派 3 B+(Raspberry Pi 3Model B+)IoT单板计算机提供强大稳定的无线连接…

    2018-03-20
  • 观看直播领红包,SEED-A10加速卡助力人工智能

    随着云服务器、云计算的发展,大家对硬件加速的需求越来越多,但是随着设备功耗的上升、性能需求越来越高,常规加速设备以及开始不能满足需求,因此FPGA逐渐在硬件加速中找到了自己的位置,而艾…

    2018-03-19
  • 特朗普:博通不得以任何形式收购高通

    白宫周一(3月12日)晚发出声明,川普(特朗普)总统出于“国家安全”考量、禁止新加坡博通公司(Broadcom)收购美国高通公司(Qualcomm)。

    2018-03-14