波形的采集存储与回放系统.docx
《波形的采集存储与回放系统.docx》由会员分享,可在线阅读,更多相关《波形的采集存储与回放系统.docx(47页珍藏版)》请在冰豆网上搜索。
波形的采集存储与回放系统
波形的采集存储与回放系统
摘要
随着电子信息技术的迅猛发展,医疗、卫星、雷达、现代航空等众多领域都需要实现对数据进行存储,回放等要求,信号的采集、存储在信息技术行业中应用的也越来越广泛。
本设计采用单片机作为总控制芯片,分别用A/D转换器和D/A转换器进行模数和数模转换,并将采集到的波形数据存储到Flash存储器中。
按下采集键后,该系统对0~+5v变化的波形进行采样并将采样的数据存储起来;按下回放键后,该系统将采样波形进行循环回放;在采集时可改变幅值,并且采集到的数据也会同时在回放的时候变化;在回放时,若按下存储键,将停止波形的回放,显示一条直线;若按下回放键,将终止当前波形,并采集新的波形。
关键词:
采集,存储,回放,单片机,波形
WaveformAcquisitionStoragingandPlaybackingSystem
ABSTRACT
Withtherapiddevelopmentofelectronicinformationtechnology,manyfieldssuchasMedicaltreatment,satellite,radar,AdvancedFlightneedstoimplementthedatastorage,playback,Signalacquisition,storageintheapplicationsofinformationtechnologyindustryisbecomingmoreandmorewidely.
Thisdesignusesthemicrocontrolleasthecontrolchip,RespectivelywiththeA/DconverterandD/Aconverterasthedigitalanalogyconverter.AndwillbecollectedwaveformdataStoredintheFlashmemory.Afterpresstheacquisitionbutton,ThesystemwillbeSamplingwaveformthatconversionfrom0~4VandstoringintheFlashmemory.Afterpresstheplaybackbutton,Thesystemwillcyclesamplingwaveformplayback.Atthetimeofacquisitioncanchangeamplitude,Andthecollecteddatawillbechangewhenplaybackatthesametime,Duringplayback,Ifyoupressthestorebutton,Willstoptheplaybackwaveform,accordingtoastraightline,Ifpresstheplaybackbutton,willendthecurrentwaveform,andnewwaveformacquisition.
KEYWORDS:
Acquisition,storage,playback,microcontroller,waveform
目录
摘要…………………………………………………………………………………………I
ABSTRACT…………………………………………………………………………………II
1绪论…………………………………………………………………………………………1
1.1选题的意义…………………………………………………………………………1
1.2研究现状与发展趋势……………………………………………………………2
2波形采集存储与回放系统的设计原理与功能……………………………………………3
2.1波形采集存储与回放系统的设计原理……………………………………………3
2.2波形采集存储与回放系统的功能…………………………………………………3
2.3总体开发计划和课题所达到的功能目标和技术指标……………………………3
2.3.1达到的功能目标…………………………………………………………3
2.3.2技术指标……………………………………………………………………4
2.4本章小结……………………………………………………………………………4
3方案论证选择与硬件设计…………………………………………………………………5
3.1采样方式选择………………………………………………………………………5
3.2A/D与D/A转换选择………………………………………………………………5
3.3触发方式选择………………………………………………………………………5
3.4输入模块……………………………………………………………………………6
3.4.1A路输入电路…………………………………………………………………6
3.4.2B路输入………………………………………………………………………6
3.5A/D转换器…………………………………………………………………………7
3.5.1ADC0809引脚图以及接口…………………………………………………7
3.5.2ADC0809使用要求及应用说明……………………………………………8
3.6主控模块……………………………………………………………………………8
3.6.1AT89S52芯片主要特点及性能………………………………………………8
3.6.2AT89S52芯片的最小电路系统以及接口……………………………………9
3.7D/A转换器…………………………………………………………………………11
3.7.1DAC0832的引脚图以及接口………………………………………………11
3.7.2DAC0832的工作方式………………………………………………………11
3.7.3实现D/A转换时,主要涉及的参数………………………………………12
3.8输出模块…………………………………………………………………………12
3.9显示模块…………………………………………………………………………13
3.10存储模块…………………………………………………………………………13
3.11本章小结…………………………………………………………………………14
4软件设计…………………………………………………………………………………15
4.1软件设计目标……………………………………………………………………15
4.2Keil2简介…………………………………………………………………………16
4.3软件功能模块分类………………………………………………………………16
4.3.1主程序流程…………………………………………………………………16
4.3.2LCD子程序流程……………………………………………………………18
4.3.3按键处理子程序流程………………………………………………………18
4.3.4回放子程序流程……………………………………………………………19
4.3.5采集并存储子程序流程……………………………………………………20
4.3.6存储处理子程序流程………………………………………………………21
4.4本章小结…………………………………………………………………………21
5系统测试及结果分析……………………………………………………………………22
5.1测试使用仪器与设备……………………………………………………………22
5.2测试方案与测试结果……………………………………………………………22
5.2.1测试方法……………………………………………………………………22
5.2.2测试结果与分析……………………………………………………………22
5.2.3误差产生原因………………………………………………………………25
5.3设计和调试中遇到的问题………………………………………………………25
6小结……………………………………………………………………………………26
致谢…………………………………………………………………………………………28
参考文献……………………………………………………………………………………29
附录…………………………………………………………………………………………30
附录ⅠAT89S52与LCD1602的接口程序…………………………………………………30
附录ⅡAT89S52与ADC0809的连接程序…………………………………………………31
1绪论
1.1选题的意义
电子信息技术的迅猛发展,现代航空、雷达、卫星、医疗等众多领域常常需要对波形进行采集、存储和回放,波形信号的采集、存储在信息技术行业应用的越来越广泛。
从常规的波形发生器、波形显示器到现在的数码管显示液晶等都有了本质性的变化。
从以前的模拟信号到现在越来越应用广泛的数字信号,无处不显示电子信息技术的快速发展。
所以在波形采集存储方面也应用了更为稳定和方便的数字信号直接进入液晶显示器的显示。
众所周知,近几十年以来,对于高速、海量数据的采集、存储和回放一般都是采用FPGA或者是DSP来处理的。
然而FPGA和DSP技术来处理这些数据所需要的功耗是一个很大的麻烦。
然而现在的产品对于功耗的要求越来越苛刻。
人们对于产品有两个显著的要求,第一:
功耗低,耐持久。
第二:
便携,最好能随身携带。
从而在设计本系统时,基于数字存储示波器的原理,以单片机AT89S52为控制核心通过高速AD对信号的实时采样。
数据采集系统,一般是由单片机为核心及其一些外围芯片构成的数据采集系统。
单片机具有体积小、功耗低、成本低、可靠性高、灵活方便、价廉以及控制功能强特点而得到广泛的应用。
基本组成如图1-1所示。
图1-1数据采集系统的组成
采集系统硬件主要包括传感器、A/D转换器、单片机、输入/输出接口电路等。
由单片机作为控制单元的数据采集系统的工作过程可分为以下几个步骤:
数据采集是将被测量的信号转换为能够被单片机所识别的信号并输入给单片机;数据处理是由单片机执行以测试为目的的算法程序后,得到与被测参数对应的测量值或形成相应的决策与判断;数据输出是将处理结果送给输出设备,进行显示、储存等操作。
1.2研究现状与发展趋势
随着计算机的产生与发展,电子信息技术也发展的越来越快。
为了便于人们更快捷的运算,便有了数字系统。
如今数字系统也被应用到国民经济、国防建设和科学试验的各个领域。
但是数字系统只能处理离散的数字信号,外部世界提供给我们的却是大量的模拟信号,我们就需要把这些模拟信号转换为便于处理和储存的数字信号。
作为信息科学的一个重要分支,数据的采集技术应运而生。
将模拟信号转换成数字信号或者直接来自传感器的其他数字信号送往计算机,并进一步予以处理、显示、传输与记录的过程就成为数据采集。
目前国内外,在许多应用场合,人们需要高速数据采集系统,甚至超高速系统。
目前就采集系统的研究有很多种。
从计算机并口采集到串口采集,从基于ISA总线的采集系统到基于PCI总线的采集系统,从声音信号的采集到图像数据的采集都有以下相关的资料和文献。
并且在设计方面也有不同的设计方法,取得了很大的成就。
以后不论是什么,都要朝着简便、快速的方向发展,波形的采集、存储与回放系统也一样,要越来越简便,让别人可以很明确的知道系统的作用、组成等一些只是,而且系统也要功耗低,耐持久,这也就要求本系统里面的元器件更加精炼,对元器件的要求也会增加,将要找到更合适的元器件来代替之前所用的元器件。
以后发展的趋势会是将系统如何的简化,而且可以实现更多的功能。
2波形采集存储与回放系统的设计原理与功能
2.1波形采集存储与回放系统的设计原理
在本设计系统中,将采用一种基于AT89S52单片机的两路数据采集系统的设计方案,以实现实时数据数据采集会存储回放的功能。
系统的总体结构图如图所示:
图2-1总体结构图
2.2波形采集存储与回放系统的功能
各模块的功能如下:
A/D转换器:
将电信号(模拟信号)转换为数字信号。
D/A转换器:
将数字信号转换成模拟信号输出。
A路输入模块:
采集单极性模拟信号并进行处理,然后输入到转换器中,进行模数的转化。
B路输入模块:
采集双极性模拟信号并进行处理,然后输入到转换器中,进行模数的转化。
液晶显示模块:
显示所采集的信号的电压,幅度等数值。
2.3总体开发计划和课题所达到的功能目标和技术指标
2.3.1达到的功能目标
(a)能完成对A通道单极性信号(高电平约4V、低电平接近0V)、频率约1kHz信号的采集、存储与连续回放。
要求系统输入阻抗不小于
,输出阻抗不大于
。
(b)采集、回放时能测量并显示信号的高电平、低电平和信号的周期。
原信号与回放信号电平之差的绝对值
,周期之差的绝对值
。
(c)本系统处理的正弦波信号频率范围限定在10Hz~10kHz,三角波信号频率范围限定在10Hz~2kHz,方波信号频率范围限定在10Hz~1kHz。
(d)预留电源电流的测试点。
(e)采集与回放时采用示波器监视。
(f)采集、回放时显示的周期和幅度应是信号的实际测量值,规定采用十进制数字显示,周期以“ms”为单位,幅度以“V”为单位。
2.3.2技术指标
(a)A/D位数选择依据
通用示波器垂直方向共8格,要求每格32级,共有
级。
(1-1)
因此采用8位A/D以上的即可。
(b)采用频率选择依据
假设扫描速度为ts/div,每格点数为n,采样频率为
,则:
(1-2)
当n=20时,针对不同的扫描速度,可得到不同的采样频率。
在一定的情况下,扫描速度的改变是通过改变采样频率实现的。
对于10KHz的正弦波,采样频率为1MHz时,每周期可采样100个点,由采样值可以很好地恢复采样前的信号。
因而,选用采样频率为1MHz以上的A/D即可满足单路输入时对频率范围的要求。
若考虑到双路输入的情况,所需A/D最高采样频率应为2MHz。
因而,应选择采样频率为2MHz以下的A/D。
(c)波形回放频率选择依据
显示屏上显示的信号是从存储器中读出的信号,只要使观察到的波形不闪烁即可。
本设计中,单通道时刷新频率为200Hz;双踪示波时,每通道刷新频率为100HZ。
通过计算,每秒读出的点数为
。
即RAM读出频率为40KHz,要求D/A转换速率高于40KHz。
2.4本章小结
本章主要是研究了波形采集存储与回放系统的大概设计原理与各个部分模块的作用,说明了本设计所要求达到的目标以及为了达到目标所要的技术指标对整个系统有了一定的了解,并且为以后的着手设计提供了方便之处。
3方案论证选择与硬件设计
3.1采样方式选择
模拟信号数字化方式很多,不同的方法有不同的应用,采用方式对信号的影响最大。
通常采用的方案有:
方案一:
等效时间采样法。
采用中高速模数转换器,对于频率较高的周期性信号采用等效时间采样的方法,即对每个周期仅采样一个点,经过若干个周期后就可对信号各个部分采样一遍。
而这些点可以借助步进延迟方法均匀地分布于信号波形的不同位置。
其中步进延迟是每一次采样比上一次样点的位置延迟
时间。
只要精确控制从触发获得采样的时间延迟,就能够准确地恢复出原始信号。
方案二:
实时采样。
实时采样是在信号存在期间对其采样。
根据采样定理,采用速率必须高于信号最高频率分量的两倍。
对于周期的正弦信号,一个周期内应该大于两个采样点。
为了不失真的恢复原被测信号,获得比较好的信号,根据实践经验。
一个信号周期内对信号取23个点进行采样。
等效时间采样虽然可以对很高频率的信号进行采样,可是步进延迟的采样技术与电路较为复杂。
再者,它只限于处理周期信号,而且对单次触发采样无能为力。
实时采样可以实现整个频段的全速采样,因此设计采用实时采样。
3.2A/D与D/A转换选择
方案一:
采用ADC0809的8位单断模拟输入信号中的一个进行A/D转换,允许8路模拟量分时输入,共用一个A/D转换器进行转换,可以进行多数据采集。
而地址锁存与译码电路完成对A、B、C三个地址位进行锁存和译码,转换结果通过三态输出锁存器存放、输出。
方案二:
PCF8591是具有IIC接口,有AIN0~AIN3四个模拟输入通道和一个模拟输出通道,最多可以有8片8591连接到I2C总线。
通过时钟线SCL和数据线SDA与单片机之间的数据进行传输。
经比较,我们选择方案一。
3.3触发方式选择
要使屏幕上显示稳定的波形,则需将被测信号本身或者与被测信号有一定时间关系的触发信号加到触发电路。
触发源选择确定触发信号由何处供给。
通常有三种触发源:
内触发(INT)、电源触发(LINE)、外触发(EXT)。
题目要求选择内触发,即使用被测信号作为触发信号。
方案一:
采用数字触发方式。
对波形信号进行采集,将采集到的波形数据和触发电平(可由键盘设置)进行比较,找到波形在上升过程中大于或等于该触发电平的点,即得到触发,此时开始对波形进行存储。
因为本来就需要对波形信号进行采集,使用这种方法无需要增加额外的硬件电路,实现方便。
但是,对波形每个周期只采集有限个点,不可能每次都能采集到等于触发电平的点(这时不得不以大于该电平的值为触发电平),从而使触发位置不稳定,连续触发时输出波形会有抖动现象。
方案二:
采用模拟触发方式。
通过比较器LM324测波形信号和触发电平进行比较,大于触发电平时输出为高电平,小于触发电平时则输出低电平,即可得到信号被整形后的脉冲序列,再在该脉冲序列的上升沿开始存储波形即实现了触发存储的功能。
这种触发方式稳定,故我们采用了这种方案。
3.4输入模块
输入电路主要由比较电路和放大电路组成,主要完成对波形的采集、放大。
3.4.1A路输入电路
A路输入:
系统要求A路输入信号为单极性(0~4V),采集后在ADC0809中进行模数的转换,计算出相应的真正输入值,从而显示A路的最大值和最小值。
最后输出送入单片机里面进行采样。
图3-1A路输入电路图
3.4.2B路输入
系统要求B路输入信号为双极性,因此需要将电压放大至A/D转换器所能判别的范围内,这样可以提高系统对B路信号的分辨率,同时需要将输入双极性信号转换为单极性信号,这样才能便于AD转换器识辨。
图3-2B路输入电路图
3.5A/D转换器
3.5.1ADC0809引脚图以及接口
本系统采用ADC0809作为模数转换器。
ADC0809引脚图如下:
图3-3ADC0809引脚图与元件图
D7-D0:
8位数字量输出引脚;IN0-IN7:
8位模拟量输入引脚;VCC:
+5V工作电压;GND:
地;REF(+):
参考电压正端;REF(—):
参考电压负端,两种信号用于启动A/D转换;START:
A/D转换启动信号输入端;ALE:
地址锁存允许信号输入端;EOC:
转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平;OE:
输出允许控制端,用以打开三态数据输出锁存器;CLK:
时钟信号输入端(一般为500KHz);A、B、C:
地址输入线。
3.5.2ADC0809使用要求及应用说明
ADC0809对输入模拟量要求:
信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。
应用说明如下:
(a)ADC0809内部带有输出锁存器,可以与AT89S52单片机直接相连。
(b)初始化时,使ST和OE信号全为低电平。
(c)送要转换的哪一通道的地址到A,B,C端口上。
(d)在ST端给出一个至少有100ms宽的正脉冲信号。
(e)是否转换完毕,我们根据EOC信号来判断。
(f)当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。
地址输入和控制线:
4条。
ALE为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进入转换器进行转换。
A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。
(g)ST为转换启动信号。
当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。
EOC为转换结束信号。
当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。
OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。
OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。
D7-D0为数字量输出线。
(h)CLK为时钟输入信号线。
因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHz。
3.6主控模块
3.6.1AT89S52芯片主要特点及性能
AT89S52是一种带8K字节Flash可编程可擦除只读存储器(EPROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89S52是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S52是一种高效微控制器,AT89S52是它的一种精简版本。
AT89S52单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
与MCS-51兼容,8K字节可编程闪烁存储器,寿命:
1000写/擦循环,数据保留时间:
10年,全静态工作:
0Hz-33Hz,三级程序存储器锁定,128*8位内部RAM,32可编程I/O线,三个16位定时器/计数器,八个中断源,可编程串行通道,低功耗的闲置和掉电模式,掉电后中断可唤醒,看门狗定时器,片内振荡器和时钟电路。
3.6.2AT89S52芯片的最小电路系统以及接口
图3-4AT89S52最小系统
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进