ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:188.62KB ,
资源ID:10216492      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10216492.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理课程设计dac0832波形发生器.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理课程设计dac0832波形发生器.docx

1、微机原理课程设计dac0832波形发生器二一四二一五学年 第一学期信息科学与工程学院自动化系课程设计报告课程名称: 微机原理及应用课程设计 班 级: 自动化1204班 * * * 学 号: * * * 时 间: 2014.12.28 题目:函数发生器1的设计1.设计任务用8086做控制器,利用DAC0832设计一个函数发生器,能分别产生方波、阶梯波(每阶梯1V)、锯齿波(正向或负向)和三角波,并利用按键选择(自行定义)输出波形同时将当前输出波形代号显示在LED上:0为方波、1为阶梯波、2为锯齿波、3为三角波。2.设计要求波形输出幅值和频率不限(可根据需要考虑增加调频调幅功能),通过8255A进

2、行按键选择。3.设计内容 3.1系统方案的设计与选择:(1)数字按键的实现可以通过8255的输入输出端口,定义方式0工作方式,C口低四位输入信号,B口输出信号,通过按键改变C口电平信号,使输入信号改变,并在在B口输出不同信号,在数码管上显示不同数字;(2)波形的产生则使用8086与DAC0832连接,通过8086给DAC0832输入不同数字信号,在DAC0832的输出端输出波形,波形的观察使用一个放大器连接模拟示波器显示。 3.2系统框图: 3.3系统基本介绍:此方案是通过并行接口芯片8255A和8086计算机的硬件连接,并通过8086控制DAC0832产生波形相应波形,通过8255A输出信号

3、控制数码管显示不同数字。8255A的C端口有四个按键,按下相应的按键,使输入低电平。1按下第一个按键显示数字0,在示波器上产生方波;2按下第二个按键显示数字1,产生阶梯波;3按下第三个按键显示数字3,产生锯齿波;4按下第四个按键显示数字4,产生三角波。 3.4模块功能介绍:8255A:D0D7口与8086数据端连接,PB0PB6与七段共阴极数码管相连接以显 示数字,PC0PC4连接四个按键,实现输入电平的改变。A0、A1接地址 线A1、A2,CS端连接74ls138的片选端。DAC0832:DI0DI7接8086的数据端CS接74LS138的片选端,Vref接输入电压,这里我 选用的是+5v电

4、压,IOUT1、IOUT2接一个放大器与示波器,实现数字信号的 显示。74LS138:三八译码器,ABC分别接373的A3,A4,A5,使能端E1接A7,这几个地址 端共同参与地址译码,Y0接8255A的CS端,Y1接DAC0832的CS端。74HC373:三态锁存器,这里用来锁存地址,AD0AD7分别接8086,A0A7为地址信号。8086:16位微处理器芯片,AD0AD15为地址/数据总线,分时复用,与373AD0AD7相连 并作为数据端与DAC0832、8255A相连。 3.5程序流程图:清屏子程序:波形选择函数:4.功能实现电路图:8255A:改变按键,写入不同数据,选择波形产生函数,

5、并在PB口与数码管连 接,显示数字。DAC0832:实现数字信号与模拟信号的转变,将8086通入的数字信号转换为模拟信号.74LS138:三八译码器,进行DAC0832与8255的片选。74HC373:三态锁存器,锁存地址信息。8086:16位微处理器芯片,进行数据的输入与读取,并进行地址编码程序源代码: DAC0832 EQU 88H ;DAC0832的编码地址 M8255_A EQU 80H ;8255的A口地址 M8255_B EQU 82H ;8255的B口地址 M8255_C EQU 84H ;8255的C口地址 M8255_Z EQU 86H ;8255的控制寄存器地址;主程序部分

6、 STACK SEGMENT STACK stack DW 32 DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK START: MOV DX,M8255_Z ;初始化8255工作方式 MOV AL,81H ;方式0,C口输入,B口输出 OUT DX,AL STEP: CALL CLEAR ;清屏 CALL BEGIN ;调用波形选择函数 JMP STEP ;继续循环;- ;清理子程序 CLEAR PROC NEAR MOV DX,M8255_B ; 清除显示内容 MOV AL,00H OUT DX,AL RET CLEAR ENDP

