课程设计多路数据采集系统.docx
《课程设计多路数据采集系统.docx》由会员分享,可在线阅读,更多相关《课程设计多路数据采集系统.docx(17页珍藏版)》请在冰豆网上搜索。
课程设计多路数据采集系统
课程设计(论文)资料袋
信息工程学院系(院)
课程设计(论文)题目多路数据采集级显示系统设计
内装资料有:
1.课程设计(论文)任务书()
2.课程设计(论文)开题报告()
3.课程设计(论文)()
4.成绩评定及评语()
5.外文资料及原文复印件()
6.程序及软盘等()
7.工程图纸()
班级
09电子信息工程
学号
2009100181
姓名
赖冰
指导教师
莫钊
多路数据采集及显示系统设计
TheDesignOfMulti-channelDataSamplingandDisplaySystem
BasedOnSCM
总计课程设计(论文)22页
表格1个
插图13幅
摘要
本文对于一种多路数据采集系统进行了初步的研究,该多路采集系统能对多路模拟信号进行采集和处理。
数据采集与通信控制采用了模块化的设计,以单片机AT80C51为核心,利用串行A/D模数转换TLC2543进行模数转换,实现对十路信号的采集、存储、显示及与PC机通信等功能。
软件部分应用C语言编写控制软件,对数据采集系统、模数转换系统、数据显示、数据通信等程序进行了设计。
关键词:
AT8051TLC2543C语言控制软件AD模数转换
Abstract
Thispaperakindofwayfordataacquisitionsystemontheprimaryresearch,thismuchroadacquisitionsystemforroadsimulationsignalcanbegatheredandprocessing.Datacollectionandcommunicationcontrolusingmodulardesign,AT80C51withthesinglechipprocessorasthecore,andusingtheserialA/DconversionmoduleTLC2543forconversionmodule,andtorealizethe8signalcollection,storage,displayandwithAPCcommunications,andotherfunctions.SomeapplicationssoftwarewritteninClanguagecontrolsoftware,fordataacquisitionsystems,modulusconversionsystem,datadisplay,datacommunicationandotherprocedurestocarryonthedesign.
KeyWords:
AT80C51TLC2543ClanguageA/Dconversionmodule
目录
摘要…………………………………………………………………………………I
ABSTRACT………………………………………………………………………II
第一章引言……………………………………………………………………1
1.1国内外研究现状……………………………………………………………1
1.1.1研究背景及其目的意义……………………………………………1
1.1.2国内外研究进展…………………………………………………1
1.2课题内容……………………………………………………………………1
第二章数据采集………………………………………………………2
2.1数据采集系统……………………………………………………………2
2.2A/D相关知识………………………………………………………………2
2.3总体结构设计……………………………………………………………2
2.4硬件选择…………………………………………………………………2
2.4.1单片机89C51…………………………………………………2
2.4.2TLC2543引脚功能……………………………………………2
2.4.3LED显示电路……………………………………………2
2.4.4键盘扫描……………………………………………………3
第三章软硬件设计与硬件调试说明………………………………6
3.1软件设计与说明…………………………………………………6
3.2硬件调试…………………………………………………………6
3.2硬件显示说明…………………………………………………………7
第四章课程设计总结………………………………………………7
参考文献………………………………………………………………………8
附录1:
C语言程……………………………………………………………8
附录2:
硬件图…………………………………………………………10
第一章引言
1.1国内外研究现状及其意义
1.1.1研究背景及其目的意义
在科学研究中,运用数据采集系统可以获得大量的动态信息,也是获取科学数据和生成只是的重要手段之一。
无论在哪个应用领域中,数据采集与处理将直接影响工作效率和所取得的经济效益。
随着计算机的发展,对通信起到了巨大的推动作用。
计算机和通信紧密结合构成了灵活多样的通信控制系统,也可以构成强有力的信息处理系统。
数据采集,从严格的意义上来说,应该是计算机控制的多路数据自动检测或巡回检测,并能够是要对数据的存储、处理、分析计算以及从检测的数据中提取有用的信息,供显示、打印、绘图等。
1.1.2国内外研究进展
在国内主要有:
福建新大陆NEWLAND、深圳同采TONCY、台湾UNITECH等等。
国外的话主要是欧美:
得逻辑、MOTO、Intermec、datalogic、honeywell等等。
日韩:
CASIO、DENSO、M3、bluebird等等。
欧美品牌的品质不错,但是价格过高。
日韩品牌外观不错,品质一般,价格也高。
国内品牌后劲很足,性价比很高,售后服务更好更及时,国外品牌在国内的市场份额越来越小,价格也越来越低。
1.2课题内容要求
运用51系列单片机及相关外围器件制作一多路数据采集及显示系统,具体要求为:
要求:
1、采用51系列单片机作控制CPU;
2、能对3路输入的直流电压进行测量,输入电压0~5V;
3、测量的电压值由3位数码管显示,其中一位显示通道,两外两位显示测量的电压值,显示精度0.1V;
4.采用按键切换测量路径;
5、完成实物制作或proteus仿真实现
第二章数据采集
2.1数据采集系统
数据采集系统一般由数据输入通道、数据存储与管理、数据处理、数据输出及显示这五部分组成。
输入通道要实现对被测对象的检测,采样和信号检测等工作。
数据存储与管理要用存储器把采集到的信息存储起来,建立相应的数据库并进行管理与调用。
数据处理就是从采集到的信息中删除有关干扰,与无关信息。
对数据进行统计分析便于检索。
数据输出及显示就是把数据以适当的形式输出与显示。
2.2A/D相关知识
按基本原理及特点可分为:
积分型、逐次逼近型、并行比较型/串并行型、Σ-Δ调制型、电容阵列逐次比较型及压频变换型。
主要的技术指标:
分辩率,转换速率,量化误差,偏移误差,满刻度误,差线性度等
电压频率转换法A/D转换四步骤:
采样、保持、量化、编码。
2.3总体结构设计
数据采集系统的硬件电路主要以单片机AT80C51为核心,利用串行A/D模数转换TLC2543进行模数转换,实现对十路信号的采集、存储、显示及与PC机通信等功能。
主要结构如图所示
图一
2.4硬件选择
89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,
2.4.1单片机89C51
图二
2.4.2TLC2543引脚功能
说明如下:
AIN0~AIN10:
模拟输入端,由内部多路器选择。
CS:
片选端,CS由高到低变化将复位内部计数器,并控制和使能DATAOUT、DATAINPUT和I/OCLOCK。
CS由低到高的变化将在一个设置时间内禁止DATAINPUT和I/OCLOCK。
DATAINPUT:
串行数据输入端,串行数据以MSB为前导并在I/OCLOCK的前4个上升沿移入4位地址,用来选择下一个要转换的模拟输入信号或测试电压,之后I/OCLOCK将余下的几位依次输入。
DATAOUT:
A/D转换结果三态输出端,在CS为高时,该引脚处于高阻状态;当CS为低时,该引脚由前一次转换结果的MSB值置成相应的逻辑电平;EOC:
转换结束端。
在最后的I/OCLOCK下降沿之后,EOC由高电平变为低电平并保持到转换完成及数据准备传输;
VCC、GND:
电源正端、地;
REF+、REF-:
正、负基准电压端。
通常REF+接VCC,REF-接GND。
最大输入电压范围取决于两端电压差;
I/OCLOCK:
时钟输入/输出端。
TLC2543每次转换和数据传送使用16个时钟周期,且在每次传送周期之间插入CS的时序。
在TLC2543的CS变低时开始转换和传送过程,I/OCLOCK的前8个上升沿将8个输入数据位键入输入数据寄存器,同时它将前一次转换的数据的其余11位移出DATAOUT端,在I/OCLOCK下降沿时数据变化。
当CS为高时,I/OCLOCK和DATAINPUT被禁止,DATAOUT为高阻态。
图三
2.4.3LED显示电路
LED显示器集微电子技术、计算机技术、信息处理于一体,以其色彩鲜艳、动态范围广、亮度高、清晰度高、工作电压低、功耗小、寿命长、耐冲击、色彩艳丽和工作稳定可靠等优点,成为最具优势的新一代显示媒体。
过发光二极管芯片的适当连接(包括串联和并联)和适当的光学结构。
可构成发光显示器的发光段或发光点。
由这些发光段或发光点可以组成数码管、符号管、米字管、矩阵管、电平显示器管等等。
通常把数码管、符号管、米字管共称笔画显示器,而把笔画显示器和矩阵管统称为字符显示器。
基本的半导体数码管是由七个条状发光二极管芯片按图12排列而成的。
可实现0~9的显示。
其具体结构有“反射罩式”、“条形七段式”及“单片集成式多位数字式”等
图四
2.4.4键盘扫描
使用单片机P1口直接输入时的连接图,每个按键独占一条I/O口线,键盘的另一端接地。
无键按下时,单片机的输入口线状态为高电平;当某键按下时,该键对应单片机的输入口变为低电平,即可判定按键的位置。
图五
第三章软硬件设计与硬件调试说明
3.1软件设计与说明
多路数据采集系统具有采集、存储、显示等功能。
本设计应用TLC2543作为采集系器,并把采集到的电压模拟量转换成数字量。
送到单片机AT8051进行处理,可完成显示。
以此为基础设计采集一个通道的TLC2543A/D转换程序,值得注意的是,每次读取的数据是上一次采样的数据,所以第一次读得数据应当丢弃。
另外,程序是采用C语言编写。
图六
3.2硬件调试
图七:
硬件调试图组
硬件调试数据对照表一:
采集通道号
0
1
2
3
4
5
6
7
8
9
实际值(V)
5
1.749
4.35
2.5
3.05
3.54
4.7
3.8
1.25
2.05
显示值(V)
4.9
1.7
4.3
2.4
3.0
3.5
4.6
3.7
1.2
2.0
3.3硬件显示说明
本课程设计对题目进行了扩展:
由3路扩展到10路。
而且设定上电后通过0通道采集电源电压显示电源电压是否正常(即是否电压不足),而其余9个通道才是对所要采集的对象进行采集。
第四章课程设计总结
在这次设计过程中,我通过对题目所要求的目的,功能进行分析,确定了所要用到的硬件及设计的大致思路,之后,通过查找相关资料,对具体功能逐一分模块进行实现,通过C语言进行编写,最终实现了串行A/D转换器多路数据采集及显示系统的设计,使设计作品符合课程要求,而且在原课程要的基础上进行了扩展,成为一个可以运用到实际的作品。
而且从数据可以看出本课程设计的采集显示系统由于A/D转换位数的限制存在一定的量化误差。
参考文献
[1]、李建忠,单片机原理及应用,西安电子科技大学出版社,2002
[2]、何立民,MCS-51系列单片机应用系统设计系统配置与接口技术,
北京航空航天大学出版社,2001
[3]、张俊谟,单片机中级教程——原理与应用,北京,北京航空航天大学
出版社,2000.6
[4]、潘永雄,新编单片机原理与应用.西安:
西安电子科技大学出版社.2003
[5]宋家友.集成电子线路设计手册[M].福建科技出版社出版,2000.
[6]张友德等编.单片微型机原理、应用与实验[M].上海:
复旦大学出版社出版,2007.
[7]、吴建国.ADC0809A/D转换芯片的原理及应用.电子制作.2007/02
[8]、元增民;AT89S51单片机与ADC0809模数转换器的三种典型连接,长沙大学学报,2005/05
附录1:
C语言程
#include
//对P1口定义
sbitd1=P1^6;
sbitkey1=P1^7;
sbitcs=P1^2;
sbitclk=P1^3;
sbitdin=P1^1;
sbitdout=P1^0;
//
#defineucharunsignedchar
#defineuintunsignedint
uchara,x,y,z,date,temp;
ucharconword,qian=1,shi,ge,key;
uintdianya,temp1;
//制做LED显示查询表
ucharcodetable[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阴极个位数码管段码表
ucharcodetable2[]=
{0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//共阴极十位和小数数码管点显示表
ucharcodetable3[]={0x04,0x14,0x24,0x34,0x44,0x54,0x64,0x74,0x84,0x94,0xA4};//tcl2543初始化通道号表
bitcy;
sbitbit7=B^7;
voiddisplay(qian,shi,ge);//宏定义
voiddelay(z);
voidjp();
voiddaout();
//主函数
voidmain()
{
a=0;
key=0;
while
(1)
{
daout();//初始化调用
jp();//键盘扫描子程序调用
display(qian,shi,ge);//显示调用
}
}
//键盘扫描子程序,九通道切换
voidjp()
{
//a=1;
if(key1==0)//去除按键抖动
{
delay(20);
if(key1==0)//通道增通过按键来选择通道可选范围为0-9
{
a++;
if(a==10)
a=0;
key++;
if(key==10)
key=0;
}
while(!
key1);
}
if(d1==0)
{
delay(20);
if(d1==0)//通过按键来实现对通道号逆选,即通道递减
{
a--;
if(a==-1)
a=9;
key--;
if(key==-1)
key=9;
}
while(!
d1);
}
qian=a;
}
//延时子程序
voiddelay(z)
{
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
//显示子程序
voiddisplay(qian,shi,ge)
{
P2=0xfe;//选中qian位
P3=table[qian];//送qian位段码即显示通道号
delay(5);//延时
P2=0xff;
P2=0xfb;//选中十位
P3=table2[shi];//显示测得的电压值
delay(5);
P2=0xff;
P3=0xff;
P2=0xf7;//选中个位
P3=table[ge];//显示个位
delay(5);
P2=0xff;
P3=0xff;
delay(5);
}
//对TCL2543AD数据采集进行初始化子程序
voiddaout()
{
chari;
ucharvalue=0;
conword=table3[key];//对TCL2543初始化
cs=1;//对TCL2543清零cs由高到低有效
cs=0;
clk=0;//TCL2543在时钟脉冲下将采集数据输出
B=conword;
for(i=8;i>0;i--)//对2543输入控制字并获取输出值
{
cy=dout;
din=bit7;
clk=1;
B=B<<1;//左移
clk=0;
value=value<<1;
if(cy==1)
value++;
}
//二十进制转换子程序
dianya=value*5;
cs=1;
shi=dianya/256;//对获得的二进制数处理,转换成十进制数并处理为列表值
temp=dianya%256;
temp1=temp*10;
ge=temp1/256;
}
附录2:
硬件电路图