当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]智能化多路串行数据采集/传输模块的设计

引言

随着电子技术的不断发展,目前对各种物理量的检测和控制都可得以实现。微机检测控制系统不仅运用到航天航空、机器人技术、纺织机械、食品加工等工业过程控制,而且已经成为日常各种家用电器当中的主要组成部分。其中,A/D(模拟数字转换)设备起着十分重要的作用。这样,一个系统中就会需要更多的A/D设备。一般是用扩展一块或多块A/D采集卡的方法去实现。当模拟量较少或是温度、压力等缓变信号场合,采用总线型A/D卡并不是最合适、最经济的方案。这里介绍一种以AT89C2051单片机为核心,采用TLC2543L12位串行A/D转换器构成的采样模块,该模块的采样数据由单片机串口经电平转换后送到上位机(PC机)的串口COM1或COM2,形成一种串行数据采集串行数据传输的方式。

主要元件功能介绍

AT89C2051单片机

AT89C2051是ATMEL公司推出的一种性能价格比极高的8位单片机,其指令系统与MCS-51系列完全兼容。引脚排列如图1所示。

TLC2543L串行A/D转换器

TLC2543L采用SPI串行接口总线,SPI串行接口总线由Motorola公司提出,它是一种三线同步接口,分别为同步信号、输入信号和输出信号。另外芯片还有一根片选线,单片机通过片选线选通TLC2543L。其中,CLK为同步时钟脉冲,CS为片选线,DIN为单片机的数据输出和TLC2543L的数据输入线,DOUT为单片机的数据输入线和TLC2543L的数据输出线。图2为TLC2543L时序图。TLC2543L是全双工的,即数据的发送和接收可同时进行。如果只是对TLC2543L写数据,单片机可以丢弃同时读入的数据;反之,如果只读数据,可以在命令字节后,写入任意数据。数据传送以字节为单位,并采用高位在前的格式。

模块采用TI公司的TLC2543L12位串行A/D转换器,使用开关电容逐次逼近法完成A/D转换过程。串行输入结构,能够大大节省51系列单片机I/O资源,且价格适中。其特点有:

(1)11个模拟输入通道;

(2)转换时间10s;

(3)12位分辨率A/D转换器;

(4)3路内置自测试方式;

(5)采样率为66kbps;

(6)线性误差+1LSB(max)

(7)有转换结束(EOC)输出;

(8)具有单、双极性输出;

(9)可编程的MSB或LSB前导;

(10)可编程的输出数据长度。TLC2543L的引脚排列如图3所示。图3中AIN0~AIN10为模拟输入端;为片选端;DIN为串行数据输入端;DOUT为A/D转换结果的三态串行输出端;EOC为转换结束端;CLK为I/O时钟;REF+为正基准电压端;REF-为负基准电压端;VCC为电源;GND为地。

电平转换器MAX232C

MAX232C为RS-232收发器,简单易用,单+5V电源供电,仅需外接几个电容即可完成从TTL电平到RS-232电平的转换,引脚排列如图4所示。

硬件设计

硬件电路如图5所示。

单片机AT89C2051是整个系统的核心,TLC2543L对输入的模拟信号进行采集,转换结果由单片机通过P3.5(9脚)接收,AD芯片的通道选择和方式数据通过P3.4(8脚)输入到其内部的一个8位地址和控制寄存器,单片机采集的数据通过串口(3、2脚)经MAX232C转换成RS232电平向上位机传输。

单片机软件设计

单片机程序主要包括串行数据采集/传输模块的系统信息、通道数、采集周期和通讯协议定义,以及数据采集和传输的标准子程序。

TLC2543L的通道选择和方式数据为8位,其功能为:D7、D6、D5和D4用来选择要求转换的通道,D7D6D5D4=0000时选择0通道,D7D6D5D4=0001时选择1通道,依次类推;D3和D2用来选择输出数据长度,本程序选择输出数据长度为12位,即D3D2=00或D3D2=10;D1,D0选择输入数据的导前位,D1D0=00选择高位导前。

TLC2543L在每次I/O周期读取的数据都是上次转换的结果,当前的转换结果在下一个I/O周期中被串行移出。第一次读数由于内部调整,读取的转换结果可能不准确,应丢弃。

数据采集程序如下:

sbitDATAIN=P1^1;

sbitCLOCK=P1^0;

sbitDATAOUT=P1^2;

sbitCS=P1^3;

bitdatain_a_bit0()

{bitm=0;

DATAOUT=1;

m=DATAOUT;

DATAIN=0;

Nop();

CLOCK=1;

Nop();

CLOCK=0;

Return(m);

}

bitdatain_a_bit1()

{bitm=0;

DATAOUT=1;

m=DATAOUT;

DATAIN=1;

Nop();

CLOCK=1;

Nop();

CLOCK=0;

Return(m);

}

单片机通过编程产生串行时钟,并按时序发送与接收数据位,完成通道方式/通道数据的写入和转换结果的读出,程序如下:

unsignedintTlc2543L(unsignedcharch)

{unsignedchari,chch=0;

unsignedintxdataxxx=0;

unsignedintxdatay=0;

CS=0;

Chch=ch<<4;

Y=chch;

Y<<=8;

I=0;

While(I<12)

{if((y&0x8000)==0)

{if(datain_a_bit0()==0)xxx&=0xfffe;

elsexxx|=0x0001;

if(I!=11)xxx<<=1;

}

else

{if(datain_a_bit1()==0)xxx&=0xfffe;

elsexxx|=0x0001;

if(I!=11)xxx<<=1;

}

y<<=1;

I+=1;

}

CS=1;

Return(xxx);

}

