微机原理课程设计报告.docx

上传人:b****3 文档编号:1788289 上传时间:2022-10-24 格式:DOCX 页数:41 大小:324.28KB
下载 相关 举报
微机原理课程设计报告.docx_第1页
第1页 / 共41页
微机原理课程设计报告.docx_第2页
第2页 / 共41页
微机原理课程设计报告.docx_第3页
第3页 / 共41页
微机原理课程设计报告.docx_第4页
第4页 / 共41页
微机原理课程设计报告.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

微机原理课程设计报告.docx

《微机原理课程设计报告.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计报告.docx(41页珍藏版)》请在冰豆网上搜索。

微机原理课程设计报告.docx

微机原理课程设计报告

微机应用系统设计与综合实验

课程设计报告

 

 

 

1.3.18086CPU简介················································4

1.3.274LS273功能简介············································4

1.3.7数码管显示·················································7

 

 

附录2proteus仿真图··············································37

 

第一章概要

1.1课程设计目的

《微机应用系统设计与综合实验(实践)》课程设计是自动化、智能专业本科生的必修课。

通过本课程设计,让学生对微机系统有一个较全面的理解,对典型数字接口电路的应用技术有一个较深入地掌握,综合了对应用系统的硬件原理和软件编程的分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。

要求同学独立完成课题,写出课程设计说明书,画出电路原理图,说明工作原理,画出电路印制板图,编写设计程序及程序流程图。

希望同学们认真阅读课程设计任务书,认真查阅资料,完成好上机调试,圆满完成本次课程设计。

1.2课程设计内容及要求

完成基于80x86CPU为核心控制器的具备基本I/O接口功能的硬件电路系统原理图设计、PCB电路设计和软件编程设计。

基本I/O接口电路应包括:

锁存器、缓冲器、地址译码器、8255接口、8253接口、A/D(D/A)转换电路、串行接口电路等;软件功能要求完成基本I/O接口电路控制和串口通信功能调试。

设计题:

信号发生器功能程序设计

设计要求:

(1)、硬件电路基于80x86微机的接口电路;

(2)、分别用C语言或汇编语言或VC++编程完成硬件接口功能设计;

(3)、程序功能要求:

小键盘给定、数码管(屏幕)显示,并产生对应信号波形(D/A)输出(信号波形包括正弦波、三角波、方波、锯齿波)、输出信号波形幅度、频率可调。

(注意:

按键数量应尽量少)。

(4)、具备本地及远程(串行方式)监测功能。

实现技术指标:

 

(1)、完全用小键盘控制各波形间的切换和频率和幅值的调节以及退出。

 

(2)、实现正弦波、三角波、方波和锯齿波信号的产生。

 

(3)、数码管同步显示当前工作波形的频率和幅值。

 

(4)、实现频率的1到5倍可调。

 

(5)、实现幅值的1到5倍可调。

1.3所需芯片及硬件简介

1.3.1 8086功能简介 

8086 CPU是由总线接口部件BIU和执行部件EU这两大部分构成。

总线接口部件BIU是8086 CPU在存储器和I/O设备之间的接口部件,负责对全部引脚的操作,即8086对存储器和I/O设备的所有操作都是由BIU完成的。

所有对外部总线的操作都必须有正确的地址和适当的控制信号,BIU中的各部件主要是围绕这个目标设计的。

它提供了16位双向数据总线、20位地址总线和若干条控制总线。

   

其具体任务是:

负责从内存单元中预取指令,并将它们送到指令队列缓冲器暂存。

CPU执行指令时,总线接口单元要配合执行单元,从指定的内存单元或I/O端口中取出数据传送给执行单元,或者把执行单元的处理结果传送到指定的内存

单元或I/O端口中。

 

执行单元EU中包含1个16位的运算器ALU、8个16位的寄存器、1个16位标志寄存器FR、1个运算暂存器和执行单元的控制电路。

这个单元进行所有指令的解释和执行,同时管理上述有关的寄存器。

EU对指令的执行是从取指令操作码开始的,它从总线接口单元的指令队列缓冲器中每次取一个字节。

如果指令队列缓冲器中是空的,那么EU就要等待BIU通过外部总线从存储器中取得指令并送到EU,通过译码电路分析,发出相应控制命令,控制ALU数据总线中数据的流向。

1.3.274LS273功能简介 

地址锁存器就是一个暂存器,它根据控制信号的状态,将总线上地址代码暂存起来。

8086/8088数据和地址总线采用分时复用操作方法,即用同一总线既传输数据又传输地址。

当微处理器与存储器交换信号时,首先由CPU发出存储器地址,同时发出允许锁存信号ALE给锁存器,当锁存器接到该信号后将地址/数据总线上的地址锁存在总线上,随后才能传输数据。

 

地址锁存器74LS273是带清除端的八D触发器,只有清除端为高电平时才具有锁存功能,锁存控制端为11脚CLK,在上升沿锁存。

8086的ALE端输出的锁存控制信号必须经反相器后才能连到74LS273的CLK端,以满足CLK在上升沿锁存的要求。

74LS273的引脚1D~8D为数据输入端,1Q~8Q为数据输出端,WR:

主清除端,低电平触发,即当为低电平时,芯片被清除,输出全为0。

CP(CLK):

触发端,上升沿触发,即当CP从低到高电平时,D0~D7的数据通过芯片,为0时将数据锁存,D0~D7的数据不变。

由于8086有20位物理地址,所以需要用3片74LS273级联。

1.3.38255A特性简介

(1)具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。

它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。

8255A的通用性强,使用灵活,通过它CPU可直接与外设相连。

图1.1唐都实验箱D/A0832接线图

(2)8255A在使用前要写入一个方式控制字,选择A、B、C三个端口各自的工作方式,共有三种。

