微机原理与接口技术课程设计.docx

上传人:PIYPING 文档编号:11569053 上传时间:2021-08-24 格式:DOCX 页数:20 大小:734.47KB
返回 下载 相关 举报
微机原理与接口技术课程设计.docx_第1页
第1页 / 共20页
微机原理与接口技术课程设计.docx_第2页
第2页 / 共20页
微机原理与接口技术课程设计.docx_第3页
第3页 / 共20页
微机原理与接口技术课程设计.docx_第4页
第4页 / 共20页
微机原理与接口技术课程设计.docx_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《微机原理与接口技术课程设计.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计.docx(20页珍藏版)》请在三一文库上搜索。

1、接口技术课程设计 微机原理与接口技术 课 程 设 计报告书课 题:利用DAC设计波形发生器学 院:计算机科学与技术 班 级:计 091 班 姓 名:王 骏(0913022030)沈志轩(0913022033)徐晓龙(0913022029)指导教师: 顾 辉 提交日间:2012年6月17日 目 录一、 引言3二、 设计目的3三、 设计内容及要求.3四、 选用器材.4五、 设计原理及方案4六、 硬件设计.5七、 软件设计.9八、 调试方法与结果15九、 收获、体会.17十、 参考文献.18一引言波形发生器是一种常用的信号源,广泛的应用于电子电路、自动控制系统和教学实验等领域,是现代测试领域内应用最

2、为广泛的通用仪器之一。在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号源。由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察。测量被测仪器的输出响应,以分析确定它们的性能参数。信号发生器是电子测量领域中最基本、应用最为广泛的一类电子仪器。它可以产生多种波形信号,如锯齿波、三角波、梯形波等,因而广泛应用于通信、雷达、导航、宇航等领域。本设计正是基于数模转换原理,采用8086最小系统经数模转换芯片DAC0832设计并制作出了多功能信号发生器。用该方法设计的多功能信号发生器具有频率稳定、幅值稳定、波形失真度低、原理简单等特点。二、设计目的(1)掌握方

3、波,三角波,锯齿波,正弦波函数发生器的原理及设计方法。(2)掌握8086的工作原理,电路连接以及其最小系统的设计。(3)了解数模转换芯片的的工作方式和使用。(4)学会用proteus 画电路原理图。三、设计内容及要求31、设计要求利用DAC设计一个波形发生器,能分别产生三角波、正弦波、锯齿波和方波,要求自行设计输出波形的切换方式。3.2、设计内容以8086为CPU。利用D|A转换器,编程产生锯齿波,正弦波,三角波,方波信号。输出上述四种波形。波形的控制由接在8255上的开关的实现:设计四个开关,KEY1,KEY2,KEY3,KEY4,分别控制输出正弦波、方波、三角波和锯齿波波形。接在8255上

4、的数码管显示4个数1、2、3、4分别代表三角波、正弦波、锯齿波、方波。由接在8253上的扬声器产生四种声音do、ri、mi、fa分别代表三角波、正弦波、锯齿波、方波。四、选用器材器材名称数量8086CPU174273(锁存器)374154(译码器)18255A182531DAC08321非门2与非门1导线若干14581电阻5按钮4数码管1五、 设计原理及方案5.1设计原理 D/A转换器产生各种波形的原理:利用D/A转换器输出的模拟量与输入数字量成正比关系这一特点,将D/A转换器作为微机输出接口,CPU通过程序向D/A转换器输出随时间呈现不同变化规律的数字量,则D/A转换器就可输出各种各样的模拟

5、量,如方波、三角波、锯齿波、正弦波等。8255A实现波形切换的原理:从8255A的C口读入外接开关的信号,CPU读入不同信号值,从而执行不同的代码,向D/A转换器传送不同的数据,控制D/A转换器输出锯齿波、三角波、方波、正弦波和锯齿波。5.2系统总体设计通过查阅相关的资料,本设计采用8086和数模转换芯片(DAC0832)实现波形的产生,波形的产生由程序控制,向D/A的输入端按一定的规律发送数据,经过D/A和1458输出。总体框图如图2-1所示,此方案通过编程简化了外部电路,原理简单,容易实现。使用4个按键共同实现正弦波,方波,三角波,锯齿波这四种常见波形的产生及产生不同声音的功能。按钮开关8