7、;- ;判断输入数据,选择波形 BEGIN PROC NEAR MOV DX,M8255_C ;读c口输入数据 IN AL,DX CMP AL,0EH ;当按第一个键时显示0输出方波 JNE L1 MOV DX,M8255_B MOV AL,3FH OUT DX,AL CALL FANGBO ;调用方波子程序 L1: CMP AL,0BH ;当按第三个键时显示3输出锯齿波 JNE L3 MOV DX,M8255_B MOV AL,4FH OUT DX,AL CALL DOG ;调用锯齿波子程序 L3: CMP AL,0DH ;当按第二个键时显示1输出阶梯波 JNE L4 MOV DX,M825

8、5_B MOV AL,06H OUT DX,AL CALL CAT ;调用阶梯波子程序 L4: CMP AL,07H ;当按第四个键时显示4输出三角波 JNE L5 MOV DX,M8255_B MOV AL,66H OUT DX,AL CALL SANJIAOBO ;调用三角波子程序 L5: RET ;否则退出 BEGIN ENDP;方波信号产生程序 FANGBO PROC NEAR F1: MOV CX,0FFH FB: MOV DX,DAC0832 MOV AL,0 OUT DX,AL LOOP FB ;形成一个延迟的信号 MOV CX,0FFH FB1: MOV AL,0FFH MOV

9、 DX,88H OUT DX,AL LOOP FB1 MOV DX,M8255_C ;判断按键是否改变 IN AL,DX CMP AL,0EH JE F1 JMP BEGIN RET FANGBO ENDP;锯齿波信号产生程序 DOG PROC NEAR C1: MOV DX,M8255_C ;判断按键是否改变 IN AL,DX CMP AL,0BH JE CB JMP BEGIN CB: MOV AL,0 LLL: MOV DX,DAC0832 OUT DX,AL INC AL CMP AL,0FFH ;判断是否到顶 JE C1 JMP LLL RET DOG ENDP;阶梯波信号产生程序

10、CAT PROC NEAR D1: MOV DX,M8255_C ;判断按键是否改变 IN AL,DX CMP AL,0DH JE D2 JMP BEGIN D2: MOV AL,0 D3: MOV DX, DAC0832 OUT DX,AL MOV CX,33H D4: LOOP D4 CMP AL,0FFH ;判断是否到顶 JE D1 ADD AL,33H ;每次信号AL加33H,即每阶梯加1V JMP D3 CAT ENDP;三角波信号产生程序 SANJIAOBO PROC NEAR B1: MOV AL,0 MOV DX,M8255_C ;判断按键是否改变 IN AL,DX CMP A

11、L,07H JE B2 JMP BEGIN B2: MOV DX,DAC0832 OUT DX,AL INC AL CMP AL,0FFH ;判断是否到顶,到顶跳转 JE B3 JMP B2 B3: MOV DX,DAC0832 OUT DX,AL DEC AL JE B1 ;到0转移,重新开始 JMP B3 RET SANJIAOBO ENDP;子程序结束 CODE ENDS END START5.总结这次的微机课程设计让我真正认识到实际操作与书本知识的不同。1、首先要注意编码的严谨性,开始自定义的锯齿波阶梯波简略为JCB,JTB 在实际过程中却发现这些不能作为目的标号,导致编译失败;2、其次是选片问题,最开始使用的是80H到83H作为ABC及控制字端口的地址,但是却怎么也选不上,通过微机实验报告书发现书上使用的是62、64、66等偶地址,改用偶地址后便实现了成功的片选。3、在初次编程时什么都没注意,编译有十几处的服务错误,自己按行依次修改的。4、三角波仿真与阶梯波仿真时进入了死循环导致无法出现波形,查找之后改变了反悔的地址。尽管出现了各种问题,最后还是成功完成了这次课程设计,经历了辛苦做出来的东西才会对所学知识更加熟悉,以后的设计相信也会更加顺利。6.参考文献1 朱定华,微机原理、汇编与接口技术,清华大学出版社,2005

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1