三角波发生器设计报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机硬件技术课程设计

学院:自动化工程学院

班级:

姓名:

学号:

同组人:

2015年1月

目录

一、目的············································

二、内容············································

三、设计任务········································

四、方案选择及原理··································

五、所用器件········································

六、原理及结果图····································

七、流程图··········································

八、程序代码········································

九、设计中遇到的问题································

十、收获及体会····································

三角波发生器

一、目的

1、了解和掌握8086、DAC0832等接口芯片和示波器的原理和功能;

2、能用这些接口芯片构建一个简单的系统控制对象,

3、掌握接口电路的综合设计与使用;

4、通过自己动手,进一步了解计算机工作原理,接口技术,提高计算机硬件,

软件综合应用能力,即对微机原理,接口技术,汇编语言程序设计进行综合训练。

二、内容

利用D/A设计一个三角波发生器,可利用按键改变其输出波形的幅值。例如,可利用5个按键改变其输出波形的幅值,当按下按键时使D/A输出幅值从1V增加到5V。

三、设计任务

1、选用8086和适当的存储器及接口芯片完成相应的功能。

2、画出详细的硬件连接图。

3、画出软件流程图。

4、给出所有程序清单并加上必要注释。

5、完成设计说明书(列出参考文献,所用器件型号)。

四、方案选择及原理

D/A转换器产生各种波形的原理:利用D/A转换器输出的模拟量与输入数字量成正比关系这一特点,将D/A转换器作为微机输出接口,CPU通过程序向D/A 转换器输出随时间呈现不同变化规律的数字量,则D/A转换器就可输出各种各样的模拟量,如方波、三角波、锯齿波、正弦波等。

五、所用器件

CPU8086、地址锁存器74LS373、译码器74154、数/模转换器DAC0832

主要器件简介

8086功能简介

1. 概述

Intel 8086是一个由Intel于1978年所设计的16位微处理器芯片。8086 CPU 有20条地址线,可直接寻址1MB的存储空间,每一个存储单元可以存放一个字节(8位)二进制信息。为了便于对存储器进行存取操作,每一个存储单元都有一个惟一的地址与之对应,其地址范围用十进制表示为0~1048575,用十六进制表示为00000H~FFFFFH。

Intel 8086拥有四个16位的通用寄存器,也能够当作八个8位寄存器来存取,以及四个16位索引寄存器(包含了堆栈指标)。资料寄存器通常由指令隐含地使用,针对暂存值需要复杂的寄存器配置。它提供64K 8 位元的输出输入(或32K 16 位单元),以及固定的向量中断。大部分的指令只能够存取一个内存位址,所以其中一个操作数必须是一个寄存器。运算结果会储存在操作数中的一个。

Intel 8086有四个内存区段(segment) 寄存器,可以从索引寄存器来设定。区段寄存器可以让 CPU 利用特殊的方式存取1 MB内存。8086 把段地址左移 4 位然后把它加上偏移地址, 8086 的寻址方式改变让内存扩充较有效率。

2. CPU工作于最小模式中部分引脚信号定义

(1) AD15 ~AD0(Address Data Bus):地址/数据总线,双向,三态。

这是一组采用分时的方法传送地址或数据的复用引脚。根据不同时钟周期的要求,决定当前是传送要访问的存储单元或I/O端口的低16位地址,还是传送16位数据,或是处于高阻状态。

(2) (RD)读选通信号,三态,输出,低电平有效

信号低电平有效时,表示CPU正在进行读存储器或读I/O端口的操作

(3) (WR)写选通信号,三态,输出,低电平有效

信号有效时,表明CPU正在执行写总线周期,同时由信号决定是对存储器还是对I/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指令系统

按功能分类,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,端口地址

② OUT AL,DX ;端口地址存放在DX寄存器中

或 OUT AL,DX

指令功能:输出指令用来把累加器的内容送往指定的外设存储器

当端口地址大于FFH时,必须使用第二种寻址方式,即先将端口号送入DX

寄存器,再执行操作。

(4) CMP 比较指令(Compare)

指令格式:CMP 目的,源

指令功能:两个操作数相减,不产生运算结果,仅影响标志,接着可用条件跳转指令决定程序去向

(5)JMP 无条件转移指令

指令格式:JMP 目的

指令功能:使程序无条件的转移到指定的地址去执行

相关文档
最新文档