6、086控制单元D/A示波器图2-1系统原理框图5.3系统主要功能主要功能是实现利用8086和8位D/A转换芯片DAC0832共同实现正弦波,方波,三角波,锯齿波这四种常见波形的发生,并且通过按键利用DAC接口实现波形发生器可以产生锯齿波、三角波、方波和正弦波等常用标准波形。将8255的PB0PB6作为数码管的控制位。将8255 上的C口某几位分别作为这四种波的控制位,当相应的控制键按下后,出现相应的波形。由8253的0端口产生一段信号连接到扬声器从而产生四种声音分别代表四种波。六、 硬件设计6.1芯片简介1、8086(8088)CPU引脚图(如图1): 图1 图22、DAC0832(D/A转换

7、器) 引脚图(如图2): NSC公司生产的DAC0832,是一种内部带有数据输入寄存器的8位D/A转化器,采用CMOS工艺制成,芯片内部R-2R梯形电阻网络,用于对参考电压产生的电压进行分流,完成模数转换,转换结果以一组差动电流 IOUT1IOUT2输出各引脚的功能分述如下:VREF : 参考电压输入端。根据需要一定大小的电压,由于它是转换的基准,要求数值正确,稳定性好。VCC:工作电压输入端。AGAN为模拟地,DGAN为数字地。在模拟电路中,所有的模拟地要连在一起然后将模拟地,数字地连接到一个公共接地点。DI7-DI0:数据输入。可直接连接到数据总线。IOUT1IOUT2:互补的电流输出端。

8、为了输出模拟电压,需加转换电路。3、8255A(可编程并行接口)8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚PA7PA0、PB7PB0和PC7PC0。其内部还有一个控制寄存器,即控制口。通常A口、B口作为输入输出的数据端口。C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。它们分别与端口AB配合使用,可以用作控制信号输出或作为状态信号输入。 8255可编程并行接口芯片工作方式说明:方式0:基本输入输出方式。适用于三个端口中的任何一个。每一个端口都可以用作输入或输出。输出可被锁存,输入不能锁存。 方式1:选通输入输出

9、方式。这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信号。方式2:双向总线方式。只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。引脚图(如图3):4、 8253inter8253是一种能够完成定时和计数的芯片,8253内部有3个16位计数器通道,通过对他们编程,每个计数器可以按照6种工作方式工作,并且都可以按2或10进制格式进行计数。,最高频率为2HZ.。8253还可以用于许多其他场合,比如可作编程方波发生器,分频器等。引脚:1数据缓冲总线数据总线缓冲器是8253与系统总线相连时使用的接口电路,它

10、由8位双相三态缓冲器构成,CPU用输入输出指令对8253进行读写操作的信息都由8位数据总线传输:(1)CPU在对8253进行初始化编程时,向他写入控制字。(2)CPU向某一计时器写入计数初值。(3)从计数器读出计数值。2读写控制逻辑读写控制逻辑接受系统控制总线送来的输入信号,经由组合后形成控制信号,对各部分操作进行控制。可接受的信号有:(1) CS片选,低电平有效,由数据总线经由IO端口译码电路产生。只有CS低电平时,CPU才能对8253进行读写操作。(2) RD读信号,低电平有效,当RD位地电平时,表示CPU正在读取所选定的计数器的通道的内容。(3) WR写信号,低电平有效。当WR为低电平时

11、,表示CPU正在将计数器初值写入所选中的通道口中,或者将控制字写入内部寄存器中。(4) A1A2 端口选择信号,改变它的值,来选择8253内三个计数器通道。如果8253和与8位数据总线的微机相连,只要将A1A0分别与地址总相联。如果系统采用的是8086CPU,则数据总线为16位,传输数据时,总是将低8位数据送往偶地址,将高8位送往奇地址。3计数器8253内部包含三个完全相同俄计数器定时器通道,对3个通道的操作,完全独立的。每个通道都包含1个8位的控制字寄存器,1个16位的减寄存器,和一个锁存器,执行部件是一个16位的减法计数器。每个通道工作时,对输入到CLK引脚上的脉冲按2进制或10 进制格式

12、进行计数。每当输入一个时钟脉冲,计数器减1,当计数器的值减为0时从,从OUT引脚输出一个脉冲信号。GATE引脚上的门控制信号,决定他是否允许计数。6.2硬件电路设计各模块电路的设计译码电路原理图按键电路系统总原理图七、软件设计7.1程序流程图系统软件由主程序和产生波形的子程序组成,软件设计主要是产生各种波形的子程序的编程,通过编程可得到各种波形。周期的改变可采用插入延时子程序的方法来实现。主程序和几种常用波形子程序的流程图如图所示。 图 3 锯齿波发生子程序流程图 图 4 三角波发生子程序流程图 图 5 方波发生子程序流程图 图 6 正弦波发生子程序流程图7.2源程序及其说明io4=800h;

13、0832的地址io3=600h;8253的地址io2=400h;8255的地址data segmentsin_wave db 200,195,181,159,131 db 100,69,41,19,5,0,0 ;正弦波幅值LED DB 06H,5BH,4FH,66H ;共阴极段码表data endscode segmentassume cs:code,ds:datastart:mov ax,data ;建立DS段地址mov ds,axmov al,00010110b ;8253通道0,16位读写,工作方3方波发生器,bcd计数mov dx,io2+6out dx,al ;送控制字call ji

