版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微机原理与接口技术课程设计报告题 目: 简易信号发生器 专业名称: 电子信息工程 班 级: 学 号: 姓 名: 2013年 12月简易信号发生器 摘要:信息波形发生器是一种常用的信号源,广泛的应用于电子电路、自动控制系统和教学实验等领域,是现代测试领域内应用最为广泛的通用仪器之一。信号发生器是电子测量领域中最基本、应用最为广泛的一类电子仪器。本设计正是基于数模转换原理,采用8086最小系统经数模转换芯片DAC0832设计并制作出了多功能信号发生器,利用8255A控制按键产生四种波形。关键词:波形;8255A;DAC0832;1 设计目的(1)掌握D/A转换器的使用(2)掌握方波,三角波,锯齿波
2、,正弦波函数发生器的原理及设计方法。(3)掌握8086的工作原理,电路连接以及其最小系统的设计。(4)了解数模转换芯片DAC0832的工作方式和使用。(5)学会用proteus 画电路原理图。2. 设计内容用D/A转换器产生不同频率与不同幅度的方波、三角波、锯齿波3 设计原理及方案3.1 设计原理 D/A转换器产生各种波形的原理:利用D/A转换器输出的模拟量与输入数字量成正比关系这一特点,将D/A转换器作为微机输出接口,CPU通过程序向D/A转换器输出随时间呈现不同变化规律的数字量,则D/A转换器就可输出各种各样的模拟量,如方波、三角波、锯齿波、正弦波等。8255A实现波形切换的原理:从825
3、5A的C口读入外接开关的信号,CPU读入不同信号值,从而执行不同的代码,向D/A转换器传送不同的数据,控制D/A转换器输出锯齿波、三角波、方波、正弦波和锯齿波。波形幅度和频率的调节:将D/A转换器的参考电压引脚接入滑动变阻器滑动端控制输入电压,即可改变波形幅度。调节频率的原理就是将送入将D/A转换器的数据间隔时间延长,即可减小频率,间隔时间缩短,即可增大频率。产生正弦波的原理及实现方法:首先总述一下,所有波都是通过向D/A转换器送数产生的,送数的大小决定波的幅度,送数间隔时间长短决定波的频率。本设计产生正弦波,是先定义了256个数,形成一个数组,这256个数是从80H开始,结束时也是80H,构
4、成一个循环。其中正弦波的第一个上升段数据是80H到0FFH,第一个下降段是0FFH到80H,第二个下降段是80H到00H,第二个上升段是00H到80H。送数的间隔数为3,整体的波形还是可观的。如果这组数据选择不当,产生的正弦波将会失真。定义好数后,只需将数输送到D/A转换器的端口,这里是利用寄存器间接寻址,先将数组的有效地址放入DI中,CX中放入100H作为256的计数,将DI的内容存到AL中,然后让DI自增1,将AL中的数输送到端口地址2000H,LOOP就是构成一轮循环,这样产生一个正弦波。3.2 设计方案通过查阅相关的资料,本设计采用8086和数模转换芯片(DAC0832)实现波形的产生
5、,波形的产生由程序控制,向D/A的输入端按一定的规律发送数据,经过D/A输出,再经LM324放大信号,最后送到示波器显示。此方案通过编程简化了外部电路,原理简单,容易实现。使用4个按键共同实现正弦波,方波,三角波,锯齿波这四种常见波形的产生。4 硬件设计4.1 芯片简介1、8086CPU引脚图(如图1): 图1 图22、DAC0832(D/A转换器) 引脚图(如图2): NSC公司生产的DAC0832,是一种内部带有数据输入寄存器的8位D/A转化器,采用CMOS工艺制成,芯片内部R-2R梯形电阻网络,用于对参考电压产生的电压进行分流,完成模数转换,转换结果以一组差动电流 IOUT1IOUT2输
6、出各引脚的功能分述如下:VREF : 参考电压输入端。根据需要一定大小的电压,由于它是转换的基准,要求数值正确,稳定性好。VCC:工作电压输入端。DI7-DI0:数据输入。可直接连接到数据总线。IOUT1IOUT2:互补的电流输出端。为了输出模拟电压,需加转换电路。3、8255A(可编程并行接口)8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚PA7PA0、PB7PB0和PC7PC0。其内部还有一个控制寄存器,即控制口。通常A口、B口作为输入输出的数据端口。C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端
7、口AB配合使用,可以用作控制信号输出或作为状态信号输入。8255可编程并行接口芯片工作方式说明:方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。 方式1:选通输入输出方式。这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信号。方式2:双向总线方式。只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。引脚图(如图3): 图34.2 硬件电路设计 (1)地址译码电路 如图4所示,从8086的地址线引出到地址锁存器74LS373,在经过译码器7
8、4LS138译出DAC0832的片选地址,实现地址译码,本设计中DAC0832用到的地址为2000H,因为译码器是Y2输出,所以地址线A15A12为0010,其他地址线均为0,这样得出译码地址2000H,对于8255A的端口地址用到的是4000H,因为是由译码器的Y4译出,至于后面各口的地址要乘以4,是因为8255A的两根地址线接到了8086的第三和第四根地址线。乘4相当于左移2位,由此得到译码地址。 图4 (2)按键电路 如图5所示,8255A的C口接有四个按键,每个按键控制一种波形的产生,由此控制波形的切换。A口接有四个发光二极管,对应按键产生波形,当C口第一个按键按下,对应A口第一盏灯亮
9、。 图5 (3)调幅电路 如图6所示,DAC0832的参考电压引脚接到滑动变阻器的滑动端,通过控制滑动变阻器来控制输入的参考电压 图6 (4)总电路图 如图7所示,除上述部分电路的叙述外,从8086还外接有数据收发器74LS245,再将D7D0接到DAC0832上。还有就是DAC0832的OUT1和OUT2和放大器LM324相连,构成反相比例放大器放大信号输送到示波器显示波形。 图75 软件设计5.1 程序流程图系统软件由主程序和产生波形的子程序组成,软件设计主要是产生各种波形的子程序的编程,通过编程可得到各种波形。周期的改变可采用插入延时子程序的方法来实现。主程序如图8所示。 图85.2 源
10、程序及其说明IOY0 EQU 4000H ;片选IOY0对应的端口始地址 MY8255_A EQU IOY0+00H*4 ;8255的A口地址MY8255_B EQU IOY0+01H*4 ;8255的B口地址MY8255_C EQU IOY0+02H*4 ;8255的C口地址MY8255_MODE EQU IOY0+03H*4 ;8255的控制寄存器地址;*STACK1 SEGMENT STACK DW 256 DUP(?)STACK1 ENDS;*DATA SEGMENTABC DB 80H,83H,86H,89H,8DH,90H,93H,96H DB 99H,9CH,9FH,0A2H,0
11、A5H,0A8H,0ABH,0AEH DB 0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5H DB 0C7H,0CAH,0CCH,0CFH,0D1H,0D4H,0D6H,0D8H DB 0DAH,0DDH,0DFH,0E1H,0E3H,0E5H,0E7H,0E9H DB 0EAH,0ECH,0EEH,0EFH,0F1H,0F2H,0F4H,0F5H DB 0F6H,0F7H,0F8H,0F9H,0FAH,0FBH,0FCH,0FDH DB 0FDH,0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH DB 0FFH,0FFH,0FFH,0FFH,
12、0FFH,0FFH,0FEH,0FDH DB 0FDH,0FCH,0FBH,0FAH,0F9H,0F8H,0F7H,0F6H DB 0F5H,0F4H,0F2H,0F1H,0EFH,0EEH,0ECH,0EAH DB 0E9H,0E7H,0E5H,0E3H,0E1H,0DEH,0DDH,0DAH DB 0D8H,0D6H,0D4H,0D1H,0CFH,0CCH,0CAH,0C7H DB 0C5H,0C2H,0BFH,0BCH,0BAH,0B7H,0B4H,0B1H DB 0AEH,0ABH,0A8H,0A5H,0A2H,9FH,9CH,99H DB 96H, 93H, 90H, 8DH, 89
13、H, 86H, 83H, 80H DB 80H, 7CH, 79H, 78H, 72H, 6FH, 6CH, 69H DB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51H DB 4EH, 4CH, 48H, 45H, 43H, 40H, 3DH, 3AH DB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27H DB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16H DB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AH DB 09H, 08H, 07H, 06H, 05H, 04H
14、, 03H, 02H DB 02H, 01H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02H DB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H DB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15H DB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25H DB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38H DB 3AH, 3DH, 40H, 43H, 45H, 48H, 4CH,
15、 4EH DB 51H, 55H, 57H, 5AH, 5DH, 60H, 63H, 66H DB 69H, 6CH, 6FH, 72H, 76H, 79H, 7CH, 80HDATA1 DW 1 DUP(01H) DATA ENDS ;SIN函数数值表 ;*CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV DX,MY8255_MODE ;初始化8255工作方式 MOV AL,89H ;方式0,A口、B口输出,C口输入 OUT DX,AL BEGIN: CALL CLEAR ;清屏 CALL CHULI ;
16、调用处理函数 JMP BEGIN ;无按键则跳回继续循环,有则退出 ;CHULI PROC NEAR MOV DX,MY8255_C IN AL,DX;判别按键的四个小程序,可供选择波形,按下第一个按钮,显示方波 LOOP1: CMP AL,0FEH JNZ LOOP2 MOV DX,MY8255_A OUT DX,AL ;亮第一盏灯 CALL FANGBO;!按下第二个按钮,显示的是三角波。LOOP2: CMP AL,0FDH JNZ LOOP3 MOV DX,MY8255_A OUT DX,AL ;亮第2盏灯 CALL THREESIDE;+按下第三个按钮,显示的是正弦波LOOP3: CM
17、P AL,0FBH JNZ LOOP4 MOV DX,MY8255_A OUT DX,AL ;亮第3盏灯 CALL SIN;#按下第四个按钮,显示的是锯齿波LOOP4: CMP AL,0F7H JNZ NOTTT MOV DX,MY8255_A OUT DX,AL ;亮第4盏灯 CALL BIGTOOTHNOTTT: RETCHULI ENDP;CLEAR PROC NEAR MOV DX,MY8255_C ;CLEAR子程序 清除数据 MOV AL,00H OUT DX,AL RET CLEAR ENDPdelay proc;延时子程序push axpush bxpush cxpush dx
18、mov ax,DATA1mov cx,axlp0:noploop lp0pop dxpop cxpop bxpop axretdelay endp;*方波发生信号 FANGBO PROC NEAR PUSH CXDEBUG:mov cx,0FFHMOV AL,0FFHSIM: MOV DX,2000HOUT DX,ALLOOP SIMMOV CX,0FFHSIM1: MOV AL,0 MOV DX,2000HOUT DX,ALLOOP SIM1MOV DX,MY8255_C IN AL,DX CMP AL,0FFH JNZ CHULIJMP DEBUGPOP CXRETFANGBO ENDP;
19、*锯齿波发生信号BIGTOOTH PROC NEARPUSH CXDEBUG1:MOV AL,0FFH SIM2:MOV DX,2000HOUT DX,ALDEC ALMOV BL,ALMOV DX,MY8255_C IN AL,DX CMP AL,0EFH JNZ A1CALL delayA1:MOV AL,BLJNZ SIM2MOV DX,MY8255_C IN AL,DX CMP AL,0FFH JNZ CHULIJMP DEBUG1POP CXRETBIGTOOTH ENDP;&&&&&&&&&&&
20、&&&&&&&&&&&&&&&&&正弦波发生信号SIN PROC NEAR PUSH CXDEBUG2:MOV DI,OFFSET ABCMOV CX,100HSIM3:MOV AL,DI MOV DX,2000Hinc DICALL delayOUT DX,ALLOOP SIM3 MOV DX,MY8255_C IN AL,DX CMP AL,0FFH JNZ CHULIJMP DEBUG2 POP CXRETSIN ENDP;#三角波发生信号THREESIDE PROC NEAR PUSH CX DEBUG3:MOV AL,0 SIM4:MOV DX,2000HOUT DX,AL inc ALCALL delaycmp al,0ffhJNZ SIM4JMP DEBUG4DEBUG4:MOV AL,0FFH SIM5:MOV DX,2000HOUT DX,AL DEC ALCALL delayJNZ SIM5 MOV DX,MY825
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年工厂股权转让与产业园区配套设施建设合同3篇
- 个人贷款延期合同书2024版标准格式版B版
- 二零二五年度啤酒节场地租赁合同(含设备安装与维护服务)3篇
- 2025年度朋友合资经营儿童游乐场合同4篇
- 二零二五版绿色建筑项目材料集中采购合同3篇
- 二零二五年度内墙腻子产品责任保险合同
- 2025年度生态旅游区临设转让及生态保护合同4篇
- 2025版土地居间业务规范化合同书(正规范本)6篇
- 二零二五年度啤酒产品节庆活动专用代理合同
- 二零二五年度二手车买卖及二手车评估合同协议2篇
- 2023年广东省公务员录用考试《行测》真题及答案解析
- 2024年公证遗产继承分配协议书模板
- 燃气经营安全重大隐患判定标准课件
- 深圳小学英语单词表(中英文)
- 护理质量反馈内容
- 山东省济宁市2023年中考数学试题(附真题答案)
- 抖音搜索用户分析报告
- 钻孔灌注桩技术规范
- 2023-2024学年北师大版必修二unit 5 humans and nature lesson 3 Race to the pole 教学设计
- 供货进度计划
- 弥漫大B细胞淋巴瘤护理查房
评论
0/150
提交评论