基于单片机的信号发生器(有论文,程序,电路).doc_第1页
基于单片机的信号发生器(有论文,程序,电路).doc_第2页
基于单片机的信号发生器(有论文,程序,电路).doc_第3页
基于单片机的信号发生器(有论文,程序,电路).doc_第4页
基于单片机的信号发生器(有论文,程序,电路).doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

桂林电子科技大学实训说明书编号: 单片机综合设计实训(论文)说明书题 目: 信号发生器 院 (系): 信息与通信学院 专 业: 电子信息工程 姓 名: 学 号: 指导教师: 2011年12月29日摘 要 本设计主要由键盘输入电路、显示电路、数模转换电路、控制电路、输出功率放大电路等几部分组成,其中核心部分为控制电路和数模转换电路。控制电路部分采用单片机STC89C52RC构成控制电路以保证电路的频率可控制。系统控制电路输出后采用DAC0832进行D/A转换,后级输出采用了运放LM358构的成功率放大器以驱动输出信号。通过数码管和键盘进行人机交流。系统能输出正弦波、三角波、锯齿波、方波和直流。经最后实测表明,系统各项指标都达到题目的要求。关键词:控制电路;数模转换;功率放大 AbstractThe designing of the main which consist of keyboard circuit and a display circuit, D to A converters, control circuit, low-frequency filter, output power amplifier, Among them the core part for the control circuit and digital-to-analog circuit. Control circuit part adopts MCU STC89C52RC constitutes control circuit to ensure the frequency control circuit. System control circuit output used after DAC0832 on D/A transformation, After level output adopted op-amp LM358 amplifier drive power output. Through digital LED and keyboard for man-machine communication. System can output sine wave, triangle wave, the sawtooth wave and square-wave and dc. Results of experiments shows that the power amplifier have good performance and reach the requirements of the subject.Key words: Control circuit; Analog-to-digital conversion; Power amplifier目 录引言 51 系统方案设计 71.1系统组成框图.71.2 信号发生电路 .71.3 控制电路.71.4 控制与显示电路设计思路.71.5 数模转换电路选择.71.6 功率放大器的设计思路81.7 器件选择.82 硬件电路设计.82.1 D/A转换器.82.2 数码管显示.82.3中断键盘.92.4 功率放大器103软件设计.103.1 程序流程104 实验测试结果.105 总结10谢辞 13参考文献 14附录 15引言信号发生器,作为实验用信号源,在当今电子科技化的社会是必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件搭接而成,且波形种类有限,多为锯齿、正弦、方波、三角等波形。如 555振荡电路便是产生正弦波、三角波和方波可取的途径之一。但是这种电路存在波形质量差、控制难、可调范围小、电路复杂和体积大等缺点。利用单片机通过程序设计方法来产生低频信号,其频率底线很低,具有线路相对简单、结构紧凑、体积小、价格低廉、频率稳定度高、抗干扰能力强、用途广泛等优点。现介绍利用STC89C52RC 单片机和DAC0832 D/A 转换器组成的数字式低频信号发生器波形信号频率范围为 100Hz100kHz,信号电压范围为3V,输出信号非线性失真低于 0. 1%,频率很稳定。 1、 系统方案设计1.1 系统组成框图根据课题设计要求使用单片机和D/A等实现任务要求,设计系统组成框图如图1.1所示。CPU数码管显示D/A键 盘 输 入功 率 输 出图1.1:系统组成框图1.2 设计一个低频信号产生电路题目要求设计一个能产生正弦波、三角波、方波。1.3 设计一个控制电路题目要求控制电路具有控制输出波形的周期,实现频率从100Hz到500Hz可调节,并能显示频率和波形信息。根据题意分析可知,系统设计的重点和难点是:如何兼顾输出波形失真与频率高低?如何准确输出频率?如何合理的控制输出?1.4 控制与显示电路设计思路在单片机的控制下,要D/A在输出一个低频而又准确模拟量超短时间定时并且能进行数码显示扫描时,使得单片机相当繁忙,几乎没有时间去响应键盘输入,而键盘入设置应是最高最快响应级别以及提高输入方便性,所以输入采用2 X 7中断键盘。1.5 数模转换电路选择 由于采用8位单片机,而输出要求较高频率,所以采用8位数模转换芯片D/A0832.1.6功率放大器的设计思路由于D/A输入功率过小,需要进行功率放大;前级功率放大器采用运算放大器,方便控制放大倍数,为输出提供更大的驱动能力。1.7器件选择控制运算器件:用8位单片机STC89C52RC;D/A转换器件:用8位并行DAC0832;输入与输出:用按键和数码管;功放器件:用运放LM358;2、 硬件电路设计2.1 D/A转换器 D/A转换电路和运算放大电路的设计,D/A的输出均采用负极性电压输出,运算放大器选用了LM358,电路如图3.1 所示。DAC0832 D/A 转换器将P1口输出的数字量变成模拟量,这个模拟量经LM358集成运算放大器负极性输出。电压变化范围-3V。图3.1:D/A转换电路图2.2 数码管显示显示部分采用的是4位7段共阴LED显示器显示,如图3.2所示。显示的数据由单片机的并行P2 输出高电平段码,为了提供足够驱动电流,在P2口并上1K强上拉排阻;凭借P0口强低电平驱动能力,选高4位作为位选,采用动态扫描的方法进行显示。通过重新调整P2口段码顺序,利用软件迁就硬件电路。这样的设计可以节约成本,降低了走线以难度。如图3.2:显示电路2.3 中断键盘按键是系统的输入设备,是控制单片机的途径。设计中共使用了 14个按键, 27 键盘,键盘中包含了 09 的数字键、加“1”、减“1”、加“10”、减“10”和多个波形选择切换键。如图3.3所示,由于功能键较多,所以在输入控制命令时非常方便。当采用了中断键盘,键盘入为最高最快响应级别时,可以在单片机相当繁忙时第一时间响应输入,以及提高输入灵敏度和方便性。原理是:设置外部中断INT0和INT1中断,当有键入时,进入中断程序进行设置,设置完成然后才继续执行其他操作。图3.3:中断键盘2.4 功率放大器功率放大器主要用于提供足够大的输出功率。如图3.4所示,从DAC0832输出先经一级放大输出负极性电压,再经下一级LM358组成的功率放大器进行输出。图3.4:功率放大器3、 软件设计3.1 程序流程图图4主程序主要是初始化和显示,初始化外中断0、1和定时中断1。设置初始频率为250Hz,循环显示。定时中断主要是到时间就给P1口送查表值。外部中断主要是等待按键输入,进行修改定时值和波形切换。4、实验测试结电路测试,从键盘输入100Hz至500Hz,在输出端能信能准确地输出100Hz至500Hz,幅度为3V,用键盘中加“+1”或“-1”能实现控制输出+1及-1频率控制功能,用键盘中“4”或“5”能实现控制输出+10及-10频率控制功能,因为采用了外部中断键盘,响应灵敏度高。在输出最高频率时,会出现数码管闪动,因为在最高频率输出时,单片机CUP无法承受更高的频率输出,在使用DAC0832时,由于DAC0832内在的非线性等失真,当输出频率高于1KHz时,会产生明显失真,当输出10KHz时,波形出现明显严重失真。本次实训设计中需要改进的地方还有很多,比如,频率的输出达不到要求,难以实现较高输出频率。5、总结通过这次的实训,我们拥有了自己学习知识的机会,从到图书馆查找资料到对电路的设计对电路的调试再到最后电路的成型,都对我所学的知识进行了检验。此次实训的任务是制作低频信号发生器,由于单片机及其程序的运用是我的缺陷,编程运用掌握得不好,为此很有压力,但是压力是动力的源泉,有它才会促使我在困难中前进,收集资料,整理思路,把一个个问题解决。在本次实训中有很多困难,但是在老师的耐心指导下,在同学们的共同讨论下,让我有机会在困难中艰难前行,解决问题,这样让我收获很大,同时更让我明白,只有在问题中去寻找答案,去思考,这样才会学到更多,往往 “会”了,自身反而得不到提高。在实训中,通过运用以前老师所讲的理论知识以及图书馆的资料,总体而言,我的思路比较清晰,因此有条理地完成每一步,最后还是按时完成了任务,做好了作品,完成了论文。 首先是通过查阅资料,以及在网上搜索相关资料,通过一步步编写程序,修改参数等,使我对低频信号发生器的整个过程有了很好的掌握。并且通过帮助其他人寻找程序的问题,也让我对其他的设计有了一点的了解和掌握,其中对定时器/计数器运用也比较熟悉。同时,通过频率计的设计,掌握了定时/计数初值的计算和中断的使用。本次设计低频信号发生器输出信号的不是很高,能实现在100Hz500Hz,输出幅为3V度左右,必须对信号稳压等处理,使得输出信号较为稳定,需要输出信号进行功率放大处理等,通过对运放的使用,我较好的掌握了其基本的功率放大工作原理,对后续的使用奠定了较好的基础。在设计的过程中,进一步;熟悉了低频信号发生器设计的一般原理以及步骤,对低频信号发生器有了一个新的认识。通过此次实训,我发现了自己的许多不足之处,对各种汇编命令使用较少,C语言掌握不够牢固,操作速度不够快速准确等都反映出自己还有太多的知识要学习,并且要加强动手能力。要做到能将所学的知识灵活自如的运用到实际中,要不断加强深层次的知识的学习,不断提高自己的综合设计能力!但最后还是能把理论知识与实践相结合,同时动手能力也得到了提高。致 谢通过本次试实验的训练,我的理论知识很动手能力得到了整体的提高,同时加深了理论知识与实践的相结合。在此,我特别要感谢我的指导老师严素清、符强。他们学识渊博,专业精通,对事业怀着深厚的感情;他们诲人不倦,与同学们保持着良好的沟通并经常给予科学的指导和热心的勉励。就本设计而言,从提纲、草拟、修改到最后定稿,老师都给予了一而再、再而三的精心指导,每个环节都凝结老师努力的付出和辛劳的汗水。毋庸讳言,老师的道德文章将成为我人生的座标和里程碑。 从开始老师就指导我们课题方案设计,在选题以及研究设计方法上给予的悉心指导,使我尽快理清思路,通过请教老师以及查找资料使我较快的完成了对软件的编程及调试和顺利完成了论文写作。整个实训内容都是在老师悉心指导下完成的,老师严谨的治学作风、求实的工作态度使我受益匪浅,更重要的是从老师身上学到了对待任何事情的那种精益求精和一丝不苟的精神和态度,在本次实训中,我遇到了很多难题,然而这些难题让我不断的学习,在困难中进步,本次实训同学们帮了我很多忙,通过同学之间的相互帮助,使我顺利地完成了本次实训。最后由衷地感谢学校给我们提供实训的机会,感谢指导教师对我的教导,更要感谢给予我很多关心和帮助的同学们,你们对我的关爱让我深深感受到了生活的美好,谢谢你们一直以来给予我的理解、鼓励和支持!参考文献 1 王贤勇,赵传申,单片机原理与接口技术M.北京:清华大学出版社, 2010 2 杨拴科,模拟电子技术基础J.北京:高等教育出版社,2010 3 李元庆,电路基础 M.广东:华南理工大学出版社, 2007 4 戴梅鄂,史嘉权.微型计算机技术及应用M.北京:清华大学出版社, 2002 5 蒋延彪.单片机原理及应用M.重庆:重庆大学出版社, 2003 6 胡汉才.单片机原理及系统设计M.北京:清华大学出版社, 2002 7 杨金岩等.8051 单片机数据传输接口扩展技术与应用实例M.北京:人民邮电出版社,2005 附录:#include#define uchar unsigned char#define uint unsigned intuchar a4=0,0,0,0;/显示位选缓冲uchar j=1,k=1,key=0;/键位uchar v=100,y;/输出缓冲uchar ki=0;/键入标志uchar sstsd=0;/输出波形标志uint dat=0,tim=250;fre=250;/转换电压数据sbit p00=P00;sbit p01=P01;sbit p02=P02;sbit p03=P03;/输出波形指示sbit p04=P04;sbit p05=P05;sbit p06=P06;sbit p07=P07;/显示位扫描code uchar DispCode11=0xD7,0x14,0xCD,0x5D,0x1E,0x5B,0xDB,0x15,0xDF,0x5F,0x00;/数码管段码/* DAC0832非线性输出修正码表 */三角波、正弦波code uchar tri100=0,5,10,15,20,26,31,36,41,46,51,56,61,66,71,77,82,87,92,97,102,107,112,117,122,128,133,138,143,148,153,158,163,168,173,179,184,189,194,199,204,209,214,219,224,230,235,240,245,250,255,250,245,240,235,230,224,219,214,209,204,199,194,189,184,179,173,168,163,158,153,148,143,138,133,128,122,117,112,107,102,97,92,87,82,77,71,66,61,56,51,46,41,36,31,26,20,15,10,5;code uchar sin100=128,136,143,151,159,167,174,182,189,196,202,209,215,220,226,231,235,239,243, 246,249,251,253,254,255,255,255,254,253,251,249,246,243,239,235,231,226,220,215,209,202,196,189,182,174,167,159,151,143,136,128,119,112,104,96,88,81,73,66,59,53,46,40,35,29,24,20,16,12,9,6,4, 2,1,0,0,0,1,2,4,6,9,12,16,20,24,29,35,40,46,53, 59,66,73,81,88,96,104,112,120; /* 函数声明*void init(void);/初始化void operation(void);void keyinput(void);/输入数据void display(void);/显示void delay1ms(uint j);/延时1mS/* 主函数 * void main(void)init();while(1)display();void init()/初始化P3=0x0C;p00=0;TMOD=0x20;TH1=256-25000/fre; /66 /20=500TL1=256-25000/fre; /66 /20=500EA=1;EX0=1;EX1=1;ET1=1;TR1=1;IT0=1;IT1=1; void input0(void)interrupt 0 /中断0键盘输入P3=0xFB;switch(P3)case 0xFA: key=0;if(fre!=0)ki+;break;case 0xF9: key=1;ki+;break;case 0xEB: key=2;ki+;break;case 0xDB: key=3;ki+;break;case 0xBB: key=4;ki+;if(TR1=1&fre100)fre=fre-10;TH1=256-25000/fre;break;case 0x7B: key=5;ki+;if(TR1=1&fre500)fre=fre+10;TH1=256-25000/fre;break;case 0xFB: if(fre500)fre=500;if(fre100)fre=100;TH1=256-25000/fre;break;default : break;if(ki5&fre=5)sstsd=0;P0=0xFF;switch(sstsd) case 0:P0=0xFF;p00=0;break;case 1:P0=0xFF;p01=0;break;case 2:P0=0xFF;p02=0;break;case 3:P0=0xFF;P1=0;p03=0;break;case 4:P0=0xFF;break; void input1(void)interrupt 2 /中断1键盘输入P3=0xF7;switch(P3)case 0xF6: key=6;ki+;break;case 0xF5: key=7;ki+;break;case 0xE7: key=8;ki+;break;case 0xD7: key=9;ki+;break;case 0xB7: sstsd+;if(sstsd=5)sstsd=0;break;case 0x77: if(TR1=1)TR1=0;fre=0;ki=5;else if(TR1=0)ki=5;if(fre500)fre=500;if(fre0

温馨提示

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

评论

0/150

提交评论