当前位置:首页 > 嵌入式 > 嵌入式硬件

在许多传统行业中,高精度温度数据采集系统是不可缺少的。近年来,随着高精度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开发的高精度数据采集系统,采集精度高,抗干扰能力强。具有较高的应用和推广价值。

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

在人工智能的发展历程中,我们往往认为更多的训练、更复杂的数据能让 AI 变得更加智能。然而,近期一些研究却揭示了令人意外的现象:对小型 AI 语言模型进行数学训练时,过度训练可能会导致其表现急剧下降,甚至出现 “变笨”...

关键字: 人工智能 数据 模型

I2C 总线的起始条件和终止条件通常由主机产生。起始条件是在 SCL 高电平时,SDA 从高电平转为低电平;而终止条件则是当 SCL 高电平时,SDA 从低电平转化为高电平。这两个条件的准确识别对于 I2C 通信的正确启...

关键字: I2C 总线 数据 协议

在AI数据产业中,数据精准度=验收合格数量/全部数量,这意味极高的精准度不仅要满足一些客观标准,还需要与AI项目方的需求深度契合,通过基于需求的验收过程。

关键字: AI 数据

基于使用困难报告系统(SDRS)对钻石DA20飞机的故障数据进行分析 。基于SDRS系统收集到的数据 , 结合故障分类方法 ,对钻石DA20飞机的不同故障进行研究 ,并提出相应的解决措施 ,有利于提高钻石DA20飞机机队...

关键字: SDRS DA20飞机 故障 数据

在当今数字化时代,数据如同流淌在信息高速公路上的血液,驱动着各个领域的创新与发展。而在嵌入式视觉领域,高速数据传输正扮演着越来越关键的角色,它不仅是实现实时、精准视觉感知的基础,更是开启未来智能应用无限可能的钥匙。

关键字: 数据 视觉 传输

‌DIS采集系统方案‌主要包括传感器端、采集器端和计算机端三个部分,每个部分都有其特定的功能和设计要求。

关键字: ‌DIS 采集系统

在如今数字化的时代,SD 卡作为一种常见的存储设备,承载着我们大量珍贵的记忆和重要的资料,如精彩的照片、珍贵的视频以及关键的文档等。然而,令人头疼的是,SD 卡数据丢失的情况时有发生,可能是由于误删除、格式化、病毒感染、...

关键字: 内存卡 数据

如今,我们正处于一个被无处不在的数据及高耗电应用所驱动的信息计算世界中,使得电源管理成为了不同系统、网络和软件所面临多方面挑战中的不可忽视的一环。

关键字: 数据 高耗电 电源管理

近年来,国内某知名钢铁集团致力于推动传统钢铁主业的高质量发展,通过提高电控自动化水平,进一步优化产品质量和产能效率,不断提升市场竞争力。

关键字: 魏德米勒 电力 信号 数据

北京——2024年4月30日 亚马逊云科技持续引领云上数据服务创新,助力企业构建全面的数据基座以充分发挥数据潜力,加速生成式AI技术落地。在生成式AI时代,数据是企业脱颖而出的关键——基础模型依赖于大规模高质量数据集,生...

关键字: 生成式AI 数据 模型
关闭