logo资料库

微机原理模拟计算器设计课程设计.doc

第1页 / 共28页
第2页 / 共28页
第3页 / 共28页
第4页 / 共28页
第5页 / 共28页
第6页 / 共28页
第7页 / 共28页
第8页 / 共28页
资料共28页,剩余部分请下载后查看
课程设计任务书 课 程 名 称 微机原理及应用 院 部 名 称 机电工程学院 业 电气工程及其自动化 吴映阳 李国利 专 班 级 指 导 教 师 金陵科技学院教务处制
摘 要 学了微型计算机原理与应用课程之后,为了巩固和检测所学知识,我选择基于 8088CPU 的模拟计算器设计。要完成设计首先需要构建简单的微型计算机应用系统,其 次是确定组成各部件的芯片,然后画原理图并且用仿真软件仿真。仿真正确后再连接 硬件电路,电路连接完成后进行调试。设计过程中我们用到了 8088CPU、可编程计时器 8253、可编程并行输入/输出芯片 8255A、74LS138、2*8 矩阵式键盘、六位七段 LED 数 码管。原理图设计完成之后用 PROTUES 仿真软件对原理图进行了仿真得到了预期的结 果。我们的模拟计算器能实现 5 位十进制数以内的及减法运算和 2 位十进制数以内的 乘除法运算。 关键词:模拟计算器,8088CPU,PROTUES,8255A 2
目 录 一、 概述 ……………………………………………………………………………4 二、 硬件电路 ………………………………………………………………………4 2.1、CPU 控制模块…………………………………………………………………4 2.2、键盘输入模块…………………………………………………………………6 2.3、可编程并行通信接口芯片 8255A ……………………………………………7 2.4、可编程计数器/定时器……………………………………………………8 2.5、总原理图……………………………………………………………………9 三、软件设计框图 ……………………………………………………………………10 四、源程序 ……………………………………………………………………………11 五、调试过程 …………………………………………………………………………26 六、课程设计体会 ……………………………………………………………………26 七、参考文献 …………………………………………………………………………27 3
模拟计算器设计 一、 概述 设计思路:首先利用程序不断扫描键盘是不是有输入,如果没有就一直扫描, 如果有就停止扫描,完成输入,利用汇编的程序核对输入键的数值,通过调用子程 序实现 5 位十进制数以内的及减法运算和 2 位十进制数以内的乘除法运算。运算完 成后将运算的结果储存并显示到 LED 显示器上。 二、 硬件电路设计 硬件电路 键盘输入及 LED 数码管通过 8255A 接口与系统总线连接,键盘的 16 个 按键组成 8*2 矩阵,其中 8 根矩阵线作为 8255A 的输出线与 PB7~PB0 连接,2 根 矩阵线作为 8255A 的输入线与 PC7、PC6 连接。键盘采用逐次扫描原理,16 个按键 中 0~9 座位数字健,+、-、*、/、=作为加、减、乘、除和等号功能键,C 为清零 键。 1、 CPU 控制模块 16 位微处理器,内含 29000 个晶体管,时钟频率为 4.77MHz,地址总线为 20 位,可使用 1MB 内存。8088 内部数据总线都是 16 位,外部数据总线是 8 位。 图 1-1. 8284 时钟发生器 图 1-2.8088CPU 4
5
2、 键盘输入模块 键盘是常用信息输入元件,其实键盘也是由一个个按钮组成,如果是独立按钮的话必 须要需要一个 I/O 口对它进行检测,而键盘往往这需要键盘按钮数一半的 I/O 口数对它进 行检测,也许对一个比较简单的系统 I/O 口数一般不是问题,但对于一个大型、复杂的系 统来说 I/O 资源就显得非常珍贵了,尽量减少 I/O 使用是非常利于降低成本,另外一方面 键盘比用独立按键要美观。我们设计时使用的是 8*2 行列式键盘,如图 2-1 所示。 图中有 8 行 2 列,8 根行线与 PA 口相连,2 根列线与 PC 口的 PC6、PC7 相连。PA、PB 口要么全部输入或输出。PC 口可以进行输入和输出。按键设置在行、类交点处(数字或字 符为其键号),行、列线分别连接到按键开关的两端。当列线通过上拉电阻接+5V 时,就被 钳位在高电平状态。键盘中有无按键按下是由行线送入全扫描字、列线读入行线状态来判 断。这就是:给航线所有 I/O 线均置成低电平,然后读入列线电平状态。如国有按键盘下, 总会有一根列线电平被拉至低电平,从而使列线输入不全为 1。 图 2-1 键盘电路 图 2-2 数码管电路 3、 可编程并行通信接口芯片 8255A (1)并行输入/输出端口 A,B,C 8255A 内部包括三个 8 位的输入输出端口,分别是端口 A、端口 B、端口 C,相应信号线 是 PA7~PA0、PB7~PB0、PC7~PC0。端口都是 8 位,都可以作为输入或输出。通常将端口 A 和端口 B 定义为输入/输出的数据端口,而端口 C 则既可以作数据端口,又可以作为端口 A 和端口 B 的状态和控制信息的传送端口。 6
(2)A 组和 B 组控制部件 端口 A 和端口 C 的高 4 位(PC7~PC4)构成 A 组;由 A 组控 制部件实现控制功能。 端口 B 和端口 C 的低 4 位(PC3~PC0)构 成 B 组;由 B 组控制部件实现控制功能。 A 组和 B 组利用各自的 控制单元来接收读写控制部件的命令和 CPU 通过数据总线(D0~ D7)送来的控制字,并根据他们来定义各个端口的操作方式。 (3)数据总线缓冲存储器 三态双向 8 位缓冲器,是 8255A 与 8086CPU 之间的数据接口。 与 I/O 操作有关的数据、控制字和状态信息都是通过该缓冲器进行传 送。 (4) 读/写控制部件 8255A 完成读/写控制功能的部件。能接收 CPU 的控制命令,并 根据控制命令向各个功能部件发出操作指令。 图 2-3.8255A 芯片图 CS 片选信号:由 CPU 输入,有效时表示该 8255A 被选中。 RD, WR 读、写控制信号:由 CPU 输入。RD 有效表示 CPU 读 8255A,WR 有效表示 CPU 写 8255A。RESET 复位信号:由 CPU 输入。RESET 信号有效,清除 8255A 中所有控制字寄存器内容,并将各个端口置成输入 方式。 7
图 2-4 .8255A 内部结构 定义工作方式控制字: 工作方式 0:8255A 中各端口的基本输入/输出方式。 方式控制 图 2-5 .8255A 工 作 4、 可编程计数器/定时器 8253 具有 3 个独立的计数通道,采用减 1 计数方式。在门控信号有效时,每输入 1 个计数脉冲,通道作 1 次计数操作。当计 数脉冲是已知周期的时钟信号时,计数就 成为定时。 (1)、8253 内部结构 8253 芯片有 24 条引脚,封装在双列直插 式陶瓷管壳内。 1.数据总线缓冲器 D7 D6 D5 D4 D3 D2 D1 D0 CLK0 OUT0 GET0 GND 1 2 3 4 5 6 7 8 9 10 11 12 8253 +5v WR RD CS A1 A0 CKL2 GATE2 OUT2 CLK1 GATE1 0UT1 24 23 22 21 20 19 18 17 16 15 14 13 数据总线缓冲器与系统总线连接,8 位双 向,与 CPU 交换信息的通道。这 是 8253 与 CPU 之间的数据接口,它由 8 位双向三态缓冲寄存器构成,是 CPU 与 8253 之间交换信息的必经之路。 8
分享到:
收藏