版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
波形发生器设计目录摘要 1第一章 绪论 2第二章 DAC0832及其特征 32.1D/A转换器和单片机接口探究 32.1.1数据线连接 32.1.2地址线连接 32.1.3控制线连接 32.2DAC0832认识 42.2.1DAC0832结构 42.2.2DAC0832引脚 42.2.3DAC0832开启控制方法 5第三章硬件设计 73.1开启方法选择 73.2框图设计 73.3电路图设计 7第四章程序设计 94.1程序步骤图 94.1.1程序设计思绪 94.1.2步骤图 94.2用C语言实现 114.3用汇编语言实现 14第五章Proteus仿真及结果 175.1方波: 175.2正弦波: 175.3三角波: 185.4梯形波: 185.5锯齿波: 19设计心得: 20参考文件: 21摘要本设计使用AT89C51单片机做控制,选择8位D/A转换器DAC0832作D/A转换。硬件方面,首先51熟悉单片机结构和工作原理,连接单片机最小系统。以后熟悉D/A转换器工作方法,经过分析后选择DAC0832单缓冲开启控制方法,完成电路框图。深入依据设计要求完成经过独立按键控制D/A输出,作出电路框图和电路原理图。软件方面:设计思绪关键表现在两点上。一是控制,经过程序控制DAC转换和输出,按键消抖,选择对应立即输出波形。二是产生波形,依据波形特点编写程序以产生对应波形数字信号。分别经过C语言和汇编语言实现简易波形发生器,输出方波、正弦波、三角波、梯形波和锯齿波,经过独立按键控制分别输出不一样波形。以KILL和Proteus为设计平台,仿真测试设计结果正确性。关键字:51单片机,DAC0832,单缓冲开启控制方法,波形发生器,C语言设计,汇编语言设计绪论单片微型计算机简称单片机,是经典嵌入式微控制器(MicrocontrollerUnit),常见英文字母缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功效芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器,控制器,存放器,输入输出设备组成,相当于一个微型计算机(最小系统),和计算机相比,单片机缺乏了外围设备等。概括讲:一块芯片就成了一台计算机。它体积小、质量轻、价格廉价、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理和结构最好选择。它最早是被用在工业控制领域。51单片机是现在最流行8位单片机。51单片机是对全部兼容Intel8031指令系统单片机统称。该系列单片机始祖是Intel8031单片机,以后伴随Flashrom技术发展,8031单片机取得了长足进展,成为应用最广泛8位单片机之一,其代表型号是ATMEL企业AT89系列,它广泛应用于工业测控系统之中。很多企业全部有51系列兼容机型推出,以后很长一段时间内将占有大量市场。51单片机是基础入门一个单片机,还是应用最广泛一个。需要注意是52系列单片机通常不含有自编程能力。DAC0832及其特征2.1D/A转换器和单片机接口探究D/A转换器和单片机接口含有软硬相依性。在连接过程中要考虑到数据线、地址线、控制线连接。2.1.1数据线连接D/A转换器和单片机接口要考虑到两个问题:一个是位数,当高于8位D/A转换器和8位数据总线51单片机接口时,51单片机数据必需分时输出,这时就必需考虑数据分时传送格式和输出电压“毛刺”问题;二是D/A转化器内部结构,当D/A转换器内部结构没有输入锁存器时,必需在单片机和D/A转换器之间增设锁存器或I/O口。最常见是8位带锁存端D/A转换器和8位单片机接口,这时只需要将单片机数据总线和D/A转换器8位数据输入端一一对应即可。2.1.2地址线连接通常D/A转换器只有片选信号,而没有地址线。这时单片机地址线采取全译码或部分译码,经译码器输出控制片选信号,也能够用某一位I/O线来控制片选信号。也有少数D/A转换器有少许地址线,用于选中片内独立寄存器或选择输出通道,这时单片机实施地址线和D/A转换器地址线对应连接。2.1.3控制线连接D/A转换器关键有片选信号、写信号、及开启转换信号等,通常由单片机相关引脚或译码器提供。通常来说,写信号多由单片机信号控制;开启信号常常由片选信号和写信号组合形式(LE1、LE2)形成,当单片机实施一条输出指令时,传送地址使转换器片选信号有效,由实现开启。(具体实现原理见1.2节)2.2DAC0832认识图1.1DAC0832管脚结构2.2.1DAC0832结构DAC0832结构图1.1所表示,关键由控制逻辑电路、输入寄存器、DAC寄存器和D/A转换器组成。由上图逻辑控制电路可知:LE1=(+)ILELE2=+由LE1控制输入寄存器读入数据,由LE2控制输入寄存器向DAC寄存器传输数据,同时开始D/A转换。2.2.2DAC0832引脚DAC0832引脚图1.1所表示:DI0~DI7:8位数据输入线,高电平有效。ILE:数据锁存许可控制输入线,高电平有效。:片选信号输入线,低电平有效。:输入锁存器写选通输入线,负脉冲有效。输入锁存器信号就是LE1。LE1负跳变有效。:数据传送控制信号输入线,低电平有效。:DAC寄存器写选通信号输入线,负脉冲有效。DAC锁存信号就是LE2,LE2负跳变有效。:模拟电流输出线。:模拟电流输出线,采取单极性输出时,通常接地。:反馈信号输入线。反馈电阻被制作在芯片里,用作外接运放反馈电阻,为D/A转换器提供电压输出。:参考电压输入端。要求外接一精密电压源,电压范围在-10V~+10V之间选定。经过符号来改变输出极性。:电源接口。AGND:模拟地。DGND:数字地。注:数字信号高频噪声很大,假如模拟信地和数字地混合话,就会把数字噪声传到模拟部分,造成干扰。假如分开话,高频噪声能够在电源处经过滤波来消除掉。2.2.3DAC0832开启控制方法DAC0832有三种开启控制方法:(1)直通方法:将、、、信号全部接地,ILE信号引脚接高电平,只要数据传送到数据线上,两级锁存器同时开始工作,并开启D/A转换,即转换器处于非受控状态。在这种工作方法下,转换器数据线不能直接和单片机数据线(P0.0~P0.7)相连接。因为P0口分时复用为低8位地址总线和数据总线,对输出无锁存能力,会使转换器输出不确定。不过能够将ADC数据线连接到某个I/O口上,实施端口输出指令(MOVPxA)即可开启一次D/A转换。这种方法极少采取。(2)单缓冲方法:两级锁存器接收同一个控制,比如将和直接接地,8位ADC锁存器处于非受控状态,只有8位输入锁存器处于受控状态,即此时仅有LE1控制ADC。这种方法在不要求多个模拟同时输出时采取。(3)双缓冲方法:俩个锁存器全部处于受控状态,单片机要对转换器进行两步写操作:第一次实施指令使LE1有效,称作第一级缓冲,第二次实施指令使LE2有效,称作第二级缓冲。这种方法优点是数据接收和开启转换能够异步进行,可在D/A转换同时接收下一个转换数据,以提升转换速度,还能够实现多个转换器同时开启转换,同时输出。第三章硬件设计3.1开启方法选择因为本设计要求设计一个波形发生器,要求能产生正弦波、方波、三角波、梯形波、锯齿波,而且由按键控制输出波形。故各个波形输出并非同时输出,而是由按键控制,单个输出,而且本例只需要一个DAC,假如选择双缓冲方法就会加大无须要难度;直通方法不能有效控制DAC转换,转换时可能会出现数据流失。故选择单缓冲开启控制方法来驱动DAC0832。3.2框图设计依据2.1节判定,选择AT89c51单片机作控制,实现电路框以下:图2.1硬件设计框图3.3电路图设计依据以上框图,选择+12V基准电压,选择一级集成运放作放大电路,连接A/D转换电路图以下:图2.2单片机和ADC连接方法另外加上单片机最小系统,用P1口控制输出波形,电路连接以下:图2.3电路原理图第四章程序设计4.1程序步骤图4.1.1程序设计思绪(1)因为要使用到按钮(本例中选择独立按键),必需使用到键盘扫描,首先要进行键盘消抖,然后经过扫描确定是哪个按键被按下,经过I/O口(本例中为P1口)数据判定选择五种波形中哪一个;(2)依据(1)中结果,经过编程产生各个波形数字信号;(3)控制DAC转换数字信号为模拟信号。程序框图以下:图3.1程序设计思绪4.1.2步骤图在本步骤图中分别以k1、k2、k3、k4、k5代表单片机I/O口P1.0、P1.1、P1.2、P1.3、P1.4;设置flag1、flag2、flag3、flag4、flag5为1时分别代表方波、正弦波、三角波、梯形波、锯齿波。当确定按键按下时,令相对应flagx=1,然后用连续判定程序来选择将要输出波形。程序实现了只需按一下按钮便可连续输出对应波形。步骤图以下:图3.2程序步骤图4.2用C语言实现依据程序步骤图用C语言编程,得C语言实现代码为:#include<absacc.h>#include<reg51.h>#defineDAC0832XBYTE[0x7fff]sbitk1=P1^0;sbitk2=P1^1;sbitk3=P1^2;sbitk4=P1^3;sbitk5=P1^4;intflag1=0;intflag2=0;intflag3=0;intflag4=0;intflag5=0;unsignedcharcodezhengxian[256]={此处省略为正弦波数字信号};voiddelay()//延时程序{inti;for(i=0;i<1000;i++);}voidpanduan(void) //函数panduan用于扫描按键状态,判定输出波形{if(k1==1){ //按键消抖delay(); if(k1==1) //经过赋值flag选择波形 flag1=1; flag2=0; flag3=0; flag4=0; flag5=0;}if(k2==1){delay(); if(k2==1) flag1=0; flag2=1; flag3=0; flag4=0; flag5=0;}if(k3==1){delay(); if(k3==1) flag1=0; flag2=0; flag3=1; flag4=0; flag5=0;}if(k4==1){delay(); if(k4==1) flag1=0; flag2=0; flag3=0; flag4=1; flag5=0;}if(k5==1){delay(); if(k5==1) flag1=0; flag2=0; flag3=0; flag4=0; flag5=1;}}voidboxing(void) //函数boxing用于产生选择好波形{if(flag1==1) //产生方波{ DAC0832=0x00;delay();DAC0832=0xff;delay(); }elseif(flag2==1) //产生正弦波{ inti; for(i=0;i<256;i++){ DAC0832=zhengxian[i]; } }elseif(flag3==1) //三角波{ inti;for(i=0;i<255;i++)DAC0832=i;for(i=255;i>0;i--)DAC0832=i; } elseif(flag4==1) //梯形波{ inti; for(i=0;i<255;i++)DAC0832=0; for(i=0;i<255;i++)DAC0832=i; for(i=255;i>0;i--)DAC0832=0XFF; for(i=255;i>0;i--)DAC0832=i; } elseif(flag5==1) //锯齿波{ inti;for(i=0;i<255;i++)DAC0832=i; }}voidmain(){//主函数P1=0x00;while(1){ panduan(); boxing();}}4.3用汇编语言实现在用C语言实现设计以后,我又尝试使用汇编语言完成任务,因为对汇编语言还不够熟悉,只做到了以开关控制矩形波、三角波、梯形波和锯齿波。程序为:START:MOVDPTR,#7FFFHMOVA,#00LOOP:MOVR0,#00MOVP1,R0 MOVR0,P1 JBP1.0,K0 JBP1.1,K1 JBP1.2,K2 JBP1.3,K3K0:AJMPLOOP1K1:AJMPLOOP2K2:AJMPLOOP3K3:AJMPLOOP4LOOP1:MOVA,#00 ;LOOP1:方波 MOVX@DPTR,A MOVR1,#255 MOVR4,#255DEL1:DJNZR1,$ DJNZR4,DEL1 MOVA,#255 MOVX@DPTR,A MOVR1,#255 MOVR4,#255DEL2:DJNZR1,$ DJNZR4,DEL2 LJMPLOOPLOOP2: ;LOOP3:三角波形UP:MOVX@DPTR,AINCACJNEA,#0FFH,UPDOWN:MOVX@DPTR,ADECACJNEA,#00H,DOWNLJMPLOOPLOOP3: ;LOOP4:梯形波UP1:MOVX@DPTR,A ;上升阶段INCACJNEA,#0FFH,UP1MOVX@DPTR,A ;上底 MOVR1,#255DJNZR1,$DOWN1:MOVX@DPTR,A ;下降阶段DECACJNEA,#00H,DOWN1 MOVX@DPTR,A;下底 MOVR1,#255DJNZR1,$LJMPLOOPLOOP4:MOVX@DPTR,A ;LOOP5:锯齿波INCA MOVR1,#10 DJNZR1,$ LJMPLOOPEND第五章Proteus仿真及结果将程序代码在Kill中编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年新定远期股权权益转让
- 2024年技术服务协议变更书
- DB4106T 110-2023 畜禽粪便有机肥料生产技术规范
- 黄金卷01(浙江1月考)-2023年高考地理模拟卷
- DB4105T 214-2023 夏玉米种肥异位精准同播生产技术规程
- 2024年廉洁工程合作框架协议
- 出纳三年工作总结范文(3篇)
- 2024年摩托车交易确认书
- 2024年房产抵债双方权利义务详细规定
- 2024年技术开发与服务合同
- 新版中日交流标准日本语中级词汇表.上册
- (2024年)互联网医院整体方案介绍课件
- 工程造价及竣工结算投标方案(技术标)
- 医保执法三项制度
- 未来科技与艺术的交融
- 2023年碳素材料行业分析报告及未来五至十年行业发展报告
- 牧原人才测评试题及答案
- (高清版)DZT 0216-2020 煤层气储量估算规范
- 区域销售目标管理
- 上肢筋伤-骨伤科
- 医院感染风险评估表(适用于病房、换药室、治疗室、注射室)
评论
0/150
提交评论