方式0:

基本的输入输出方式,即无须联络就可以直接进行的I/O方式。

其中A、B、C口的高四位或低四位可分别设置成输入或输出;方式1:

选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0;方式2:

双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。

本次设计只用到了三个端口的方式0。

1.3.4D/A0832功能简介

DAC0832是采用CMOS工艺制成的单片电流输出型8位数/模转换器。

DAC0832的引脚功能说明如下:

D0-D7:

数字信号输入端

CS:

片选信号,低电平有效

WR:

写信号1,低电平有效

OUT:

DAC电流输出端

1.3.5A/D0809功能简介

ADC0809是采样频率为8位的、以逐次逼近原理进行模—数转换的器件。

内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

当地址ABC=000时,IN0通道被选通。

图1.2唐都实验箱A/D0809接线图

1.3.6唐都小键盘简介

唐都实验箱中提供了4行×4列16个按键,列选择信号X1-X4,行扫描信号Y1-Y4。

 

图1.3唐都实验箱小键盘接线图

1.3.7 数码管显示 

数码管同步显示当前波形的幅值和频率。

硬件上由8086将数据输出给8255,8255再将输出送给数码管的A~Dp,显示相应字符。

软件上定义一个缓冲区存放波形的幅值和频率,显示数码管时,利用缓冲区的数值查找数码管键值表再输出对应数值。

循环输出波形时也循环输出缓冲区内容对应的值,就可以同步显示波形的幅值和频率。

利用小键盘扫描得到的键值进行判断,对缓冲区内的幅值频率进行相应的改变,使数码管能显示不同的幅值和频率。

 

第二章总体设计方案

2.1设计思想论述

(1).波形产生:

通过汇编语言编写各个波形子程序,其中方波和三角波参考了唐都的参考程序。

锯齿波由三角波修改而来,正弦波事先用MATLAB仿真存入各点数据,产生波形时依次输出各个数据即可。

波形子程序中主要是各个波形一个周期的代码,循环执行,由此产生连续波形并通过D/A0832将数字量转换成模拟量输出,即可得各种波形。

具体方案见第三章3.1节。

(2).波形切换:

用小键盘输入进行波形的选择,按键0~3分别对应方波、三角波、锯齿波和正弦波。

每个波形周期输出后,调用键盘查询子程序,判断有无按键按下,没有则继续输出下一周期,否则转到相应的波行子程序上。

可随时进行波形间的切换。

具体方案见第三章3.2节。

(3).无极调频:

改变波形子程序中的各个数据输出延时时间,就可改变整个波形的频率,延时越短频率越高。

而延时时间长短可由外部输入决定,通过A/D0809将电位计(0~5V)的模拟量转化成数字量(00~FF)作为延时时间长短。

调节电位器即可调节延时,进而调节频率。

ADC0809芯片分辨率为8位,即可将延时分为256个等级,实现无极调频。

具体方案见第三章3.3、3.4节。

(4).无极调幅:

改变波形子程序中DA输出值的大小即可改变幅值,可以在原数据基础上乘以一个增益。

而增益可由外部输入,原理与调频相似,通过A/D0809输入一个数字量(00~FF)。

按键4用于调频/调幅的切换。

当判断当前为调幅状态时就将这个数字量存入幅值增益变量中,如果判断是调频状态则存入频率延时变量中。

从而实现只用一个电位器分别调节频率和幅度的功能。

具体方案见第三章3.3、3.4节。

(5).开始结束:

通过扫描小键盘,按下5键则退出。

2.2程序流程图

2.3电路原理图

图2.2硬件连接电路图

第三章典型模块分析

3.1波形产生模块

四个波形子程序结构类似,当子程序被调用后,进行以下步骤:

(1)通过8255的C7位输出一个低电平来启动AD0809,并从8255的B口读入AD输入的数字量(00H~FFH)。

(2)判断幅频标志位FLAG_FUPIN,为0则把AD输入的数字量存入频率值空间FRE,否则存入幅值空间AMP。

(3)输出波形的一个周期。

(4)调用子程序CCSCAN,判断小键盘有无按键按下,无则继续步骤

(1),有则返回主程序。

流程图如图3.1所示。

图3.1波形子程序流程图

3.1.1三角波

三角波从最小值开始逐渐上升,到达最大值之后再逐渐减小到最小。

因此先将最小值(00H)放到BL,输出并延时,对BL加一,再输出并延时,达到最大值后就对BL依次减一,输出并延时,直到BL=00H,则为一个周期波形。

因此三角波有两个过程。

(1)一个周期波形的代码如下:

SANJIAO:

CALLAM;进行幅度调制

MOVAL,00H;对AL中的数据进行初始化

UP:

MOVDX,MY8255_A;上升

;信号发生器系统开始时输出为0

MOVDI,AX

OUTDX,AL

CALLDELAY;进行频率调制

MOVAX,DI

PUSHAX

MOVDX,MY8255_B;读入8255B口信息,看是否有按键按下并进行波形转换

INAL,DX

NOTAL;由于B口的信息按下为低电平,故对AL中的数取反

CMPAL,02H;按下第二行键转入正弦波

JEZHENGXIANBO

CMPAL,04H;按下第三行键转入锯齿波

JEJUCHIBO

CMPAL,08H;按下第四行键转入方波

JEFB

POPAX

INCAL

CMPAL,BL;和最大值比较

JBUP;小于最大值则执行循环

DON:

MOVDI,AX;下降

MOVDX,MY8255_A

OUTDX,AL

CALLDELAY

MOVAX,DI

PUSHAX

MOVDX,MY8255_B;判断键值按下的情况

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

当前位置:首页 > 农林牧渔 > 林学

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

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