下载此文档

数据采集系统实验报告.docx


文档分类:高等教育 | 页数:约21页 举报非法文档有奖
1/21
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/21 下载此文档
文档列表 文档介绍
该【数据采集系统实验报告 】是由【guoxiachuanyue014】上传分享,文档一共【21】页,该文档可以免费在线阅读,需要了解更多关于【数据采集系统实验报告 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。任务要求
4路模拟屋输入,输入电压范怜|0〜5V,分辨率8位,转换时间lOOus,具有显示(数码管)测量结果(用10进制显示直流电压值或交流电压峰值)的功能:
1路模拟量输出,用来分别重现4路被采信号的波形(供示波器观测)
本数据采集系统是基于单片机AT89C51来完成的,4路的模拟电压通过通用的8位AQ转换器ADC0809转换成数字信号后,由单片机进行数据处理,并将处理后的数据送LED显示器显示。再经过常用的8位D/A转换器DAC0832将数字数据转换成模拟量,供示波器观测。
系统的方案选择和论证
根据题目基本要求,可将其划为如卜几个部分:
4路模拟信号A/D转换
单片机数据处理
LED显示测量结呆
D/A转换模拟量输出
系统框图如图1所示:
LED
显示
模拟输入2
模拟输入3
模拟开关
A/D
转换器
51单片机
键盘控制
模拟输入4
D/A
转换器
图1单片机数据采集系统框图
1、4路模拟信号A/D转换
由于被测电压范闱为0~5V,分辨率为8位,转换时间为10011S,所以A/D转换部分,本系统选择常用的8路8位逐次逼近式AD转换器ADC0809o
ADC0809芯片有28条引脚,采用双列直插式封装。下面说明各引脚功能。
INO〜IN7:8路模拟量输入端。
2-1〜2-8:8位数字量输出端。
ADDA、ADDE、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。
ALE:地址锁存允许信号,输入,高电平有效。
START:A/D转换启动信号,输入,高电平有效。
EOC:A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLK:时钟脉冲输入端。要求时钟频率不高于640KH乙
REF(+)、REF(-):基准电压。
Vcc:电源,单一+5V。
GND:地。
ADC0809的工作过程是:首先输入3位地址,并使ALE=b将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。F降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
2、单片机数据处理
选择美国ATMEL公司的CMOS8位单片机AT89C51,〜6V,具有低电压低功耗性能和高性价比,兼容标准MCS-51指令系统,4Kbvtes的PEROM和128bvtes的RAM,片内置通用的8位中央处理器(CPU)和Flash存储单元。
AT89C51是一种带有4KB闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,可为很多嵌入式控制系统提供灵活且价廉的方案。所以,本设计釆用ATMEL公司的AT89C51作为程序的主控芯片。
AT89C51数据总线是由POII提供的,POII本身能以多种方式提供数据总线和地址总线。当ALE输出信号为高电平时,P0将输出的数据锁入总线驱动器中作为地址的低8位,然后和P2送出来的高8位地址一起组成一个完整的16位地址,以寻址到外部的64KB的地址空间。AT89C51的地址总线比较简单(只有3个:RD、WR、PSEN),其中RD是用来读取外部数据内存的控制线,WR是用来写数据到外部数据内存的控制线,PSEN是用来存取外部程序内存的读取控制线。
3、LED显示测量结果
这里选择的是广州周立功单片机发展有限公司自行设计的数码管显示驱动及键盘扫描管理芯片ZLG7289B,它可直接驱动8位共阴式数码管(或64只独立LED),同时还可以扫描管理多达64只按键。ZLG7289B内部含有显示译码器,可直接接受BCD码或16进制码,并同时具有2种译码方式。此外,还具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。ZLG7289B采用SPI串行总线与微控制器接I】,仅占用少数几根I/OII线。利用片选信号,多片ZLG7289B还可以并接在一起使用,能够方便地实现多于8位的显示或多于64只按键的应用。
4、D/A转换模拟量输出
在本设计中D/A转换的作用是使得采集处理过的数据通过D/A转换电路后送示波器进行观察。这里选择了DAC0832这一D/A转换器。它是一个8位D/A转换芯片,唯一电源供电,从+5V—15V均可正常工作,其引脚功能说明如下:
DIO〜DI7:数据输入线,TLL电平。
ILE:数据锁存允许控制信号输入线,高电平有效。
CS:片选信号输入线,低电平有效。
WR1:为输入寄存器的写选通信号。
XFER:数据传送控制信号输入线,低电平有效。
WR2:为DAC寄存器写选通输入线。
Ioutl:电流输出线。当输入全为1时Ioutl最人。
Iout2:电流输出线。其值与Ioutl之和为一常数。
RFb:反馈信号输入线,芯片内部有反馈电阻.
Vcc:电源输入线(+5W15v)
Vref:基准电压输入线(-10v~+10v)
AGND:模拟地,模拟信号和基准电源的参考地.
DGND:数字地,两种地线在基准电源处共地比较好
二、系统的硬件设计
本系统硕件电路包扌舌以卞几个部分:
AT89C51外鬧电路(如时钟电路、复位电路等)
AT89C51和ADC0809接I丨电路
AT89C51和DAC0832接I丨电路
LED显示电路
1、AT89C51外围电路(如时钟电路、复位电路等)
AT89C2051中河一个用于构成内部振荡器的高増益反相放人器,引脚XTA11和XTAL2分别是该放人器的输入端和输出端,这个放人器与作为反馈元件的片外石英晶体一起构成自己振荡器,外接石英晶体和电容Cl、C2接在放人器的反馈回路中构成并联振荡电路。对外
接电容没有太严格的要求,但电容容量的人小会轻微影响振荡频率的高低、振荡器的稳定性等,这里选用12NIHZ的石英晶体,电容选用33pF,如图2所示。
复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分■合过程中引起的抖动而影响复位。本设计的时钟电路如图3所示。
XTAL1
Y2
1DH
12MHz
XTAL2
—C5
I33pF
二C6
I33pF
图2时钟电路
图3复位电路
2、AT89C51和ADC0809接口电路
AT89C51和ADC0809接II电路如图4所示,START和ALE互连可使ADC0809在接收模拟量路数地址时候启动工作。。平时,。ALE的正脉冲使得ADDA、ADDB和ADDC上的地址锁存,选中IN0-IN3路模拟电压送入比较器,这里ADDA、,。EOC线经过反相器和AT89C51的INT1线相连,这里采用中断方式来和ADC0809传送AQ转换后的数字量。为了给OE线分配一个地址,。平时,,从而使得OE处于低电平封锁状态。在响应中断时候,单片机执行中断服务程序使得OE变为高电平,从而打开三态输出锁存器,让CPU提取A/D转换后的数字量。
ADC0809的时钟CLK由两个D触发器把AT89C51的ALE信号4分频后来得到,如图5所示,如果使用单片机时钟电路选择12MHz的晶振,那么ALE信号的频率为2MHz(12/6),经两个串联D触发器四分频之后,CLK端的频率为500KHZ,能够满足ADC0809要求。
WR
DXC4LS14N'
oiO1cl12pl23
KfYB
15
14
31
XTAL!】9
XTAL:-18
ALE3
U1
Pl002)
Plt(T2£X)
Pl2
P15
P14
P15
P!.6
Pl:
P35^11)
P;?(iNT0)
P35CH)
(T0)
JVP?
>muXT.^.2
RS7
PI."
AT89CMRC
Cl
dPR
>CLK
CLR
"T5"
(ADOJPOO(ADl)PC*1(AD2)F?2(AD5JPO5<AD4)F>((AD脚?
GAKiPZO(A9)P2!(A10P12(A1BP23((A阳5(;(AIM?:?
VCCGND(?2IPR0C
芬p:A
38%0Z
33t>3>
33
52t>3Z
_
•*
■.
24
2?
CVCC
10RXD~H~TXD=~~?n
VCC
OZ9
U3
VCC
EOCOE
CLKSTART
10CLK
26
ADDA:

t>0.~AbDFFADDCT
-_S
~
VCC
•4LS}JC)
ooorZpOl14/辺s/0Q4is/g19
ADDA
25ADD.®~24ADCRADDC
GND
ADC您>CCV
V5A'^S02
ADDCALE
VREf+VREF
VCC12
16
"4LS02U5B
图4AT89C51和ADC0809接口电路
VCC
DM74LS'4AN
DPR
Q
>CLK
CLR
Q
U4B
9CLK
D'ELSrAN
图5时钟分频电路

VCC
\VR
图6AT89C51和DAC0832接口电路
DAC0832
CS1聽貂盘DI4DT5DI6DI7芻
IS
19T?
dOO7
DOI6
©025.
□03T
??

Ml
AT89C51和DAC0832接II时,可以有三种方式:直通方式、单缓冲方式和双缓冲方式。本系统选择单缓冲方式,电路如图6所示。ILE直接接到VCC,允许数字量输入,看和XFER由译码器的输出端F7控制,从而控制DAC0832的8位输入寄存器。AT89C51的顾和DAC0832的顾三连接,阪\直接接地,这样碾\和阪2之间的延迟可以满足不小于500ns。参考电压直接选择VCCoRbf作为运算放人器反馈线,接到UA741输出端,Ioutl和Iout2接到其输入端。
4、LED显示电路
LED显示电路如图7所示。图中,VCC和GND之间接入100uF的电容,使得电源更加稳定,通过拉低而引脚的方法复位ZLG7289B,四个数码管是共阴式的,至&:是限流电阻,&至傀是下拉电阻。KC0/DIG0、KC3/DIG3来作为位选信号来选择LED数码管的显示。在这里使用键盘功能,真正实现人机交互,四个按键开关分别控制四路模拟信号的输入。晶振这里选择和单片机同样的晶振,即12MHZo数码管0显示选择通道,数码管1、2、3显示电压峰值。ZLG7289B的CS、、,,也即中断1,实现模拟信号输入通道的选择。
vcc
RO10K
CZJ-
ciIL
lOOuF
==C2
l->0nF
RTCC
RST
VCC
0SC1
NC
0SC2
GND
KC'DIG"
NC
KC6DIG6
CS
KC5DIG5
CLK
KC4DIG4
DIO
KC3DIG3
INT
KC2DIG2
SGKRO
KC1DIG1
SFKR1

SEKR2
KR*Dp
SDKR3
KR6SA
SCKR4
KR5SB
ZLGVS9B
C4
C5
C3
lOpF
R2[OOK
CZ1—
RJ18K{=)—
Rr1OOKtzi—
DSl
s
1・2・3abcdefgdp
16
A・B・c・D・E・F・G
图7LED显示电路部分
DS2
10
ABcDEFG
to-
DS3
3bcdcfs-dp
NC
oy
a2
ba
;Q'
g&gGND
5
ABcDEFG
10
图8LED显示电路部分(2)
三、系统的软件实现
本系统软件包括系统初始化、数据采集与处理,AD转换、DA转换和数据显示几个部
分。其中主程序流程图如图8所示,AD转换程序流程图如图9所示,DA转换程序如图10所示。实验源程序见附录2.
启动D/A转换
I1
示波器显示
返回
图9主程序流程图
初始化
咅动AD转换
Y
/
读取转换结果
显7T
f
数据
返回
图10A/D转换流程图
保存结果保存结果保存结果保存结果
〉返回<
图11键盘控制程序流程图
四、电路和程序调试
对电路的调试氛I韦I对硕件的调试和对软件的调试。所以在调试的时候,先检查硕件电路各接线是否正确,有误短路现象,如果行那就要及时改正。软件的调试,首先要在KeilC51上面编译运行通过,由于有中断的缘故,所以中断部分要结合硬件电路进行调试,在这里可以借用实验用Momtor-51仿真器来进行调试,而不是一次次把程序写进单片机进行调试,那样不仅麻烦,而且还有可能写坏单片机。
在软件硬件结合起来调试的过程中,要分模块进行调试,比如本实验中,有键盘中断、LED显示、AD转换和DA转换四个大的模块,根据程序流程图,应该依次对上面四个模块分别进行调试检查。调试过程中,要熟悉使用示波器、万用表等工具,硬件部分,上电以后,要用示波器测试晶振是否正常工作,单片机和其他芯片个引脚电位是否正常。软件部分,可以通过KeilC51来观察各特殊寄存器和某些变量的值来验证程序和电路的准确性,也可以设置断点来查看程序的运行路线,比如要查看中断是否执行,就可以在中断服务程序里面设置断点。
卞面结合本人在调试中遇到的部分问题加以说明。
1、LED不显示
原因:画原理图时候由于粗心所致,漏画一结点,如图12所示。从而导致SGKRi(i=0、7)全部为低电平(示波器测得),而ZLG7289驱动的是共阴式数码管,所以数码管不显示。解决方法:按照图13接通VCC.

数据采集系统实验报告 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息