基于单片机的嵌入式简易数字示波器设计_第1页
基于单片机的嵌入式简易数字示波器设计_第2页
基于单片机的嵌入式简易数字示波器设计_第3页
基于单片机的嵌入式简易数字示波器设计_第4页
基于单片机的嵌入式简易数字示波器设计_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

苏州大学本科生毕业设计(论文)-i-基于单片机的嵌入式简易数字示波器设计【摘要】:示波器是电子测量中一种用途十分广泛的仪器,被应用于各个领域,将电信号变成可视图像。随着微电子技术的快速发展,示波器从模拟示波器向数字示波器发展。与模拟示波器相比,数字示波器具有许多优点,并开始逐步取代模拟示波器,成为市场上的主流。本文主要完成了基于单片机简易数字示波器的设计,包括硬件设计和软件设计两大部分。硬件设计上,信号波形采集采用的是12位开关电容型逐次逼近模数转换器,最大转换时间为10s,转换精度小于等于0.05%。控制器选用AT89S52单片机,解决了一般示波器使用一片单片机,运行速度明显不足的问题。波形显示部分采用液晶显示模块,具有简单易实现、显示效果好等优点。【关键词】:示波器;单片机;A/D转换;苏州大学本科生毕业设计(论文)-ii-Abstract:Oscilloscopeelectronicmeasuringinstrumentsinaverywiderangeofuses,hasbeenappliedinvariousfields,lettheelectricalsignalintovisibleimage.Withthefastdevelopmentofmicroelectronictechnology,oscilloscopedevelopingfromanalogoscilloscopetodigitaloscilloscope.Comparedwithanalogoscilloscope,digitaloscilloscopehasmanyadvantages,andgraduallyreplacetheanalogoscilloscope,andbecomethemainstream.Thispapermainlycompletedthedesignofsimpledigitaloscilloscope,includinghardwaredesignandsoftwaredesigntwoparts.Thedesignofhardware,thesignalwaveformsamplingby12switchedcapacitortypesuccessiveapproximationanalog-to-digitalconverter,themaximumconversiontimeis10s,theconversionprecisionislessthanorequalto0.05%.ControllerusingAT89S52MCU,solvethegeneraloscilloscopeusingasinglechip,therunningspeedisobviouslyinsufficientproblem.Waveformdisplaypartoftheliquidcrystaldisplaymodule,hassimpleandeasytoimplement,theadvantagesofOscilloscopedisplayeffectandsoon.Keywords:Oscilloscope;MCU;A/Dconversion;苏州大学本科生毕业设计(论文)-iii-目录前言.2第1章数字示波器.3第1.1节认识数字示波器.3第1.2节设计要实现的目标.4第1.3节设计的主要内容.4第2章简易数字示波器系统总体设计.5第2.1节硬件系统方案选择.5第2.2节软件系统方案选择.6第3章简易数字示波器系统分析.7第3.1节硬件系统.7第3.2节软件系统.14第4章系统测试.16第4.1节测试条件和方法.16第4.2节测试分析.16结论.17参考文献.18致谢.18附录.19附录1:硬件原理总图.19附录2:嵌入式数字示波器实物.20附录3:简易数字示波器的PCB图.21附录4:简易数字示波器测试过程中的实物图.22苏州大学本科生毕业设计(论文)-iv-附录5:部分源程序.23苏州大学本科生毕业设计(论文)第1页前言示波器是最常用在现代电子测量仪器,它是一种可以用来观察,测量,记录瞬时电压,电子仪器与时间的关系显示波形。可以显示信号的许多特性:信号幅度随时间变化的波形曲线,测试各种不同的电量,如电压、电流、频率、相位差、调幅度。是否存在故障使得信号失真、信号的直流分量和交流分量,噪声号的噪声值随时间变化情况,多个信号的分析比较。在示波器上显示有助于深入了解被测对象。典型的示波器产生一个二维的波形,利用狭窄的、由高速电子组成的电子束,打在涂有荧光物质的屏面上,就可产生细小的光点。在被测信号的作用下,电子束就好像一支笔的笔尖,可以在屏面上描绘出被测信号的瞬时值的变化曲线。模拟示波器,由于CRT的余辉时间很短,难于显示频率低的信号。由于示波管上的扫描轨迹亮度和扫描速度成反比,所以一些具有快速上升、下降时间的低重复速度信号就很难看到。数字存储示波器(DSO,DigitalStorageOscilloscope)随着模数转换器(ADC)的发展而发展的示波器。A/D转换器把输入示波器信号的瞬时值转变为对应的二进制数字值,并按时间顺序存储在存储器中。在信号采集完成后,将这一系列的数字从数字示波器取出,再经过一系列的处理后在屏幕上显示输入信号。单片微型计算机简称单片机,是典型的嵌入式微控制器(MicrocontrollerUnit),单片机芯片常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成更复杂的而对体积要求严格的控制设备当中。苏州大学本科生毕业设计(论文)第2页第1章数字示波器第1.1节认识数字示波器1.1.1.数字示波器简介数字示波器是数据采集,A/D转换,软件编程等一系列的技术制造出来的高性能示波器。数字示波器一般支持多级菜单,能提供给用户多种选择,多种分析功能。还有一些示波器可以提供存储,实现对波形的保存和处理。目前高端数字示波器主要依靠美国技术,目前国内品牌的示波器在性能上已经可以和国外品牌抗衡,且具有明显的性价比优势。数字示波器是设计、制造和维修电子设备不可或缺的工具。随着科技及市场需求的快速发展,工程师们需要最好的工具,迅速准确地解决面临的测量挑战。作为工程师的眼睛,数字示波器在迎接当前棘手的测量挑战中至关重要。数字示波器因具有波形触发、存储、显示、测量、波形数据分析处理等独特优点,其使用日益普及。由于数字示波器与模拟示波器之间存在较大的性能差异,如果使用不当,会产生较大的测量误差,从而影响测试任务。1.1.2.数字示波器分类数字示波器分为数字储示波器(DSO,DigitalStorageOscilloscope)、数字荧光示波器(DPO,DigitalPhosphorOscilloscope)、数字荧光示波器(DPO,DigitalPhosphorOscilloscope)。数字存储示波器(DSO):将信号数字化后再立建波形,有记忆、存储被观测信号的功能,可以用来观测和比较单次过程和非周期现象、低频和慢速信号,以及不同时间不同地点观测到的信号数字荧光示波器(DPO):通过多层次辉度或彩色可显示长时间内信号混合信号示波器(MSO):把数字示波器对信号细节的分析能力和逻辑分析仪多通道定时测量能力组合在一起,可用于分析数模混合信号交互影响。1.1.3.重要指标带宽是示波器最重要的指标之一。模拟示波器的带宽是一个固定的值,而数字示波器的带宽有模拟带宽和数字实时带宽两种。数字示波器对重复信号采用顺序采样或随机苏州大学本科生毕业设计(论文)第3页采样技术所能达到的最高带宽为示波器的数字实时带宽,数字实时带宽与最高数字化频率和波形重建技术因子K相关(数字实时带宽=最高数字化速率/K),一般并不作为一项指标直接给出。从两种带宽的定义可以看出,模拟带宽只适合重复周期信号的测量,而数字实时带宽则同时适合重复信号和单次信号的测量。厂家声称示波器的带宽能达到多少兆,实际上指的是模拟带宽,数字实时带宽是要低于这个值的。例如说TEK公司的TES520B的带宽为500MHz,实际上是指其模拟带宽为500MHz,而最高数字实时带宽只能达到400MHz远低于模拟带宽。所以在测量单次信号时,一定要参考数字示波器的数字实时带宽,否则会给测量带来意想不到的误差。采样速率是数字示波器的一项重要指标,采样速率也称为数字化速率,是指单位时间内,对模拟输入信号的采样次数,常以MS/s表示。如果采样速率不够,容易出现混迭现象。采样速率与t/div的关系:每台数字示波器的最大采样速率是一个定值。但是,在任意一个扫描时间t/div,采样速率fs由下式给出:=N为每格采样点当采样点数N为一定值时,fs与t/div成反比,扫速越大,采样速率越低。综上所述,使用数字示波器时,为了避免混迭,最好置于扫速较快的位置。如果想要捕捉到瞬息即逝的毛刺,则最好置于扫速较慢的位置。第1.2节设计要实现的目标本文设计的目的主要是利用A/D转换模块、单片机、液晶显示模块等配合外围电路实现对输入量的波形、幅值、频率显示。用户只需要把待测信号输入转换器,不用其他的操作,示波器自动在显示器上显示波形、幅值、频率。第1.3节设计的主要内容本设计中,对于输入的信号,首先由信号调理电路将信号进行整形,滤波处理,然后将处理后的信号送入到A/D转换器的模拟输入端,由A/D转换器对输入的模拟信号进行数字化处理,数字化处理后的数据存储在AT89S52的RAM中,数据采集完成后,经过一定的数字信号处理算法,计算出波形的相关参数,并对波形进行重建送入到LCD液苏州大学本科生毕业设计(论文)第4页晶显示器中显示。苏州大学本科生毕业设计(论文)第5页第2章简易数字示波器系统总体设计第2.1节硬件系统方案选择2.1.1.方案一、使用AT89S52单片机采用AT89S52单片机为控制核心,将输入信号通过A/D转换后将模拟信号转换成数字信号,再通过AT89S52单片机将数据锁存至外部RAM,然后由单片机控制将数据送至D/A输出。该方案结构较为简洁,A/D的最高采样速度也比较低,但是对于本设计设计简易的数字示波器是足够的。单片机价格也便宜,无需花费太大的成本就能完成设计。2.1.2.方案二、使用FPGA可编程逻辑器件用FPGA可编程逻辑器件作为控制和数据处理的核心,利用FPGA的层次化存储器系统结构,使用FPGA内部集成的基本逻辑功能块配置成双端口同步RAM对采集信号进行存储,完成设计指标。因为FPGA可在线编程,从而大大加快了开发速度。电路中的绝大部分逻辑控制功能都是由单片FPGA完成。同样多个功能模块如采样频率控制模块、数据存储模块都集中在单个芯片上,因此大大简化了外围硬件电路设计,增加了系统的稳定性和可靠性。FPGA的高速性能比其他控制芯片更适合于高速数据采集和处理,FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。2.1.3.方案三、以Cortex-M3内核的STM32为主控制器微处理器采用意法半导体的32位处理器STM32F103VET6,其内部是ARM公司Cortex-M3内核,再在其上面移植开源的实时操作系统C/OS-II系统,确保系统的实时性和稳定性。由于高速A/D转换器的速度太快,STM32处理数据的速度跟不上,所以在中间加入FIFO高速缓存器。利用STM32内部自带的FSMC(灵活的静态存储器控制器)来控制TFT液晶屏刷新波形,可实现更高频率的信号的波形刷新和显示。此为,利用STM32的高级定时器可输出很高的时钟,可以作为高速A/D转换器的采样时钟和FIFO存储器的控制时钟,从而避免了一大堆由有源晶振和数字芯片组成的时钟电路。2.1.4.方案比较:苏州大学本科生毕业设计(论文)第6页方案一简单能够在短时间内完成设计且做成实物,而且这种示波器能够简易的显示常规信号的波形、幅度、频率,实现数字示波器的基本指标;方案二采用FPGA虽然能深入开发数字示波器,然而,其成本偏高,即使加入可编程片上系统(SOPC),其软件压力也很大。难度大难以在短时间内完成任务。方案三是能够实现嵌入式数字示波器基本指标的方案,虽然该方案是完成该任务的最好的方案,能够实时操作系统简化编程,提供系统实时性和稳定性,但是ARM成本目前较高,短时间内不能够完成设计及做成实物。因此,本设计最终选择方案一开展设计。第2.2节软件系统方案选择2.2.1.方案一采用C语言环境编写C是结构式语言。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。它简单、灵活、对各种需要的适应性强。C语言功能齐全,具有各种各样的数据类型、运算符、表达式、数组、结构体以及共用体,并引入了指针的概念,可使程序效率更高,而且C语言是以函数形式提供给用户的,这些函数可方便的调用,用户还可以自定义函数,这使得C语言的使用更加方便。且我们学的就是C语言,有一定的功底运用比较方便。2.2.2.方案二采用汇编语言环境编写汇编语言比机器语言易于读写、易于调试和修改,同时也具有机器语言执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语言依赖于具体的机型,不能通用,也不能在不同机型之间移植。虽然学过汇编,但是编写难度较大。为了方便编写、修改,后期维护选择了方案一。苏州大学本科生毕业设计(论文)第7页第3章简易数字示波器系统分析第3.1节硬件系统3.1.1.硬件系统结构图图3-1系统结构图信号输入之前手动调整信号电平调整成为符合AD转换要求的05V电压。之后输出的模拟信号经过高速AD转换器TLC2543实时采样变成数字信号,经过AT89S52单片机后储存在存储器中。单片机从存储器中读出信号进行运算处理,将波形显示在LCD液晶屏上。3.1.2.示波器的硬件设计本数字示波器设计简易,所需硬件数量少、简单。只要有信号输入无需调节直接显示波形、幅值、频率。主要硬件为AT89S52、TLC2543、KXM12864M等AT89S52图3-2AT89S52引脚图苏州大学本科生毕业设计(论文)第8页图3-3AT89S52部分接线图主要性能与MCS-51单片机产品兼容8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。功能特性描述AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供灵活、有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8位微控制器8K字节在系统可编程FlashAT89S52P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式苏州大学本科生毕业设计(论文)第9页下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下所示:在flash编程和校验时,P1口接收低8位地址字节。引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下所示:苏州大学本科生毕业设计(论文)第10页在flash编程和校验时,P3口也接收一些控制信号。端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INTO(外中断0)P3.3INT1(外中断1)P3.4TO(定时/计数器0)P3.5T1(定时/计数器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。苏州大学本科生毕业设计(论文)第11页3.1.3.单片机外围电路设计(1)、晶振电路AT89S52引脚XL1和XL2与晶体振荡器CYS1及电容C6、C7按图3-4所示方式连接。晶振、电容C6、C7及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C6、C7的容量有关,但主要由晶振频率决定,范围在033MHz之间,电容C6、C7取值范围在530pF之间。根据实际情况,本设计中采用12MHZ做为系统的外部晶振。电容取值为30pF。图3-4晶振部分接线图(2)、复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高阻态,P1P3口输出高电平;外部程序存储器读选通信号PSEN无效。地址锁存信号ALE也为高电平。根据实际情况选择如图3-5所示的复位电路,该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C3上的电压很小,复位下拉电阻R4上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,因为电容C3足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够正常复位。增加手动复位按键是为了避免死机时无法正常复位。当复位按键按下后电容C3放电。当电容C3放电结束后,RST端的电位由R4决定。由于R4很大,因此RST为高电平,CPU处于复位状态,松手后,电容C3充电,RST端电位下降,CPU脱离复位状态。苏州大学本科生毕业设计(论文)第12页图3-5复位电路接线图3.1.4.信号采集模块本设计中的信号数据采集器采用的是A/D转换器TLC2543。TLC2543是德州仪器公司生产的12位开关电容型逐次逼近模数转换器,它具有三个控制输入端,采用简单的3线SPI串行接口可方便地与微机进行连接,是12位数据采集系统的最佳选择器件之一。TLC2543的主要特点(1)12位分辨率A/D转换器;(2)在工作温度范围内10s转换时间;(3)11个模拟输入通道;(4)3路内置自测试方式;(5)采样率为66kbps;(6)线性误差1LSBmax;(7)有转换结束输出EOC;(8)具有单、双极性输出;(9)可编程的MSB或LSB前导;(10)可编程输出数据长度TLC2543引脚功能说明如下:AIN0AIN10:模拟输入端,由内部多路器选择。对4.1MHz的I/OCLOCK,驱动源阻抗必须小于或等于50;苏州大学本科生毕业设计(论文)第13页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接口时序可以用四种传输方法使TLC2543得到全12位分辩率,每次转换和数据传递可以使用12或16个时钟周期。一个片选()脉冲要插到每次转换的开始处,或是在转换时序的开始处变化一次后保持为低,直到时序结束。图3-6显示每次转换和数据传递使用16个时钟周期和在每次传递周期之间插入的时序,图3-7显示每次转换和数据传递使用16个时钟周期,仅在每次转换序列开始处插入一次时序。苏州大学本科生毕业设计(论文)第14页图3-616时钟传送时序图(使用,MSB在前)图3-716时钟传送时序图(不使用,MSB在前)图3-8TLC2543部分接线图3.1.5.显示模块苏州大学本科生毕业设计(论文)第15页显示模块非常简洁,直接是一块KXM12864-M液晶显示器。液晶显示模块是12864点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。可与CPU直接接口,提供两种界面来连接微处理机:8位并行及串行两种连接方式。在单片机系统中使用液晶显示模块作为输出器件具有以下优点:(1)显示质量高由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管(CRT)那样需要不断刷新亮点。因此,液晶显示器画质高而且不会闪烁。(2)数字式接口液晶显示器都是数字式的,和单片机系统的接口更简单,操作也更加方便。(3)体积小、重量轻液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器件要轻很多。(4)功率消耗小相比而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其他显示器件也要小很多。KXM12864-M引脚说明如表3-9所示:表3-9KXM12864-M引脚说明3.1.6.电源部分苏州大学本科生毕业设计(论文)第16页电源部分直接用5V的直流电源供电即可。第3.2节软件系统3.2.1.信号采集系统软件图图3-10系统采样子程序流程图3.2.2.信号显示系统软件图苏州大学本科生毕业设计(论文)第17页图3-11信号显示系统总体流程图苏州大学本科生毕业设计(论文)第18页第4章系统测试第4.1节测试条件和方法4.1.1.测试条件(1)、电源学院电子实验室有可供直流电压为5V的电源。(2)、信号发生器用于提供加有偏置的常规信号4.1.2.测试过程(1)、打开电源和信号发生器(2)、调好输入信号的频率、幅值(3)、加入偏置使得输入信号为“正”并用实验室示波器测试(4)、连接好电源、示波器、信号发生器(5)、按下示波器复位键(6)、选择输入不同的信号、不同频率、不同幅度(7)、观察示波器显示的结果(8)、记录信号实际频率、幅值以及示波器显示的频率和幅值(9)、关闭电源,整理实验仪器4.1.3.主要测试内容不同输入波形的频率范围和精度.不同输入波形的幅值范围和精度.第4.2节测试分析误差来源:信号发生器本身就不是很规范,发生的信号本身有一些误差。信号发生器输入信号的幅值的误差是很大的,而信号的频率相差不是很大。在实际测试数字示波器的过程中并不是一帆风顺的。起初在测试时忘记将输入信号加入偏置,使得信号全为“正”,不乱怎么测试示波器就是不出波形。选用的器材本身有一定的缺陷,使得设计本苏州大学本科生毕业设计(论文)第19页示波器只能测试简单的低频率、低电压的信号。所以测试过程中出现的一些误差也是允许的。苏州大学本科生毕业设计(论文)第20页结论本设计利用TLC2543A/D转换器、AT89S52单片机、12864液晶显示模块实现对模拟信号的采样、对采样信号的电压的数值处理和波形复现,并利用单片机内部定时器实现对输入模拟信号的频率、峰峰值测量,即设计了简易数字示波器。设计中使用的是单片机,运算速度没有使用ARM快,波形和频率的显示也没有很精确。因此,本设计并不能够对所有的信号进行检测,只能对常规信号进行测量。按照本文中的设计方案,该数字示波器能够实现输入频率在0HZ30HZ输入电压小于6V的模拟电压信号的波形复现和频率测量。本设计还有许多不足之处,只能测试一个周期的波形;示波器波形调理部分还需手动调节,可设计电路使其自动调节;不能够人机界面友好;没能提供调节键盘,供用户调节测试波形;示波器反应速度也有点慢等。这些都是今后可以继续改进的方向。苏州大学本科生毕业设计(论文)第21页参考文献1.俞方炜.当配件在数字示波器设计中的应用J.通信技术,2009,42(209):269-2712.刘杨斌等.基于AT89S52单片机的简易数字示波器设计.J.现代技术.2011,34(14):138-1403.徐僖,杨传顺.基于PIC单片机的简易数字示波器设计.J.电子测量技术,2012,10(23):72-754.梁志恒,王军锋.基于VC+环境下的单片机数字数字示波器设计J.中国信息化,2013,05:48-485.王浩宇.基于单片机和CPLD便携式数字示波器硬件平台研究实现.D.西安电子科技大学,20106.李璐,李腾飞,李飞飞.基于单片机和FPGA的数字示波器的设计R.电子设计工程,2011,19(18);78-817.刘伟,丁雷,许婷,卢传涛,杨世江,汤东东.基于单片机微控制器的简易数字示波器设计D.湖南:吉首大学,20108.程娅荔,王巧玲.C语言与汇编语言在单片机教学中的融合应用J.科技视界,2012,14:25-269.周密.数字示波器J.电子设计工程,2009,17(6):72-7310.王煜,SlewWH适用于嵌入式应用的高速信号采集电路J.测量技术学报,2009,19(4):372-37611.周富相等.基于STM32的数字示波器设计与实现J.山西电子技术,2011,2:8-10苏州大学本科生毕业设计(论文)第22页致谢经过几周的学习,本次毕业设计已经接近尾声。作为一个本科毕业生的毕业设计,由于自己的经验缺乏,难免有许多考虑不周到的地方,很多时候会走一些弯路,如果没有指导老师的指导,以及一些同学和朋友的帮助,想要在短短两周内完成这个毕业设计是不容易的。在这里首先要感谢我的指导老师丁建强老师,丁老师平时工作繁忙,但多次亲自询问设计进程,为我指点迷津,帮助我解决设计困难,对我精心点拨与鼓励。丁建强老师,一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅传授我知识,而且教我做人,给以终生受益无穷之道。同时感谢那些曾经帮助过我指导过我的老师,感谢你们的教育之恩,你们辛苦了。其次要感谢那些曾经在各个方面给予我帮助的学长们,在大学生活里交给我很多学习经验和社会经验,正是有了你们的帮助,才让我不断进步。最后要感谢母校苏州大学应用技术学院四年来对我辛勤地培养。她教给我的不仅是生存的本领,更重要的学会做人,学会与人分享,乐于帮助别人。不要患得患失,遇到挫折要正确面对,多一点踏实少一点华而不实,这将鼓励我在人生的道路上不断前进。苏州大学本科生毕业设计(论文)第23页附录:中英文文献翻译名称美国国家仪器公司的LabVIEW:一种实验室自动化和测量的编程环境苏州大学本科生毕业设计(论文)第24页附录1:硬件原理总图苏州大学本科生毕业设计(论文)第25页附录2:嵌入式数字示波器实物苏州大学本科生毕业设计(论文)第26页附录3:简易数字示波器的PCB图苏州大学本科生毕业设计(论文)第27页附录4:简易数字示波器测试过程中的实物图苏州大学本科生毕业设计(论文)第28页苏州大学本科生毕业设计(论文)第29页附录5:部分源程序12864初始化函数voidlcd_init()write_com(0x30);/基本指令操作,8位并口delay(1);write_com(0x06);/设置为游标右移,DDRAM地址加一,画面不动delay(1);write_com(0x0c);/显示开,关光标delay(1);write_com(0x01);/清除lcd显示内容delay(1);/测试ucharcodedis1=频率波幅;ucharcodedis2=0123456789V:;ucharcodedis3=HZV.;ucharcodedis4=作者许海祥学号:1016405006;voidlcd_pos(ucharX,ucharY);/确定显示位置设定显示位置voidlcd_pos(ucharX,ucharY)ucharpos;if(X=0)X=0x80;elseif(X=1)苏州大学本科生毕业设计(论文)第30页X=0x90;elseif(X=2)X=0x88;elseif(X=3)X=0x98;pos=X+Y;write_com(pos);/显示地址voiddisppinlvbofu()lcd_pos(0,6);/设置显示位置为第一行的第1个字符write_dat(dis10);write_dat(dis11);write_dat(dis12);write_dat(dis13);lcd_pos(2,6);write_dat(dis14);write_dat(dis15);write_dat(dis16);write_dat(dis17);voiddisdate(uchara,ucharb)ucharshi,ge;shi=a%100/10;ge=a%100%10;lcd_pos(1,6);/设置显示位置为第一行的第1个字符苏州大学本科生毕业设计(论文)第31页write_dat(dis2shi);write_dat(dis2ge);write_dat(dis30);write_dat(dis31);shi=b/5/10;ge=b/5%10;lcd_pos(3,6);write_dat(dis2shi);write_dat(dis33);write_dat(dis2ge);write_dat(dis32);voiddisozb()gui_linewith(4,1,4,61,1);gui_linewith(4,1,7,4,1);gui_linewith(4,1,1,4,1);gui_linewith(3,10,4,10,1);gui_linewith(3,20,4,20,1);gui_linewith(3,30,4,30,1);gui_linewith(3,40,4,40,1);gui_linewith(3,50,4,50,1);gui_linewith(3,60,90,60,1);gui_linewith(90,60,87,57,1);苏州大学本科生毕业设计(论文)第32页gui_linewith(90,60,87,63,1);gui_linewith(24,60,24,61,1);gui_linewith(44,60,44,61,1);gui_linewith(64,60,64,61,1);gui_linewith(84,60,84,61,1);voidgui_dline(ucharx)ucharbak;/用于对两个数互换的中间变量,使y1为大值bak=6;for(bak=6;bak=1;/循环中多左移了一位returnad/16;voidtimer_init()/定时器一初始化TMOD=0x11;TH1=(65536-1000)/256;TL1=(65536-1000)%256;ET1=1;/开定时器零1中断TR1=0;/启动计数器1TH0=(65536-5000)/256;苏州大学本科生毕业设计(论文)第35页TL0=(65536-5000)%256;ET0=1;/开定时器零1中断TR0=1;EA=1;/开中断EX0=1;/开启外部中断IT0=1;voidtimer5_init()/定时器2初始化T2MOD=0x00;T2CON=0x04;/*定时器2为自动重装定时工作模式)TR2=1*/RCAP2L=(65536-50000)%256;/给定时器T2装初值RCAP2H=(65536-50000)/256;TR2=1;/打开定时器中断1,2ET2=1;EA=1;/开中断voidgetbofeng()uintnum,k,caiyang;/caiyang=read2543(0);caiyang=0;for(k=0;kfu)TH0=(65536-5000)/256;TL0=(65536-5000)%256;ET0=1;/开定时器零1中断TR0=1;EA=1;/开中flag=0;苏州大学本科生毕业设计(论文)第37页for(n=0;nfu)gotob;b:TR0=0;pinlv=200/flag;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论