二○一一~二○一二学年第一 学期信息科学与工程学院自动化系课程设计计划书课程名称:微机原理及应用课程设计班级:自动化0901 姓名:王立学号:200904134032 指导教师:孟志华二○一一年 十二 月 六 日一、 课题名称简易计算器设计二、 课题目的利用 8088 和 8255 设计一个简易计算器,并将其结果显示在LED数码管上。熟悉系统设计的基本步骤,掌握8088 与 8255 的接口设计,掌握通过 8255 设计键盘扫描技术, 掌握通过 8255 显示七段共阴极数码管设计。加强对8088 数据总线,地址总线及接口寻址的理解,加深对8255 的端口控制的理解。三、 需求分析(1) 能够实现 99 以内的加减乘法运算,并显示在2 位 LED上。(2) 对于减法运算产生的负数,可在LED上显示“ - ”号,若负量超过 9,则显示“ E0”。四、 方案选择方案一:80888255LED键盘该方案将 LED显示电路直接接在 8088 的 DB上,而键盘则采用 8255 进行扫描。方案二:80888255LED键盘8255该方案则是将LED 显示电路和键盘扫描电路分别接在两个不同的 8255 上,扫描和显示时,选中不同的8255。方案三:80888255LED键盘该方案则只用一片8255 驱动 LED显示和键盘扫描电路。方案评估:方案一: LED 显示驱动电路实现起来较简单,但是很浪费系统总线资源,舍弃!方案二:释放了系统数据总线,但是方案缺乏经济性,因为采用了两片 8255,与建设资源节约型社会初衷冲突!舍弃!方案三:此种方案较为经济,方便,具有模块化的特点(因为将计算和显示电路全部集成在了8255 上,应用时,直接挂接8255即可实现要求!)综上所述:采用方案三!五、 程序流程图程序总流程图:开始利用 8255 扫描键盘有按键?逐行扫描哪个键被按下结果回送8088 并计算高低位数码分别送B、 C口LED显示结束有断电无判断输入流程图:开始是否是“ =”是否是运算符号否operand 是否有符号否NUM1*10+BL →NUM1无NUM2*10+BL →BUM2有BL→ operand是NUM1 与 NUM2 运算,送到 LED显示是跳转至 Allscan_Key六、 系统原理图键盘映射图:7 8 9 * 4 5 6 + 1 2 3 - 0 = 键盘编码图:77 7B 7D 7E B7 BB BD BE D7 DB DD DE E7 EB ED EE 系统原理图:123456ABCD654321DCBATitleN umberR evisio nSizeBD ate:14 -Dec-2 011Sheet of File:我的文 档 学校资 料 课程资 源 微机原 理 简易计 算器\ProMyD esig n. ddbD r...