14、ansan:mov Bx,255 ;255=FFHSAN3:MOV CX,BXmov al,0mov dx,io4san1:out dx,al ;三角波形上升段call delayinc alloop san1mov cx,BXmov al,BLmov dx,io4san2:out dx,al ;三角波形下降段call delaydec alloop san2mov al,192mov dx,io2out dx,alcall jiansin:mov cx,11mov bx,0mov dx,io4lea si,sin_wavesin1:mov al,sibx ;正弦波下降段out dx,alca

15、ll delay1inc bxloop sin1mov cx,11sin2:mov al,sibx ;正弦波上升段out dx,alcall delay1dec bxloop sin2 mov dx,io2MOV AL,170out dx,alcall jianjuchi:mov Bx,255juchi1:mov cx,bxmov al,blmov dx,io4juchi2:out dx,al;下降沿call delaycall delaydec alloop juchi2mov al,151mov dx,io2out dx,alcall jianfang:mov Bx,255fang1:mo

16、v al,bl ;高电平段mov dx,io4out dx,alcall delay1MOV al,0 ;低电平段out dx,alcall delay1mov al,143mov dx,io2out dx,alcall jiandelay proc;延时子程序一push axpush bxpush cxpush dxmov cx,50lp0:noploop lp0pop dxpop cxpop bxpop axretdelay endp delay1 proc;延时子程序二push axpush bxpush cxpush dxmov cx,1250lp1:noploop lp1pop dx

17、pop cxpop bxpop axretdelay1 endp jian proc nearjian1: mov al,10001000B;c口高四位输入 MOV DX,io3+6HOUT DX,AL;送控制字MOV AL,0MOV DX,io3+4HOUT DX,AL;c口低四位为0即行输出为0nokey:in al,dx;读c口高四位and al,0f0H;屏蔽c口低四位cmp al,0f0Hjz nokey;无键按下则循环call delay1;延时in al,dxshr al,1;列信息存于al低四位shr al,1shr al,1shr al,1mov bl,0;初始列变量BL为0

18、mov cx,4jian2:shr al,1;逐列检测,找出为0信号jnc jian3inc blloop jian2jian3:mov al,10010001b;c口低四位输入mov dx,io3+6hout dx,al;送控制字mov al,0mov dx,io3+4hout dx,al;c口高四位为0即列输出为0in al,dxand al,0fh;屏蔽高四位cmp al,0fhjz jian1;出错从头来mov bh,0;初始行变量为0mov cx,4jian4:shr al,1jnc jian5inc bh;初始行变量BH为0loop jian4jian5:shl bh,1shl b

19、h,1add bh,bl;BH为键号MOV CH,BH;保存键号在ch中MOV AL,BH;数码管显示波行号LEA BX,LED;1三角波2正弦波3锯齿波4方波XLATout dx,alMOV DX,IO3+2OUT DX,ALMOV DX,IO3IN AL,DXcmp ch,0jz sancmp ch,1jz sincmp ch,2jz juchicmp ch,3jz fang jmp jian1retjian endpcode endsend start八、 调试方法与结果三角波正弦波锯齿波方波九、 收获、体会 经过一个星期的奋战,终于完成了一个还算可以的设计,看着自己的劳动成果,心里有种

20、说不出的感觉。毕竟自己的努力还算有所回报,我为自己的努力感到自豪,当然我也认识到了自己学习中的不足,看到了自己在运用知识方面欠缺,程序设计方面还是不怎么熟练的,估计图也就刚刚达到标准。我想说:为完成这次课程设计我们确实很辛苦,但苦中仍有乐,时间对我们来说一下子变得很宝贵,真是恨不得睡觉的时间也拿来用了。当自己越过一个又一个难题时,笑容在脸上绽放。当我看到设计终于完成的时候,我乐了。对我而言,知识上的收获重要,精神上的丰收更加可喜。从这次的课程设计中,我不仅巩固了课本的知识,还学到了许许多多其他的知识。我知道了每一个课程之间是融会贯通的,于是就要重新翻书来确定自己的一些设计是否正确。这次设计让我

21、知道了学无止境的道理。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。这次课程设计必将成为我人生旅途上一个非常美好的回忆!当然我的设计肯定有不足之处,希望老师批评指正,下次一定会做得更好。十、 参考文献1顾晖,梁惺彦等.微机原理与接口技术基于8086和Proteus仿真. 北京:电子工业出版社,2011 ,P262-P296.2周明德.微型计算机系统原理及应用.北京:清华大学出版社,2009.3张弥左,王兆月,邢立军等.微型计算机接口技术.北京:机械工业出版社,2009. 4戴梅萼,史嘉权.微型计算机技术及应用.北京:清华大学出版社,2008. 5沈美明,温冬婵.IBM-PC汇编语言程序设计.北京:清华大学出版社,2010.第20页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1