基于单片机的函数信号发生器设计毕业设计.docx
- 文档编号:11495434
- 上传时间:2023-03-02
- 格式:DOCX
- 页数:33
- 大小:917.46KB
基于单片机的函数信号发生器设计毕业设计.docx
《基于单片机的函数信号发生器设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的函数信号发生器设计毕业设计.docx(33页珍藏版)》请在冰豆网上搜索。
基于单片机的函数信号发生器设计毕业设计
华东交通大学理工学院
InstituteofTechnology.
EastChinaJiaotongUniversity
毕业设计(论文)
GraduationDesign(Thesis)
(2010—2014年)
题目基于单片机的函数信号发生器设计矚慫润厲钐瘗睞枥庑赖。
分院:
电气与信息工程分院
专业:
电气工程及其自动化
班级:
电力2010-1
学号:
20100210470134
学生姓名:
曹开建
指导教师:
李房云
起讫日期:
2013.11—2014.5
目录聞創沟燴鐺險爱氇谴净。
摘要
信号发生器是学习、科研领域中一种十分常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。
目前使用的信号发生器大部分是函数信号发生器,且特殊波形发生器的价格昂贵。
为此,为节省成本,本文利用80C51单片机构成信号发生器,可产生三角波、方波、正弦波等多种特殊波形,波形的频率可用程序控制改变。
氬嚕躑竄贸恳彈瀘颔澩。
本次设计利用80C51设计一个函数信号发生器,详细说明了其实现过程。
本系统使用汇编语言编写,用80C51单片机来实现各模块功能,使用PROTEUS进行仿真。
本文描述使用汇编语言和PROTEUS仿真实现函数信号发生器的基本功能,实现了方波、三角波、正弦波、锯齿波,频率可调为10HZ、100HZ、500HZ、1000HZ。
本文给出了源程序、各模块的连接图以及仿真图,并做出了详细的分析。
经测试该设计方案线路优化,结构紧凑,性能优越,满足设计要求。
釷鹆資贏車贖孙滅獅赘。
关键词:
信号发生器;80C51;PROTEUS;频率可调;单片机
Abstract
Signalgeneratorsarelearning,researchinthefieldofaverycommonsource,widelyusedinthefieldofelectroniccircuits,automaticcontrolsystemandteachingexperiments.Mostofthecurrentsignalgeneratorisafunctionofthesignalgenerator,andthepriceisexpensivespecialwaveformgenerator.Forthisreason,inordertosavecosts,weuse80C51microcontrollerconstitutesignalgeneratorcangeneratetrianglewave,squarewave,sinewaveandotherspecialfrequencycanbecontrolledbychangingthewaveform.怂阐譜鯪迳導嘯畫長凉。
Thedesignuses80C51designafunctiongenerator,adetaileddescriptionofitsimplementationprocess.Thesystemiswritteninassemblylanguage,using80C51microcontrollertoachievethefunctionofeachmodule,usingthePROTEUSsimulation.ThispaperdescribestheuseofassemblylanguageandPROTEUSsimulationfunctionofthebasicfunctionsofthesignalgeneratortoachieveasquarewave,trianglewave,sine,sawtooth,adjustablefrequencyis10HZ,100HZ,500HZ,1000HZ.Inthispaper,thesource,connectiondiagramandsimulationdiagramofeachmodule,andmakeadetailedanalysis..Thelinehasbeentestedandoptimizeddesign,compactstructure,superiorperformancetomeetthedesignrequirements.谚辞調担鈧谄动禪泻類。
Keywords:
Signalgenerator;80C51;PROTEUS;adjustablefrequency;MCU嘰觐詿缧铴嗫偽純铪锩。
第1章绪论
1.1本课题研究背景
随着电子测量及其他部门对各类信号发生器的广泛需求及电子技术的迅速发展,促使信号发生器种类增多,性能提高。
尤其随着70年代微处理器的出现,更促使信号发生器向着自动化、智能化方向发展。
现在,许多信号发生器带有微处理器,因而具备了自校、自检、自动故障诊断和自动波形形成和修正等功能,可以和控制计算机及其他测量仪器一起方便的构成自动测试系统。
当前信号发生器总的趋势是向着宽频率覆盖、低功耗、高频率精度、多功能、自动化和智能化方向发展。
在科学研究、工程教育及生产实践中,如工业过程控制、教学实验、机械振动试验、动态分析、材料试验、生物医学等领域,常常需要用到低频信号发生器。
而在我们日常生活中,以及一些科学研究中,锯齿波和正弦波、矩形波信号是常用的基本测试信号。
譬如在示波器、电视机等仪器中,为了使电子按照一定规律运动,以利用荧光屏显示图像,常用到锯齿波产生器作为时基电路。
信号发生器作为一种通用的电子仪器,在生产、科研、测控、通讯等领域都得到了广泛的应用。
但市面上能看到的仪器在频率精度、带宽、波形种类及程控方面都已不能满足许多方面实际应用的需求。
加之各类功能的半导体集成芯片的快速生产,都使我们研制一种低功耗、宽频带,能产生多种波形并具有程控等低频的信号发生器成为可能[1]。
熒绐譏钲鏌觶鷹緇機库。
单片机是指一个集成在一块芯片上的完整计算机系统。
尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:
CPU、内存、内部和外部总线系统,目前大部分还会具有外存。
同时集成诸如通讯接口、定时器,实时时钟等外围设备。
而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
单片机是所有微处理机中性价比最高的一种,随着种类的不断全面,功能不断完善,其应用领域也迅速扩大。
单片机在智能仪表、实时控制、机电一体化、办公机械、家用电器等方面都有相当的应用领域。
当前,8位单片机主要用于工业控制,如温度、压力、流量、计量和机械加工的测量和控制场合;高效能的16位单片机(如MCS-96、MK-68200)可用在更复杂的计算机网络。
可以说,微机测控技术的应用已渗透到国民经济的各个部门,微机测控技术的应用是产品提高档次和推陈出新的有效途径[2]。
鶼渍螻偉阅劍鲰腎邏蘞。
便携式和智能化越来越成为仪器的基本要求,对传统仪器的数字化,智能化,集成化也就明显得尤为重要。
平时常用信号源产生正弦波,方波,三角波等常见波形作为待测系统的输入,测试系统的性能。
单在某些场合,我们需要特殊波形对系统进行测试,这是传统的模拟信号发生器和数字信号发生器很难胜任的。
利用单片机的强大功能,设计合适的人机交互界面,使用户能够通过手动的设定,设置所需波形。
纣忧蔣氳頑莶驅藥悯骛。
1.2函数发生器分类
函数发生器应用广泛,种类繁多,性能各异,分类也不尽一致。
函数发生器亦称信号发生器,主要作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。
按照频率范围分类可以分为:
超低频信号发生器、低频信号发生器、视频信号发生器、高频波形发生器、甚高频波形发生器和超高频信号发生器。
按照输出波形分类可以分为:
正弦信号发生器和非正弦信号发生器,非正弦信号发生器又包括:
脉冲信号发生器,函数信号发生器、扫频信号发生器、数字序列波形发生器、图形信号发生器、噪声信号发生器等。
按照信号发生器性能指标可以分为一般信号发生器和标准信号发生器。
前者指对输出信号的频率、幅度的准确度和稳定度以及波形失真等要求不高的一类信号发生器。
后者是指其输出信号的频率、幅度、调制系数等在一定范围内连续可调,并且读数准确、稳定、屏蔽良好的中、高档信号发生器[3]。
颖刍莖蛺饽亿顿裊赔泷。
函数发生器作为一种常见的应用电子仪器设备,传统的一般可以完全由硬件电路搭接而成,如采用555振荡电路发生正弦波、三角波和方波的电路便是可取的路径之一,不用依靠单片机。
但是这种电路存在波形质量差,控制难,可调范围小,电路复杂和体积大等缺点。
在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟机械振动等领域常常要用到低频信号源。
而由硬件电路构成的低频信号其性能难以令人满意,而且由于低频信号源所需的RC要很大。
大电阻,大电容在制作上有困难,参数的精度亦难以保证。
体积大,漏电,损耗显著更是其致命的弱点。
一旦工作需求功能有增加,则电路复杂程度会大大增加。
利用单片机采用程序设计方法来产生低频信号,其频率底线很低。
具有线路相对简单,结构紧凑,价格低廉,频率稳定度高,抗干扰能力强,用途广泛等优点,并且能够对波形进行细微调整,改良波形,使其满足系统的要求。
只要对电路稍加修改,调整程序,即可完成功能升级。
濫驂膽閉驟羥闈詔寢賻。
1.3研究内容
本次设计是基于80C51单片机信号发生器设计,信号发生器可以产生方波、三角波、正弦波、3种波形,通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产10HZ、100HZ、500HZ、1000HZ的波形。
在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出[4]。
銚銻縵哜鳗鸿锓謎諏涼。
第2章整体设计方案
2.1方案的提出和整论
常用的函数信号发生器的实现方法有如下几种:
1.采用分立元件实现信号的输出,主要是通过模拟电路实现正弦信号的输出,在通过各种积分微分电路实现各种不同波形的输出。
但是这种方法频率和幅值的调整比较困难,而且模拟电路受外部因素的影响较大,输出的波形难以控制。
挤貼綬电麥结鈺贖哓类。
2.采用集成信号发生芯片MAX038输出各种波形,并通过外接电阻值改变实现对幅值和频率的调整。
这种方法实现起来比较容易,但是频率和幅值的调节比较困难[5]。
赔荊紳谘侖驟辽輩袜錈。
图2-1基于MAX038的信号发生器原理图
3.采用DAC0832通过查表得方式输出需要的波形,通过单片机定时向DAC转化器发送转换数据,实现不同的幅值和频率的输出。
这种方法能够实现各种需要的波形的输出,成本也不高,只是在扩展外设的时候浪费了大量的接口,以后的系统扩展可能会有影响[6]。
塤礙籟馐决穩賽釙冊庫。
4.采用DDS频率合成器,能输出各种波形,而且能够轻松调节幅值和频率。
DDS同DSP(数字信号处理)一样,是一项关键的数字化技术。
DDS是直接数字式频率合成器(DirectDigitalSynthesizer)的英文缩写。
与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。
一块DDS芯片中主要包括频率控制寄存器、高速相位累加器和正弦计算器三个部分。
频率控制寄存器可以串行或并行的方式装载并寄存用户输入的频率控制码;而相位累加器根据DDS频率控制码在每个时钟周期内进行相位累加,得到一个相位值;正弦计算器则对该相位值计算数字化正弦波幅度(芯片一般通过查表得到)。
DDS芯片输出的一般是数字化的正弦波,因此还需经过高速D/A转换器和低通滤波器才能得到一个可用的模拟频率信号[7]。
裊樣祕廬廂颤谚鍘羋蔺。
图2-2DDS的原理框图
鉴于方案一的信号频率不够稳定和方案二的电路复杂,频率覆盖系数难以达标等缺点,所以决定采用方案三的设计方法。
它不仅采用软硬件结合,软件控制硬件的方法来实现,使得信号频率的稳定性和精度的准确性得以保证,而且它使用的几种元器件都是常用元器件,容易得到,且价格便宜,使得硬件开销达最省[8]。
仓嫗盤紲嘱珑詁鍬齊驁。
2.2设计原理
数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。
89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:
中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及其接口、显示器及其接口、数模转换及波形输出、指示灯及其接口等四部分,即可构成所需的波形发生器,其信号发生器构成原理框图如图2-3所示[9]。
绽萬璉轆娛閬蛏鬮绾瀧。
图2-2整体设计方案
80C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。
当数字信号经过接口电路到达转换电路,将其转换成模拟信号也就是所需要输出波形[10]。
骁顾燁鶚巯瀆蕪領鲡赙。
第3章硬件设计
硬件原理硬件电路设计决定一个系统功能,是设计基础所在,而一般设计目标:
可靠,简洁,高效,优化,好硬件电路可给程序编写带来极大优势,同时使可以很好提高该信号设计精度和灵敏度,使整个系统工作协调有序。
以80C51单片机芯片作为核心处理器,编程实现各种不同类型信号,最后通过DA转换输出[11]。
瑣钋濺暧惲锟缟馭篩凉。
4.1硬件整体设计
由频率控制模块、幅度控制模块、键盘模块和液晶显示模块组成整个系统。
用单片机控制键盘和液晶显示,液晶屏显示四个参数:
频率、幅值、类型和不同频率范围中频率的步进。
用单片机控制两个数字电位器中的抽头位置来实现改变输出的频率和幅度的大小,运用数字电位器X9C103和ICL8038共同设计的函数信号发生器。
该电路能够产生稳定的正弦波信号、三角波信号、频率与占比可调节的矩形波信号,其输出频率能在1Hz-IMHz范围内连续调整,达到调试简单、性能稳定、使用方便等优点。
其工作系统框图如下图4-1所示。
鎦诗涇艳损楼紲鯗餳類。
4-1整体硬件电路
4.2复位电路
无论哪种类型的单片机,这些器件总要涉及到单片机的复位电路以及复位电路的设计。
、单片机上电复位电路设计好与坏,将直接影响整个微机控制系统工作可靠性与稳定性。
很多用户在设计完单片机控制系统,实验室可能调试成功后,但是在现场却出现“死机”和“程序跑飞”等现象产生,导致这些最主要原因可能是复位电路设计不当造成,因此设计一个很好复位电路对于单片机控制系统运行来说非常重要。
复位电路连接有三种连接方式,列举一种,如图4-2所示:
栉缏歐锄棗鈕种鵑瑶锬。
4-2复位电路设计
4.3时钟电路
单片机的时钟信号通常用两种电路形式得到:
内部振荡和外部振荡方式。
在引脚XTAL1和XTAL2外接晶体振荡器,构成了内部振荡方式。
由于单片机内部有一个高增益的反相放大器,当外接晶振后,就构成了自激振荡,并产生振动时钟脉冲。
晶振通常选用6MHZ、12MHZ、24MHZ。
本设计中时钟电路图如图4-3,选择了12MHZ和晶振分别接引脚XTAL1和XTAL2,电容C1,C2均选择为30pF,对振荡器的频率有稳定作用,当频率较大时,正弦波、方波、三角波及锯齿波中每一点的延时时间为几微妙,故延时时间还加上指令时间才能获得较大的频率波形[12]。
辔烨棟剛殓攬瑤丽阄应。
4-3时钟电路设计
4.4键盘电路
通常单片机外部扩展键盘的方式有独立式键盘,矩阵键盘以及专门的键盘电路。
独立式键盘就是一个I/O口扩展一个开关,这种方式程序编写比较容易,只需要检测单片机I/O某一时刻是否为低电平就能检测出其的按键输入情况,而且按键和I/O口一一对应,所以能够轻松识别按键的值,如图4-3所示为独立按键接口电路。
本设计中采用的是3个独立的功能按键。
S1用来切换现在产生的波形。
当没有按下S1时信号发生器产生方波信号。
第一次按下S1时,将切换成三角波信号。
第二次按下S1时,将切换产生正弦波信号。
第三次按下S1时,又产生方波信号。
这样一直循环。
S2用来调节输出的函数信号的频率。
当没有按下S2时,产生的函数信号最高。
当按下S2时,波形频率降低,同时还要对应向LED显示缓冲区给定一个频率值提供当前频率显示所需要的数据。
S2按7次一个循环。
当第7次按下时恢复到最高频率输出。
S3用来启动对输出的函数信号电压值测量。
当S3没有按下时,单片机只向DAC0832送波形数据表和显示当前波形的频率。
按下S3后,单片机除了向DAC0832送波形数据表外,还要每隔一小段时间对读取ADC0809转换电压值,并且换算出来,送给LED显示当前电压。
此时不再显示当前波形频率[13]。
峴扬斕滾澗辐滠兴渙藺。
4-4独立式键盘
矩阵键盘相比独立式键盘其扩充的量大大增加,例如常见的4*4矩阵键盘占用的I/O口为4+4=8个,当需要扩充为20键输入时只需要4+5=9个I/O口,而采用独立式键盘的时候要分别用掉16个I/O口和20个I/O口,由于单片机的I/O口数量有限,很难将大量的I/O口用于,显然矩阵键盘能够大大的减少系统I/O口的使用,矩阵键盘的缺点是编写程序比较麻烦,需要上拉电阻系统的连线和元器件都增加。
当采用行扫描方式读取键值时,需要4个上拉电阻,提供需要的高电平,当采用线反转法式需要采用8个上拉电阻,显然整个电路的接线都将变得更加复杂。
矩阵式按键键盘中,分为行线和列线两种,行线和列线与矩阵按键开关的两端相连接,其中行线是连接到+5V电源上。
当没有按键按下时,行线会处于高电平状态;当有按键动作时,行线和列线将导通。
这是矩阵式按键来识别按键是否按下的关键策略[14]。
詩叁撻訥烬忧毀厉鋨骜。
4-5矩阵式键盘
4.5D/A转换模块
4.5.1DAC0832转换器简介
DAC0832是双列直插式8位D/A转换器。
能完成数字量输入到模拟量(电流)输出的转换。
其主要参数如下:
分辨率为8位,转换时间为1μs,满量程误差为±1LSB,参考电压为(+10~-10)V,供电电源为(+5~+15)V,逻辑电平输入与TTL兼容。
从图3.7中可见,在DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号XFER。
则鯤愜韋瘓賈晖园栋泷。
图4-6DAC0832引脚图
图4-6中,当ILE为高电平,片选信号CS和写信号WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。
此后,当WR1由低电平变高时,控制信号成为低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化。
胀鏝彈奥秘孫戶孪钇賻。
对第二级锁存来说,传送控制信号XFER和写信号WR2同时为低电平时,二级锁存控制信号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。
鳃躋峽祷紉诵帮废掃減。
DAC0832各引脚编号及其作用:
1.1号CS引脚:
片选信号输入线,低电平有效;
2.2号WR1引脚:
为输入寄存器的写选通信号;
3.3号AGND引脚:
模拟地,模拟信号和基准电源的参考地;
4.4-7,13-16号D0-D7引脚:
数据输入线,TLL电平;
5.8号Vref引脚:
基准电压输入(-10V~+10V);
6.9号RFB引脚:
反馈信号输入线,芯片内部有反馈电阻;
7.10号DGND引脚:
数字地;
8.11号IOUT1引脚:
电流输出线,当输入全为1时,IOUT1最大;稟虛嬪赈维哜妝扩踴粜。
9.12号IOUT2引脚:
电流输出线,其值与IOUT1为一常数;
10.17号XFRE引脚:
数据传送控制信号输入线,低电平有效;
11.18号WR2引脚:
为DAC寄存器写选通输入线;
12.19号ILE引脚:
数据锁存允许控制信号输入线,高电平有效;
32.0号Vcc引脚:
电源输入线(+5V~+15V)Vref。
本次设计选择的D/A转化器是DAC0832,是一款8分辨率的D/A转换集成芯片。
与微处理器完全兼容。
这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。
D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。
AT89C51单片机控制两片DAC0832的原理如图4-7所示。
陽簍埡鲑罷規呜旧岿錟。
4-7单片机控制DAC0832的D/A转换
因为AT89C51单片机自身便有一个64K的程序存储器,所以不用扩展外加程序存储器。
由单片机编程即可由单片机输出所需要信号的数字量,再由D/A转换器将数字量转化为模拟电流输出,通过运放转化为模拟电压输出。
D/A数模转换器的最大输出电压是由其输入的基准电压来控制的,所以只要能控制D/A的基准电压便可以控制输出幅度,实现幅度可调。
所以设计用两片DAC0832来输出信号,第一片D/A用来输出信号,第二片D/A用来控制压。
其中用P0口作为两片D/A的数据总线,P2口的P2.0和P2.1口用来控制两片D/A的选通[15]。
沩氣嘮戇苌鑿鑿槠谔應。
本文选用价格低廉、接口简单、转换控制容易并具有8位分辨率的数模转换器。
DAC0832。
DAC0832主要由8位输入寄存器、8位DAC寄存器、8位D/A转换器以及输入控制电路四部分组成。
但实际上,DAC0832输出的电量也不是真正能连续可调,而是以其绝对分辨率为单位增减,是准模拟量的输出。
DAC0832是电流型输出,在应用时外接运放使之成为电压型输出。
钡嵐縣緱虜荣产涛團蔺。
4.6显示电路设计
显示电路是用来显示波形信号的频率,使得整个系统更加合理,从经济的角度出发,所以显示器件采用LED数码管显示器。
而且LED数码管是采用共阳极接法,当主控端口输出一个低电平后,与其相对应的数码管即变亮,显示所需数据。
本次设计要求对输出波形的频率,幅值和波形进行输出,所以要扩展显示模块,常用的显示模块LCD有7端数码管,LCD1602和12864等液晶显示屏。
为了降低设计的成本和扩展的难度,本次设计选择使用7段数码管。
懨俠劑鈍触乐鹇烬觶騮。
LED显示器工作方式有两种:
静态显示方式和动态显示方式。
静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。
当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。
这种方法的优点是占用CPU时间少,显示便于监测和控制。
缺点是硬件电路比较复杂,成本较高。
动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。
选亮数码管采用动态扫描显示。
所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。
动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的[16]。
謾饱兗争詣繚鮐癞别瀘。
图4-8显示器
第4章软件设计
4.1设计构思
幅度控制:
由
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 函数 信号发生器 设计 毕业设计