当前位置:首页 > 单片机 > 单片机
[导读]在许多传统行业中,高精度温度数据采集系统是不可缺少的。近年来,随着高精度ADC价格的不断下降以及其功能的不断完善,研制廉价的多路、快速、高精度温度采集系统成为了可能。美国德州仪器公司(TI)推出的带24位ADC的

在许多传统行业中,高精度温度数据采集系统是不可缺少的。近年来,随着高精度ADC价格的不断下降以及其功能的不断完善,研制廉价的多路、快速、高精度温度采集系统成为了可能。美国德州仪器公司(TI)推出的带24位ADC的微处理器MSC1210,特别适合于测量高精度温度、压力传感器等输出的微弱信号。本文以MSC1210作为测量、信号处理以及通讯的核心,设计了高精度温度采集系统模块。该系统测量通道易于扩充,测量精度高,可以快速地进行高精度数据测量。

系统总体方案设计

本系统的硬件部分主要由前端数据采集、处理电路和后端数据处理、LCD电路组成。两部分通过RS-232串行接口进行通信。系统的总体方案构图如图1所示。


图1 系统总体结构

数据采集部分的软硬件设计

硬件电路设计

数据采集部分的核心器件选用了MSC1210Y5。这主要是因为该微处理器具有24位的 ADC,其有效精度高于22位。其内部包含完整的前向通道(包括输入缓存器、模拟开关电路、可编程增益放大器和ADC以及数字滤波部分)和后向通道— DAC,这些都是完成测控系统的必须部分。此外,该处理器通过改变命令寄存器的方式对内部通道功能进行设置,用指令就可以选择输入缓存器、设置放大增益、控制通道开关切换、进行偏置校正等,使用非常方便。数据采集部分的电路结构原理图如图2所示。

本系统中两个核心芯片MSC1210Y5和 MAX3223的功耗都很低,因此,在设计中板上的电源(3.3V)由后端系统通过RS-232接口提供。除了RS-232接口的接线,以及接入J1、 J2插座的信号(8个AIN线、REF以及公共地)线外,本系统的硬件部分不再需要其它连接,使用非常方便。此外,设计时还在电路中预留了一部分接口线供以后扩展系统功能使用,包含了第二串行口以及四根可配置为SPI接口、中断输入和I/O端口的备用接口线。


图2  数据采集电路结构原理图

软件设计

在基于此电路的高精度测温模块应用中,MSC1210Y5完成了微弱信号的多路切换、信号缓冲、编程放大、24位ADC、数字滤波、数据处理、信号校准以及串口通信等功能。MSC1210Y5包含2个串口,本设计中选取其中的一个串口用来与后端人机交互系统通信,负责接收后端发送的控制命令和控制参数以及发送前端采集、处理的数据。数据采集电路的程序主要任务是:控制内部的ADC的测量过程,读取转换的数据;与后端 (S3C44B0X系统)进行通信,读取上位机的命令和有关的控制参数,同时向上位机传送转换后的数据。数据采集电路的程序控制流程如图3所示。

串口开始接收上位机送过来的命令和数据时,将依次读到的后端系统的2字节串码(暂存在R6,R7)的控制字传送到MSC1210Y5内部寄存器ADCON1 和ADCON0,从而实现对ADC控制命令的写入。其后将ADCON3、ADCON2、ADMUX和PDCON寄存器的内部写入相应的命令和参数值,从而完成对MSC1210Y5内ADC的设置和启动。向后端系统发送数据时,由于ADC是24位精度,转换数据必须分为3个字节传送,即将寄存器1、2、3的 ADC转换结果依次通过送SBUF发送,同时在这个过程中还包含发送同步字符、CRC校验等过程。

图3数据采集电路的程序控制流程 

嵌入式GUI应用系统概述

该系统后端的硬件部分主要由三大块构成:以S3C44B0X为核心的系统板,集JTAG调试电路、系统电源、LCD接口电路的辅助板,以及LCD屏。

后端的软件部分也由三个部分组成:系统启动加载程序,嵌入式实时多任务操作系统mC/OS-II,和基于mC/OS-II的应用程序。根据系统应用的需要,其中基于mC/OS-II的应用程序主要包括串行口通信程序和基于mC/GUI的图形用户接口程序。

系统中的串口用于S3C44B0X控制器向前端数据采集部分发送控制命令和控制参数,并实时接收前端发送的采集数据,送由控制器处理和进行LCD显示。当操作系统mC/OS-II启动时,自动初始化串行口。由于应用程序是多任务系统,为了实时监测串行口信息,设计时在系统中单开了一个串行口扫描任务,从而可保证信息不丢失。

由于mC/GUI提供了源代码,在开发应用程序时,用户可以首先将核心文件、LCD驱动文件和需要的字体文件包含在自己的工程里,然后再根据内存设备、输入设备、空间和窗口管理部分等硬件的实际需要来具体开发。开发步骤如下。

(1) 按照实际需要,定制自己的mC/GUI开发环境。其中包括对mC/GUI目录的筛选,以及目录中文件的筛选;

(2) 指定硬件设备的地址,编写接口驱动代码。这里需要修改LCDConf.h文件;

(3) 编译、连接、调试子程序;

(4)修改子程序并测试,增加需要的功能;

(5)若开发多任务应用,则需要修改GUI_MAXTASK和GUI_OS宏,实现mC/GUI与操作系统的结合;

(6)编写自己的应用程序。
 

由于mC/GUI不支持ARM7处理器S3C44B0X,因此,要把mC/GUI移植到系统平台上,需要自己完成mC/GUI在系统硬件平台上的各种驱动,具体包括S3C44B0X中内置的LCD控制器的正确初始化,以及画点、画线、填充等LCD驱动函数的编写等。

LCD 控制器初始化:S3C44B0X LCD控制器上的正确初始化包括各种控制寄存器的正确配置以及显存的正确设置与映射。其中显存的映射是将S3C44B0X专用LCD DMA的源地址设为显存起始地址值,该值是在rLCDSADDR1中配置。此外,LCD控制器还需对REGBANK中的其他可编程寄存器进行编程,以控制相应的寄存器值,并确定垂直/水平象素、数据接口的数据宽度、接口时间及刷新率等。

LCD驱动函数编程:在LCD的驱动函数中,最底层的驱动函数是画点函数和取点函数。在mC/GUI中显示字、图形都与这两个函数有关,它们直接与显存通话。为了显示出字符和位图,还须参考uC/GUI的 LCDMemC.c,写DrawBitLine1BPP、DrawBitLine2BPP和DrawBitLine4BPP函数,并配置 GUIConf.h和LCDConf.h中的常数。完成了上面的各个驱动函数后,就可以采用mC/GUI的Demo程序对所移植的mC/GUI进行测试了。


结语

采用TI公司的微控制器MSC1210Y5开发的高精度数据采集系统,采集精度高,抗干扰能力强。具有较高的应用和推广价值。
 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