三角波发生器设计报告.docx

上传人:rrsccc 文档编号:11078388 上传时间:2021-06-27 格式:DOCX 页数:12 大小:263.12KB
返回 下载 相关 举报
三角波发生器设计报告.docx_第1页
第1页 / 共12页
三角波发生器设计报告.docx_第2页
第2页 / 共12页
三角波发生器设计报告.docx_第3页
第3页 / 共12页
三角波发生器设计报告.docx_第4页
第4页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《三角波发生器设计报告.docx》由会员分享,可在线阅读,更多相关《三角波发生器设计报告.docx(12页珍藏版)》请在三一文库上搜索。

1、.计算机硬件技术课程设计学院:自动化工程学院班级:学号:同组人 :.专业资料 .2015年 1月目录一、目的二、容三、设计任务四、方案选择及原理 五、所用器件六、原理及结果图七、流程图八、程序代码九、设计中遇到的问题 .专业资料 .十、收获及体会三角波发生器一、目的1、了解和掌握 8086、DAC0832等接口芯片和示波器的原理和功能;2、能用这些接口芯片构建一个简单的系统控制对象,3、掌握接口电路的综合设计与使用;4、通过自己动手,进一步了解计算机工作原理,接口技术,提高计算机硬件,软件综合应用能力,即对微机原理,接口技术,汇编语言程序设计进行综合训练。二、容利用 D/A 设计一个三角波发生

2、器, 可利用按键改变其输出波形的幅值。 例如,可利用 5 个按键改变其输出波形的幅值,当按下按键时使 D/A 输出幅值从 1V 增加到 5V。三、设计任务1、选用 8086 和适当的存储器及接口芯片完成相应的功能。2、画出详细的硬件连接图。3、画出软件流程图。4、给出所有程序清单并加上必要注释。5、完成设计说明书(列出参考文献,所用器件型号)。四、方案选择及原理D/A 转换器产生各种波形的原理:利用 D/A 转换器输出的模拟量与输入数字量成正比关系这一特点,将 D/A 转换器作为微机输出接口, CPU通过程序向 D/A 转换器输出随时间呈现不同变化规律的数字量, 则 D/A 转换器就可输出各种

3、各样的模拟量,如方波、三角波、锯齿波、正弦波等。五、所用器件CPU8086、地址锁存器 74LS373、译码器 74154、数 / 模转换器 DAC0832主要器件简介.专业资料 .8086 功能简介1. 概述Intel8086 是一个由 Intel于 1978 年所设计的 16 位微处理器芯片。8086 CPU有 20 条地址线,可直接寻址 1MB的存储空间,每一个存储单元可以存放一个字节( 8 位)二进制信息。为了便于对存储器进行存取操作,每一个存储单元都有一个惟一的地址与之对应,其地址围用十进制表示为 0 1048575,用十六进制表示为 00000H FFFFFH。Intel 8086

4、 拥有四个 16 位的通用寄存器,也能够当作八个 8 位寄存器来存取,以及四个 16 位索引寄存器 ( 包含了堆栈指标 ) 。资料寄存器通常由指令隐含地使用,针对暂存值需要复杂的寄存器配置。它提供 64K 8 位元的输出输入 ( 或 32K 16 位单元 ) ,以及固定的向量中断。大部分的指令只能够存取一个存位址,所以其中一个操作数必须是一个寄存器。运算结果会储存在操作数中的一个。Intel 8086 有四个存区段 (segment) 寄存器,可以从索引寄存器来设定。区段寄存器可以让 CPU 利用特殊的方式存取 1 MB存。8086 把段地址左移 4 位然后把它加上偏移地址, 8086 的寻址

5、方式改变让存扩充较有效率。2. CPU 工作于最小模式中部分引脚信号定义(1) AD15 AD0( Address Data Bus ):地址 / 数据总线,双向,三态。这是一组采用分时的方法传送地址或数据的复用引脚。根据不同时钟周期的要求,决定当前是传送要访问的存储单元或I/O 端口的低 16 位地址,还是传送16 位数据,或是处于高阻状态。(2) (RD) 读选通信号,三态,输出,低电平有效信号低电平有效时,表示 CPU正在进行读存储器或读 I/O 端口的操作(3) (WR) 写选通信号,三态,输出,低电平有效信号有效时,表明 CPU正在执行写总线周期,同时由信号决定是对存储器还是对 I/

