微型计算机系统程序设计实验报告

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

目录

Part1.程序设计目求

Part2.程序设计要求

Part3.系统整体设计思路

Part4.程序框图设计

Part5.硬件电路设计

Part6.课程设计体会

Part7.程序设计的参考文献

Part8.程序设计代码附录(总共三题)

Part1:

程序设计的目的:

1.巩固和掌握对“微机原理”课程内容的认识和理解,提高应用水平.

2.掌握汇编语言程序的编制方法.

3.熟悉键盘控制和七段码管及74LS138芯片的使用.

Part2:

程序设计要求:

本课程设计内容包括两个方面

A.硬件设计:显示器用6个八段数码段显示.键盘采用4*4矩阵形式.由8255控制

B.软件编程(上机编程内容)

题目一※显示器工作于查询方式.键盘工作于中断方式

※16个按键定位的键值为:0~f,按任意键在显示器上现实对应的键值.lED显示器显示数值从右到左逐位显示

题目二※定义键盘按键:10个数字键(0~9);

6个功能键:+(加),-(减),*(乘),/(除),=(等于),CLEAR(清零)

※实现五位八进制数加法运算.可连续做加法.直接按"=号结束,显示结果

※实现五位八进制数乘法运算.可连续做乘法运算

Part3:

程序设计的整体设计思路:

A.物理构想思路:

1)微型计算机由微处理器,存储器,接口电路以及连接在这些部件上的总线组成.微处理器,存储器和所有I\O设备之间的信息交换都通过总线进行.总线包括地址总线,数据总线和控制总线,他们始于CPU或终于CPU,现代微机大部分都是这种以总线为中心的结构.

2)微型计算机及外围设备组成微型计算机系统的硬件,外围设备必须通过接口电路才能与系统总线相连,因此构建一个基于8255A的简单微型计算机系统,就是通过编译程序和物理连接让单片机拥有简单的计算器运算功能,因此系统总线上挂上一定规模的存储器和接口电路,然后在把合适的外围设备连接到接口电路上.

解决物理连线方面的构想思路.就轮到程序设置的构想思路:

B.软件构想思路:

1)首先.是建立一个蕴含所有段码的数据表(在程序中的体现是TABLE),作用是存储段码,为程序的相应调用提供对应的段码.避免在程序中实现调用显示功能的时候造成过多的赘余.因为这次实验套装的LED管是共阳极管.所以只有列出对应的16个(0~F)适用于共阳极管的段码,才能满足显示的要求

2)其次.是建立选通信号的输出存储.也就是.在数据部分建立一个表格,里面能够告诉CPU 的输出端要输出低电平的时候对应的代码指令:为什么是输出低电平?因为本次选用的LED 管是共阳极管.所以要在CPU的输出端与显示器的输入端对应借口接入CPU输出的低电平.从而告诉是哪一个显示器被选中.对应要输出怎么样的段码(信息).方能准确进行数据的显示3)在DATA设置完以后.就是功能键的自定义设计.这部分将会在物理连线框图里面提出(Part5)

4)进行主程序的编写思路部分,首先是对应4*4的键盘程序.在按下对应的键位以后.为了能在显示器中正确显示出对应的数值.必须进行扫描,首先是判断是否有按键.如果按得是数字键.那么就要在LED显示管上面对应的位数以及对应的数值进行显示.并且判断数字键之前

是否已经按了运算的功能键.从而判断是否要进行运算.如果确认在数字键之前按了运算的功能键.则应该进行运算功能,并且将运算结果存储在内存单元里面.等待下一步的指令.并且重复检测.等到有在物理键上面检测到有等号.则将最终的结果释放在LED管子上进行显示5)在运算结束后要实行放键功能,并且自动将所有的存储器(这里指的是RAM)上面的数据复位.等待实行重新的运算

Part4:

程序框图的设计:

硬件电路设置:

Part6.

课程设计体会:

一个星期的微机课程设计,在这个星期之中通过不断找资料解决问题,回顾了上学期所学的内容,给了我们很好一个机会将所学内容综合应用实践,温故而知新,对未来的学习也有很大帮助.

但在课程设计之中也还发现一些不足的地方,我发现我能通过设计找出不足,更好的学习.并且给将来的学习提供一个好的解决榜样.所以通过这次程序设计的学习.我觉得我并不仅仅只学习到如何的运用汇编程序按照要求解答问题.而更是学习到了要怎么去思考.怎么去解决问题的方法.并且希望能够将这个所得应用在日后的学习之中.我觉得这才是本次课程设计的核心内容

参考文献:

微型计算机系统原理--(教材)

微型计算机系统程序设计指导书--(实验题目)

微型计算机系统程序设计例题A--(实验例题)

Part8:

实验程序:

※设计代码※

part1:※显示器工作于查询方式,键盘工作于中断方式

※16个按键定义的键值:0-F,安任意键在显示器上现实对应的键值,LED显示器现实数值从右到左逐位现实

STACK SEGMENT STACK

DW 64 DUP(?)

STACK ENDS

DA TA SEGMENT

V A1 DB 0DFH,0EFH,0F7H,0FBH,0FDH,0FEH ;A端口的6根控制线(控制6个LED显示屏) VB2 DB 3FH,3FH,3FH,3FH,3FH,3FH

VB3 DB 00H,00H,00H,00H,00H,00H

VB4 DB 00H,00H,00H,00H,00H,00H

TABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

;0~F的显示段码

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

START:

MOV AX,DATA

MOV DS,AX

MOV DX,0606H

MOV AL,88H

OUT DX,AL :8255初始化

MOV BX,0000H :BX清零

STT: :键盘测试

MOV AL,00H

MOV DX,0600H

OUT DX,AL

MOV DX,0604H

IN AL,DX

AND AL,0F0H

CMP AL,0F0H

相关文档
最新文档