串行数据传输模块包括串行口初始化子程序和数据传输子程序,各子程序分别如下。其中数据传输采用查询方式,也可以方便地改为中断方式。[!--empirenews.page--]

Voidrs232init()

{TMOD=0x20;

TH1=0xfd;

TR1=1;

SCON=0x50;

}

voidreceandtran()

{unsignedcharda;

while(!RI)

RI=0;

Da=SBUF;

SBUF==da;

While(!TI);

TI=0;

}

上位机接收数据所用C语言程序包括初始化子程序和接收子程序。各子程序分别如下:

voidcominit(void)

{

outportb(0x3fb,0x80);

outportb(0x3f8,0x18);/与单片机波特率一致为9600bps*/

outportb(0x3f9,0x00);

outportb(0x3fb,0x03);/8位数据位,1位停止位,无奇偶校验*/

outportb(0x3fc,0x03);/*Modem控制寄存器设置,使DTR和RTS输出有效*/

outportb(0x3f9,0x00);/*设置中断允许寄存器,禁止一切中断*/

}

voiddata_rece(void)/*查询方式接收数据子程序*/

{

while(!kbhit())

{

while(!(inportb(0x3fd)&0x01));/*若接收寄存器为空,则等待*/

printf("%x",inportb(0x3f8));/*读取结果并显示*/

}

getch();

}

智能化串行采集/传输模块在PCR仪中的应用

在PCR仪的电路设计中,因需要检测的信号很多,包括热盖的温度检测,散热器的温度检测,腔体内部的温度检测,气流的温度检测,光信号的检测等等,为了简化电路,节约成本,减小体积,在选择A/D转换电路时选用了SPI总线的TLC2543,该芯片有多达11路的模拟信号输入端,完全满足PCR仪电路设计的需要,一个芯片既能完成检测多个信号的功能,又能节约单片机的资源,图6是其硬件原理图。

结论

本文所述的智能化串行数据模块,可直接用于任何微机控制和检测系统中以取代原来的模数转换设计。经过实践检验,该模块功耗低、采样精度高、可靠性好、接口简便,有很高的实用价值。该智能模块的软件和硬件成功应用于生命科学仪器“热循环仪”的设计和实践中,使用方便,简单可行,节约成本,能够满足大多数数据采样的应用场合。

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

杭州2025年9月9日 /美通社/ -- 近日,由中国电子学会、中国通信学会联合主办的2025物联网大会在江苏无锡举办。会上发布了"2025年度物联网领域十大科技进展",由浙江大学、中国电信集团有限公...

关键字: 智能网络 物联网 智能化 AI

北京2025年9月8日 /美通社/ -- 近日,易生支付与一汽出行达成合作,为其自主研发的"旗驭车管"车辆运营管理平台提供全流程支付通道及技术支持。此次合作不仅提升了平台对百余家企业客户的运营管理效率...

关键字: 一汽 智能化 BSP SAAS

北京2025年9月5日 /美通社/ -- 9月2日,济南城市投资集团有限公司(简称"济南城投")与软通动力信息技术(集团)股份有限公司(简称"软通动力")正式签署战略合作...

关键字: AI 数字经济 智能化 人工智能技术

构建了机载电源特性测试系统 , 包括硬件平台和软件平台:硬件平台用于产生电源特性测试所需激励信号 , 软件 平台实现电源特性测试架构的 自动切换和电源特性的数据采集;硬件平台由APS15000线性功放 、LVA2500线...

关键字: 电源特性测试 测试切换 数据采集 自动控制

上海2025年9月1日 /美通社/ -- 8月29日,由国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(简称"TÜV莱茵")...

关键字: 工程师 REGULATION 基础知识 智能化

北京2025年8月28日 /美通社/ -- 8月28日,北京亦庄创新发布消息,北京经济技术开发区(简称"北京经开区",又称"北京亦庄")创新推出"一张清单、一链延伸、一套...

关键字: 接线 数字化 智能化 模型

北京2025年8月28日 /美通社/ -- 2025年8月27日,软通动力信息技术(集团)股份有限公司发布2025年半年度报告。2025年是国家"十四五"规划收官和"十五五"开局之...

关键字: 全栈 AI 智能化 笔记本电脑

青岛2025年8月27日 /美通社/ -- 海尔集团公司(海尔集团)旗下卡泰驰控股(Cartech Holding Company)今日正式宣布,成功完成战略入股汽车之家(纽约证券交易所股票代码:ATHM;港交所股票代号...

关键字: 汽车产业 海尔 O2O 智能化

深圳2025年8月27日 /美通社/ -- 2025年8月27日,华测检测认证集团股份有限公司(简称CTI华测检测,股票代码300012)与北京戴纳实验科技股份有限公司(简称戴纳科技)在华测集团上海基地完成战略签约,双方...

关键字: TI AI BSP 智能化

北京2025年8月22日 /美通社/ -- 近日,杭州数宇智汇科技发展有限责任公司(以下简称 "数宇智汇")与浪潮信息签署元脑生态战略合作协议。双方将围绕大模型知识平台、智能问答机器人等核心领域展开深...

关键字: 机器人 模型 智能化 多模
关闭