6、O 端口执行写操作(4) (M/IO) 存储器或 I/O 端口控制信号,三态,输出信号为高电平时,表示CPU正在访问存储器,为低电平时,表示CPU正在访问 I/O 端口。(5) INTR( Interrupt Request)可屏蔽中断请求信号,输入,电平触发或边沿触发,高电平有效CPU在每条指令周期的最后一个时钟周期检测此信号,一旦检测到此信号有效,并且中断允许标志位 IF=1 时, CPU在当前指令执行完后,转入中断处理程.专业资料 .序。用 STI 指令,可使中断允许信号标志位 IF 置“1”,用 CLI 指令可使 IF 置“ 0”,从而可实现中断屏蔽。3. 8086 指令系统按功能分类

7、, 8086 的指令共有六大类,它们是:数据传送指令、算术运算指令、逻辑运算和移位指令、 字符串处理指令、 控制转移指令以及处理器控制指令。常用指令简介:(1) MOV 传送指令( Move)指令格式: MOV 目的,源指令功能:将源操作数(一个字或一个字节)传送到目的操作数(2) IN输入指令( Input )指令格式: IN AL, 端口地址或 IN AX, 端口地址 IN AL,DX ; 端口地址存放在 DX寄存器中或 IN AL,DX指令功能:输入指令用来从指定的外设寄存器取信息送入累加器。(3) OUT 输出指令( Output )指令格式: OUT AL, 端口地址或 OUT AX

8、, 端口地址 OUT AL,DX ; 端口地址存放在 DX寄存器中或 OUT AL,DX指令功能:输出指令用来把累加器的容送往指定的外设存储器当端口地址大于 FFH时,必须使用第二种寻址方式,即先将端口号送入DX寄存器,再执行操作。(4) CMP 比较指令( Compare)指令格式: CMP 目的 , 源指令功能:两个操作数相减,不产生运算结果,仅影响标志,接着可用条件跳转指令决定程序去向(5)JMP无条件转移指令指令格式:JMP 目的指令功能:使程序无条件的转移到指定的地址去执行.专业资料 .74LS373 功能简介74LS373 是常用的地址锁存器芯片,它实质是一个是带三态缓冲输出的8D

9、 触发器。 74LS373 工作原理简述: (1)1脚是输出使能(OE), 是低电平有效,当 1 脚是高电平时 , 不管输入 3、4、7、8、13、14、17、18 如何 , 也不管 11脚 ( 锁存控制端 ,G) 如何 , 输出 2(Q0) 、5(Q1) 、6(Q2) 、9(Q3) 、12(Q4) 、15(Q5) 、16(Q6) 、 19(Q7) 全部呈现高阻状态 ( 或者叫浮空状态 );(2)当1 脚是低电平时 , 只要 11 脚 ( 锁存控制端 ,G) 上出现一个下降沿 , 输出 2(Q0)、5(Q1) 、6(Q2) 、9(Q3) 、12(Q4) 、 15(Q5) 、16(Q6) 、19

10、(Q7) 立即呈现输入脚3、4、7、8、13、14、 17、 18 的状态。锁存端 LE 由高变低时,输出端8 位信息被锁存,直到LE 端再次有效。当三态门使能信号OE为低电平时,三态门导通,允许Q0Q7输出, OE为高电平时,输出悬空。.专业资料 .74154 功能简介74154 为 4 线 16 线译码器,当选通端( E1、E2)均为低电平时,可将地址端( ABCD)的二进制编码在一个对应的输出端,以低电平译出。 如果将 E1 和 E2 中的一个作为数据输入端,由 ABCD对输出寻址。A、B、C、D译码地址输入端 ( 低电平有效 )E1 、 E2选通端 ( 低电平有效 )015输出端 (

11、低电平有效 ) 。.专业资料 .DAC0832功能简介DAC0832是 CMOS工艺制造的8 位单片 D/A 转换器,属于R-2RT 型电阻网络的 8 位 D/A 转换器,建立时间150ms,为电流输出型,并且片带输入数字锁存器。 DAC0832与 89S52 接成的是单缓冲方式,由于DAC0832是电流输出,而我们用的是模拟电压,在这种情况下,要将输出的电流转换成电压,转换电路接成同相电压输出形式。引脚的功能定义1、 DI0 DI7 : 8 位数字量输入信号。2、 CS:输入寄存器的选择信号,低电平有效。3、 WRI、 WR2:前者为输入寄存器的“写”选通信号,低电平有效。后者为 DAC寄存

