新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 六通道数据采集及处理系统的研制

六通道数据采集及处理系统的研制

作者:时间:2012-03-19来源:网络收藏

3 系统软件设计

系统主程序框图如图8所示。

系统主程序设计为一个循环程序,在一个循环中完成以下工作:①向A/D转换器发送命令字,读取A/D转换器的转换结果,并根据来自PC机的指令,将读取的转换结果进行初步;②将数据发送给PC机;③接收来自PC机的命令,并对命令做出反应。

本系统中,TLC2543输出结果设置成12位无符号整型数,输出顺序为高位在前。为了使采样结果更准确,采取如下采样方式:在每一个主程序循环中,由单片计算机依次读取AIN0~AIN5六个的采样数据,并将各的数据依次存放到单片机的RAM中,六个读完一次之后,再依次读取 AIN0~AIN5六个通道的采样数据,并将新读取的各通道的数据分别加入到前面读取的结果中,这样连续读取8次,得到各通道8次采样结果之和,然后将这些结果分别除以8,得到各通道8次采样结果的平均值,并把它们作为各通道的采样结果传送给PC机。由于A/D转换器输出的结果并不直接表示电压的大小(000H表示0V,FFFH表示3.0V),单片机可根据来自PC机的命令,将这些结果转换成电压值(如将FFFH转换成003H),结果的转换通过调用子程序完成。

50.gif
图8 系统主程序框图

系统主程序每循环一次,单片机向PC机发送一组数据,这一组数据包含三个部分:①三个同步字节#55H、#0AAH、#01H(供PC机识别发送内容用);②AIN0~AIN5六个通道的采样结果;③采样结果的累加和(供PC机校验发送数据的正确性用)。数据的发送通过调用发送子程序实现。循环程序中有一个延时程序, PC机通过传送延时参数控制单片机完成一次循环所需的时间,从而控制单片机向PC机发送数据的频率。来自PC机的命令通过中断方式读入,每当PC机有信号传入,就引起单片机的串行口中断,单片机在中断服务程序中读入命令,并执行收到的命令。

单片机串行口的工作方式设置成方式1,串行通信的波特率设计为4800。设波特率发生器T1的初值为x,则[4]

即 x=250(十)=#0FAH(十六)

所以 TL1=#0FAH,TH1=#0FAH.



评论


相关推荐

技术专区

关闭