12、器的“写”选通信号。4、 XFER:数据转移控制信号,用来控制WR2信号,低电平有效。5、 IOUTI :电流输出引角1 端,此电流输出端为是“1”的各位权电流汇集输出端。当DAC寄存器全为“1”时,此电流最大,当DAC寄存器全为“ 0”时,此电流为“0”。6、 IOUT2:电流输出引角2 端,此电流输出端是逻辑电平为“0”的各位输出电流之和。在数值上,IOUT, +IOUT2=常数。7、 Rfb :反馈信号输入端,芯片已连接有反馈电阻。8、 VREF:基准电压输入端,可在-10V +10V 围选择。9、 AGND、 DGND:模拟地和数字地,为了防止串扰,系统的模拟地应共接与一点,系统字地汇

13、于一点,然后两地再共接与一点。10、 VCC:工作电源,可在+5V +15V 间选择。六、原理及结果图.专业资料 .原理图运行结果七、流程图.专业资料 .八、程序代码CODE SEGMENT;代码段开始ASSUME CS:CODE;代码段定义START: MOV CX,256;计数器设为 256,计数器大小与上升高度相等MOV AL,00H;高度初始值为 0MOV DX,0000H;DAC0832地址为 0000HLOOP1: OUT DX,AL;输出 ALMOV BX,125;延迟环节的计数器使用BX,延迟 125 个单位时间DELAY1:DEC BX; BX自减 1JNZ DELAY1;直

14、到 BX为 0 才延迟结束INC AL;AL自加 1LOOP LOOP1;三角波上升过程的循环,256 次后结束MOV CX,256;计数器重设为 256,开始 AL 下降MOV AL,0FFH;AL 为 255.专业资料 .MOV DX,0000HLOOP2: OUT DX,AL;输出 ALMOV BX,125;延迟DELAY2:DEC BXJNZ DELAY2DEC AL;AL自减 1LOOP LOOP2;三角波下降的循环, 256 次后返回上一段程序JMP START; AL再次上升CODE ENDS;代码段结束END START;整个程序结束九、设计中遇到的问题本次大作业中所用到的 p

15、roteus 仿真软件可以说是很熟悉了, 只要的问题的如何在软件当中画出他的仿真电路图, 根据在计算机硬件这门课程中学到的有关于 cpu8086 以及 D/A 数模转换的基础知识原理, 在绘制仿真的过程中, 在如何用键盘输入 1-5V 这个环节上可谓是下了蛮大功夫,在仿真的过程中实在不知道如何输入这一环节, 为此和同学讨论了许久怎样实现这个功能, 最后被网上一篇有关微机原理的容点醒,于是用了 5 个开关分别接入 1,2,3,4 ,5V,在仿真的过程可以接入 1,2,3,4 , 5V,通过这样改变幅值。而这 CPU程序代码这一块,书上 107 页有实现三角波输出的具体代码段,主要是通过 EMU8086仿真运行,在一番修改过后时间得到正确的代码,再转化成 .exe 格式放入 8086 中,最终实现整个设计的目的。十、收获及体会通过本次大作业的课程设计,通过自己的不断实践过程,对于我们所学习的计算机硬件方面的东西有了更深的了解,发现其实在我们当中许许多多的东西都用到了微机原理, 而我们做课程设计就是在一样设计成品在实际运用到生活当中之前先在仿真实验当中验证它是可行的,是可以达到我们设计目的的, 然后再把它投入到人类需求方面, 现在越来越多的东西趋近于智能控制,而我们所要做的就是学会怎样让一种想法变成现实,敢想敢做才是这门课程开设的精髓。.专业资料 .

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

当前位置:首页 > 社会民生


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