简易计算机系统设计-参考模板
简易计算器的设计

辽宁工业大学单片机原理及接口技术课程设计(论文)题目:简易计算器的设计院(系):电气工程学院专业班级: 自动化132班学号: 130302044学生姓名:陆强指导教师:(签字)起止时间: 2016.6。
6-2016。
6。
17课程设计(论文)任务及评语院(系):电气工程学院 教研室:自动化 注:成绩:平时20% 论文质量60% 答辩20% 以百分制计算学 号 130302044 学生姓名 陆强 专业班级 自动化132班课程设计(论文)题目简易计算器的设计课程设计(论文)任务课题完成的功能、设计任务及要求、技术参数实现功能简易计算器采用4*4键盘输入要计算的数字及要进行的计算操作,并显示上次输入的数据及结果,能够进行加、减、乘、除的运算,并存储上次计算的值。
硬件设计包括CPU 选型、最小系统电路、按键电路、显示电路等。
设计任务及要求1、确定设计方案,画出方案框图.2、进行硬件电路的设计,包括元器件选择,绘制原理图。
3、进行实物的制作4、绘出程序流程图,并编写完整程序。
5、要求认真独立完成所规定的全部内容;所设计的内容要求正确、合理。
6、按学校规定的格式,撰写、打印设计说明书一份;设计说明书应在4000字以上。
技术参数密码长度可修改,密码可修改,密码输入正确,在显示屏上出现Right ,并控制开锁;密码错误出现Error ,连续输入错误三次,隔30S 才能再次输入.进度计划1、布置任务,查阅资料,确定系统设计方案(2天)2、系统硬件设计及实物制作(3天)3、系统软件设计及编写功能程序及调试(3天)4、撰写、打印设计说明书(1天)5、验收及答辩.(1天)指导教师评语及成绩平时: 论文质量: 答辩:总成绩: 指导教师签字: 年 月 日摘要计算器是日常生活中比较的常见的电子产品之一。
在各种智能化产品中也常常会用到计算器,而且在现代化系统中人们对计算器技术要求更加的严格和精确,因此计算器已成为生产中必不可少的设备。
2019编辑汇编语言简易计算机设计.doc

摘要汇编语言是为克服机器语言的缺点而引入的,是一种将机器语言指令符号化的编程语言,也称符号语言。
汇编语言,作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇编语言原文件汇编成机器可执行的代码。
高级的汇编器为我们写汇编程序提供了很多类似于高级语言的特征,比如结构化、抽象等。
在这样的环境中编写的汇编程序,有很大一部分是面向汇编器的伪指令,已经类同于高级语言。
虽然现在的汇编环境已经如此高级,即使全部用汇编语言来编写WINDOWS的应用程序也是可行的,但这不是汇编语言的长处。
汇编语言的长处还在于编写高效且需要对机器硬件精确控制的程序,而本次设计的简单计算器程序设计可以支持简单的四则运算。
关键词:汇编语言四则运算简易计算器目录1.系统需求分析 (1)1.1设计要求与目的 (1)1.2系统目标 (1)1.3功能分析 (2)2.系统概要设计 (3)2.1总体分析 (3)2.2系统框图 (3)2.2.1功能结构图 (3)2.2.2系统流程图 (3)3.程序说明 (5)3.1程序说明 (5)3.2主模块 (5)3.2.1主模块流程图 (5)3.2.2主模块程序代码 (6)3.3子模块 (9)3.3.1子模块流程图 (9)3.3.2子模块程序代码 (9)4.运行结果 (13)4.1运行软件emu8086简介 (13)4.2运行结果 (14)4.3算法分析 (15)4.4调试过程及分析 (16)5.心得体会 (16)6.参考文献 (17)1.系统需求分析1.1设计要求与目的(1)编写一个程序实现十进制加减乘除运算;(2)在命令提示后输入算式,运算符号不超过四个;(3)回车后进行计算并以十进制显示结果;(4)程序采用汇编语言在PC机上完成;(5)写出系统需求分析、原理图和程序实现流程图;(6)对结果进行分析;(7)要求阅读相关参考文献不少于5篇;(8)根据课程设计有关规范,按时、独立完成课程设计说明书。
通过本次的课程设计,加深对汇编语言的了解,应用《汇编语言程序设计》等所学相关知识及查阅资料,完成简单计算器程序设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能里的目的。
汇编语言简易计算机设计

摘要汇编语言是为克服机器语言的缺点而引入的,是一种将机器语言指令符号化的编程语言,也称符号语言。
汇编语言,作为一门语言,对应于高级语言的编译器,需要一个“汇编器”来把汇编语言原文件汇编成机器可执行的代码。
高级的汇编器为我们写汇编程序提供了很多类似于高级语言的特征,比如结构化、抽象等。
在这样的环境中编写的汇编程序,有很大一部分是面向汇编器的伪指令,已经类同于高级语言。
虽然现在的汇编环境已经如此高级,即使全部用汇编语言来编写WINDOWS的应用程序也是可行的,但这不是汇编语言的长处。
汇编语言的长处还在于编写高效且需要对机器硬件精确控制的程序,而本次设计的简单计算器程序设计可以支持简单的四则运算。
关键词:汇编语言四则运算简易计算器目录1.系统需求分析 (1)1.1设计要求与目的 (1)1.2系统目标 (1)1.3功能分析 (2)2.系统概要设计 (3)2.1总体分析 (3)2.2系统框图 (3)2.2.1功能结构图 (3)2.2.2系统流程图 (3)3.程序说明 (5)3.1程序说明 (5)3.2主模块 (5)3.2.1主模块流程图 (5)3.2.2主模块程序代码 (6)3.3子模块 (9)3.3.1子模块流程图 (9)3.3.2子模块程序代码 (9)4.运行结果 (13)4.1运行软件emu8086简介 (13)4.2运行结果 (14)4.3算法分析 (16)4.4调试过程及分析 (16)5.心得体会 (17)6.参考文献 (18)1.系统需求分析1.1设计要求与目的(1)编写一个程序实现十进制加减乘除运算;(2)在命令提示后输入算式,运算符号不超过四个;(3)回车后进行计算并以十进制显示结果;(4)程序采用汇编语言在PC机上完成;(5)写出系统需求分析、原理图和程序实现流程图;(6)对结果进行分析;(7)要求阅读相关参考文献不少于5篇;(8)根据课程设计有关规范,按时、独立完成课程设计说明书。
通过本次的课程设计,加深对汇编语言的了解,应用《汇编语言程序设计》等所学相关知识及查阅资料,完成简单计算器程序设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能里的目的。
计算机组成原理简单计算机的设计

烟台大学计算机组成原理课程设计报告书设计题目: 简单计算机专业: 计算机科学与技术班级:设计者:学号:指导老师:年月日简单的计算机系统设计一、设计要求:1.提供完善的逻辑图。
2.提供全部的微程序。
3.提供系统的调试方法。
4.提供系统的功能调试方法。
5.R0,R1为通用寄存器,8位。
6.IR为指令寄存器,8位。
7.PC程序计数器,8位。
8.MAR为地址寄存器,8位。
二、设计的基本过程1.在设计的初级阶段,学生根据所学的内容,按照课程设计的要求,在设计报告书中完成方案设计并画出逻辑线路图。
2.在输入原理图阶段即编程设计阶段,利用编程软件在其上画出各部件的原理图,在设计过程中要充分体现其灵活性。
当原理图输入完毕后,编程软件系统可对原理图文件进行编译、优化、适配、将错误消灭在设计阶段。
最后完成对 isp EXPERT 的编程文件。
若有错误,则继续进行修改,直到没有错误,且编译通过后进行下一个步骤。
3.当一个设计完成且产生编程文件后,就可以进行下载了,模式开关在通调的模式下,对其下载到器件中去。
结合计算机组成原理的内容和设计平台系统,计算机的设计与调试步骤如下:拟订指令系统指令系统是设计计算机的依据,拟订指令系统涉及基本字长,指令格式,指令种类,寻址方式等内容。
基本字长:课程设计平台中配置的存储器容量为256*8,显然基本字长只能定为8位。
指令格式:指令格式可有单字长指令和双字长指令两种指令格式为:操作码OP共4位,最多可定义16条指令。
数据传送的单位为8位(一个字节)数据的传送范围R R R RAM RAM R寻址方式:由于指令较短,操作数字段仅两位,源操作数字段寻址方式目的操作数寻址方式00 R0 00 R101 (R0) 01 (R1)10 I 10 I11 D 11 D(D)指令的第二字节为操作数的地址源操作数使用R0寻址目的操作数使用R1寻址这样设计的目的是为了简化运算器选择门的设计和缩短指令长度。
简易计算机单片机课程设计模板

广州xxx学院单片机原理与应用课程设计说明书题目简易计算器姓名学号1307020、1307020 专业电气工程及其自动化班级2013级( 2 )班系部电气与汽车工程系指导教师2015年12 月 28日目录1 设计任务及要求 (3)1.1 设计任务 (1)1.2 设计要求 (2)2设计方案 (4)2.1 输入模块设计 (4)2.2 运算模块设计 (5)2.3 显示模块设计 (5)3单元电路设计 (6)3.1 输入单元 (4)3.2 运算单元 (6)3.3 显示模块 (7)4整体电路设计 (8)5 软件编程设计 (9)6 心得体会 (10)7致谢 (11)1 设计任务与要求1.1 设计任务:自制一个单片机最小系统,包括复位电路,采用外部小键盘输入数据,能够实现加法、乘法及一个科学计算,计算结果显示在四位一体的数码管上。
要求用Protel 画出系统的电路原理图(要求以最少组件,实现系统设计所要求的功能),印刷电路板(要求布局合理,线路清晰),绘出程序流程图,并给出程序清单(要求思路清晰,尽量简洁,主程序和子程序分开,使程序有较强的可读性)1.2 设计要求:根据功能和指标要求,本系统选用MCS 51 单片机为主控机。
通过扩展必要的外围接口电路,实现对计算器的设计。
具体设计考虑如下:①由于要设计的是简单的计算器,可以进行四则运算,对数字的大小范围要求不高,故我们采用可以进行四位数字的运算,选用8 个LED 数码管显示数据和结果。
②另外键盘包括数字键(0~9)、符号键(+、—、* 、÷)、清除键和等号键,故只需要16 个按键即可。
系统模块图:单片机输入模块运算模块显示模块2设计方案2.1输入模块设计:键盘扫描。
键盘扫描计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O 口资源,因此在很多情况下都不采用这种方式。
为此,我们引入了矩阵键盘的应用,采用四条I/O 线作为行线,四条I/O 线作为列线组成键盘。
简单计算机的设计

郑州航空工业管理学院微机原理课程设计说明书2007级电气工程及其自动化专业 1206972 班级题目简单计算机的设计指导教师职称学号1206972姓名二О一0 年六月十八日简易计算器的设计摘要: 1、课题:设计一个可以进行2位数的四则运算的计算器。
2、要求:(1)键输入数和运算符号;(2)LED显示运算过程和结果(十进制数);(3)表示出当前的运算类型;(4)具有清零和复位功能;(5)具有连续运算功能。
关键词:8279A芯片、74LS138译码器、74LS240芯片、小键盘、LED发光二极管。
一、简单计算器工作的基本原理:首先利用程序不断扫描键盘是不是有输入,如果没有就一直扫描,如果有就停止扫描,完成输入,利用汇编的程序核对输入键的数值,通过调用子程序进行2位数四则运算。
运算完成后将运算的结果储存并显示到LED显示器上。
通过键盘上的C键实现清零和复位功能。
在一次运算之后可以直接进行下一次运算无需复位。
二、设计方案1、硬件部分本次设计所选用的芯片为:8279A芯片、LED发光二极管、小键盘。
由于8279A 的输出电流与LED不匹配的问题,需要驱动电流,本实验中选择74LS240。
(1)、8279A芯片在本设计中用8279A芯片控制键盘输入和LED显示。
8279A芯片是一种通用的可编程序的键盘/显示接口器件,可与任何8位机接口,能完成键盘输入和LED显示控制两种功能。
采用8279作为键盘/显示器接口,则可以实现对键盘、显示器自动扫描,8279主要是管理键盘输入和显示器输出的。
8279可编程键盘显示器接口芯片具有动态显示驱动电路简单、不占用CPU 的时间、可自动进行键盘扫描、与计算机接口方便、编程容易、系统灵活等特点,是实时性较高的测控系统的首选器件之一。
(2)、74LS138译码器在本设计中74LS138译码器用来扫描计数器采用编码工作方式。
74LS138译码器的功能:74LS138是3/8译码器,即对3个输入信号进行译码,得到8个输出状态。
计算机操作系统6模板
… bm1
… bm2
… …
… bmj
… …
… bmn
北京林业大学信息学院
分配矩阵Allocation
资源 进程 P1 P2 … Pi …
R1 a11
a21 … ai1 …
R2 a12
a22 … ai2 …
… …
… … … …
Rj a1j
a2j … aij …
… …
… … … …
Rn a1n
a2n … ain …
5、进程向量L:记录当前已不占有资源的诸进程。
北京林业大学信息学院
请求矩阵Request
资源
进程 P1 P2 … Pi R1 b11 b12 … b1j R2 b21 b22 … b2j … … … … … Rj b1j b2j … bij … … … … … Rm bm1 bm2 … bmj
… Pm
北京林业大学信息学院
关于死锁的一些结论
参与死锁的进程最少是两个(或是两个以上进程) 参与死锁的进程至少有两个已经占有资源 参与死锁的所有进程都在等待资源
如果死锁发生,会浪费大量系统资源,甚至 导致系统崩溃。
北京林业大学信息学院
2、产生死锁的原因和必要条件
原因:系统资源不足; 进程推进顺序不合适;
检测算法
北京林业大学信息学院
算法描述
Work:=Available; L:={ Li | Allocationi=0 Requesti=0 }; For all LiL do begin for all Requesti Work begin Work = Work +Allocationi Li L end end deadlock:=(L={P1,P2,…,Pn}
(完整word版)简易计算器设计-msp430-C语言
简易计算器目录摘要…………………………………………………………………………………P3 关键字………………………………………………………………………………P3一、设计要求………………………………………………………………………P3二、方案论证与选择………………………………………………………………P32.1 单片机选择………………………………………………………………P32.2 LCD显示屏选择…………………………………………………………P32.3 键盘选择…………………………………………………………………P42.4 CPU工作方式选择………………………………………………………P4三、系统实现………………………………………………………………………P43.1 硬件设计…………………………………………………………………P43.1.1系统框图………………………………… …………………………P43.1.2 盘的电平设计以及与单片机的连接键……………………………P53.2.3单片机与显示器的连接…………………………………………… P53.2软件设计……………………………………………………………………P6四、作品性能测试与分析…………………………………………………………P104.1试性能概览………………………………………………………………P104.2误差分析…………………………………………………………………P12五、参考文献………………………………………………………………………P12六、附录……………………………………………………………………………P136.1计算器功能介绍…………………………………………………………P136.2仿真电路图………………………………………………………………P136.3元件清单…………………………………………………………………P136.4原程序代码………………………………………………………………P14摘要:本设计以低功耗单片机MSP430V136T、1602字符型液晶屏和4*4简易键盘为主要器件,来实现加、减、乘、除、开根号、平方、求倒数等运算。
计算机组成原理课程设计---简单计算机系统设计与实现.doc
南昌大学信息科学与技术学院《计算机组成原理》课程设计(实训)报告书题目:简单计算机系统设计与实现专业:计算机科学与技术班级:1012*名:**学号:12指导老师:**设计时间:2012年4月9日~ 2012年4月13日目录《计算机组成原理》课程设计(实训)报告书 (1)1.实验目的 (3)2.实验内容 (3)3.实验任务 (3)4.设计过程 (4)4.1 需求分析 (6)4.2功能分析 (6)4.3所用器件分析 (7)4.4测试步骤 (11)5.实验结果 (12)6. 课程设计问题及解决方案 (13)7.心得体会 (14)8.参考文献 (15)1实验目的1.加深对冯·诺依曼体系结构计算机组成及其各部分功能的理解,进一步建立整机的概念。
2.加深对计算机数据通路的理解,熟悉计算机指令系统、时序控制信号的生成,完成一个简单计算机系统的设计。
3.锻炼初步的计算机系统分析和设计能力。
4.锻炼分析、定位和排除故障的能力。
2实验内容基于冯·诺依曼体系结构,架构一个简单计算机系统。
在设计过程中,利用PROTEUS软件的仿真功能进行仿真分析及调试定位,最终生成一个能完成简单指令及运算的计算机系统。
对主要的数据流和控制流通过LED适时显示信息。
3实验任务1.根据课程设计指导书的要求,制定出设计方案;2.画出自己所设计计算机系统的原理框图和器件连接图,分析器件连接图中各器件不同引脚的功能,哪些可以固定连接,哪些需要通过外接信号来控制,以及这些控制信号的有效形式;3.利用PROTEUS模拟仿真,布线、调试、验收;4.课程设计报告和总结。
4设计过程4.1 需求分析在本次课程设计中,我们需要根据计算机的各个部件先画出简单的框图和总体设计的框图,然后在框图的基础上选择适当的芯片实现各自的功能,在这次计算机系统设计中,主要是先实现运算器部分,保证运算的正确性,然后设计存储部分。
4.1.1.简单框图如下::4.1.2.总体设计框图如下:4.2 功能分析在这个计算机系统中,运用了计算机所能识别的二进制形式进行简单加减运算,实现将二进制程序存入内存的芯片中,然后开始执行检测,通过开关输入数据,并给其地址,存入存储器中,再输入第二个数时,同样存入存储器,经调试LED显示运算结果也保存入存储器中。
系统设计方案模板
2022 年系统设计方案模板2022 年系统设计方案模板阐明编写具体设计方案旳重要目旳。
具体设计旳重要任务是对概要设计方案做完善和细化。
阐明书编制旳目旳是阐明一种软件系统各个层次中旳每一个程序(每一个模块或者子程序)和数据库系统旳设计考虑,为程序员编码提供根据。
如果一种软件系统比较简朴,层次很少,本文献可以不单独编写,和概要设计阐明书中不反复部份合并编写。
方案重点是模块旳执行流程和数据库系统具体设计旳描述。
应涉及如下几种方面旳内容:A. 待开辟软件系统名称B. 该系统基本概念,如该系统旳类型、附属地位等C. 开辟项目组名称D. 项目代号(项目规划所采用旳代号);E. 阐明遵从旳IT 原则和原则,符合公司旳IT ABBs列出具体设计报告引用旳文献或者资料,资料旳作者、标题、出版单位和出版日期等信息,必要时阐明如何得到这些资料。
列出本文档中用到旳也许会引起混淆旳专门术语、定义和缩写词旳原文。
阐明具体设计旳任务及具体设计所要达到旳目旳。
对所开辟软件旳概要描述, 涉及重要旳业务需求、输入、输出、重要功能、性能等,特殊需要描述系统性能需求。
对本系统所依赖于运营旳硬件,涉及操作系统、数据库系统、中间件、接口软件、也许旳性能监控与分析等软件环境旳描述,及配备规定。
具体描述系统所受旳内部和外部条件旳约束和限制阐明。
涉及业务和技术方面旳条件与限制以及进度、管理等方面旳限制。
简要阐明具体设计所采用旳措施和使用旳工具。
如HIPO 图措施、IDEF ( I2DEF ) 措施、E-R 图,数据流程图、业务流程图、选用旳CASE 工具等,尽量采用原则规范和辅助工具。
重要对系统级旳需求进行分析。
一方面应对需求分析提出旳公司需求进一步确认,并对由于状况变化而带来旳需求变化进行较为具体旳分析。
涉及:具体功能需求分析具体性能需求分析具体资源需求分析具体系统运营环境及限制条件分析涉及:系统接口需求分析既有硬、软件资源接口需求分析引进硬、软件资源接口需求分析着重解决系统总体构造确认及界面划分问题。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
传播优秀Word版文档 ,希望对您有帮助,可双击去除! 1 / 20 Xxxxxxxxxxx 课程设计说明书(论文)
题 目 简易计算器系统设计 课 程 名 称 微型计算机原理与接口技术 二 级 学 院 xxxxxxxxxx 专 业 xxxxxxxxxx 班 级 xxxxxxxxxxxxxxxxxxxxxx 学 生 姓 名 xxxxxxxxxxxx 设 计 地 点 xxxxxxx 指 导 教 师 xxxxxxxxxxx
设计起止时间: 2016年6 月13日至2016 年6 月24 日
成绩 传播优秀Word版文档 ,希望对您有帮助,可双击去除! 目录
一、设计任务与要求 ....................................................................................................................... 3 二、设计思路 ................................................................................................................................... 3 三、硬件电路设计 ......................................................................................................................... 10 四、软件编程设计 ......................................................................................................................... 11 五、仿真与调试 ............................................................................................................................. 15 六、结论与心得 ............................................................................................................................. 18 七、参考文献 ................................................................................................................................. 18
简易计算器系统设计 传播优秀Word版文档 ,希望对您有帮助,可双击去除! 一、设计任务与要求 1、可以进行十进制数四则运算。用按键输入数据;具有清零和复位功能;具有连续运算功能。 2、在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目的要求相符合,保证设计的正确。学会掌握和使用各种已有的技术资料,不要盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。要在老师的指导下制定好自己各环节的详细设计进程计划,按给定的时间计划保质保量的完成个阶段的设计任务。设计中可边设计,边修改,软件设计与硬件设计可交替进行,问题答疑与调试和方案修改相结合,提高设计的效率,保证按时完成设计工作并交出合格的设计报告。 二、设计思路 根据本次设计的设计目的及设计要求,可有下列两种方案: 1. 方案1 模拟简易计算器主要由键盘输入和LED数码管显示两部分组成,其界面如图1所示:
要设计一个模拟计算器,要用到可编程并行I/O接口芯片8255A,主要要解决8255A与键盘接口和8255A与LED数码管接口的问题。 1.1 8255A与键盘接口 键盘是计算器的输入设备,通过键盘把数据和操作命令输入到计算器,实现人机对话。目前使用的键盘分为编码键盘和非编码键盘。 编码键盘带有必要的硬件电路,能自动提供按键的ASCⅡ编码,并能将数据传播优秀Word版文档 ,希望对您有帮助,可双击去除! 保持到新键按下为止,还有消除抖动和防止多键、串键等保护装置。编码键盘软件简短,它根据编码就能识别是什么键按下,但硬件电路复杂,价格较贵。 非编码键盘仅仅是按行、列排列起来的矩阵开关,其他的工作如识别键、提供代码、去抖动等由软件来解决。传播优秀Word版文档 ,希望对您有帮助,可双击去除! 为了识别键盘上的闭合键,通常可以采用两种方式:行扫描法和行反转法。(1)行扫描法 行扫描法识别按键的原理如下:首先判别是否有键按下。将所有行线置成0电平,然后通过列线输入全部列值,如果读入的列值全是1,则说明没有任何一个键按下;反之,如果读入的列值不全是1,着说明有键按下。也就是说,在键盘识别的开始先进行全扫描,若有键按下,则必须判别是哪个按键被操作。 第二步确定哪个键被按下。一旦发现有键按下,就转入采用逐行扫描的办法来确定是那一个键被按下。先扫描第一行,即使它输出0电平,其余的行线为高电平1,然后读入列值。如果读入的列值中有一位为低电平0,则说明在此行的一个行、列交叉处有键被按下。如果读入的列值全是1,说明这一行所有按键都未被按下。接着扫描第二行。依次类推,逐行扫描,直到扫完全部的行线为止。若在扫描的过程中,发现非全1的列值,就能找出被按下的键。 (2)行反转法 行反转法识别闭和键时,要将行线接一个并行口,先让它工作在输出方式下;将列线也接一个并行口,先让它工作在输入方式下。程序使CPU通过输出端口,向各行线上全部送低电平0,然后读入列线的值(列值),如果此时有某一键被按下,则必定会使某一列线为0,输入的列值其中某一位为0。然后,程序在对两个并行端口进行方式设置,使行线工作在输入方式,列线工作在输出方式。利用输出指令,使列线全部输出为0 值。再从行线输入行线值(行值)。行值中闭合键所对应的位必然为底电平0。利用这种反转法,可得到一对行值和列值,每一个按键唯一对应一组行值和列值,行值和列值组合起来可以形成一个按键的识别码。 (3)在扫描键盘的过程中,应注意解决以下问题: ①键抖动:当用手按下一个键时,往往会出现按键在闭合和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也会出现类似的情况,这就是抖动。这种抖动经常发生在键被按下或抬起的瞬间,一般持续几毫秒到几十毫秒,随键的结构不同而不同。在扫描键盘过程中,必须想办法消除键抖动,否则会引起错误。消除键抖动可以用硬件电路来实现,它利用R传播优秀Word版文档 ,希望对您有帮助,可双击去除! —S触发器来锁定按键状态,以消除按键的影响。简单的方法是利用软件延时来消除键的抖动。也就是说,一旦发现有键按下,就延时20ms以后再去检测按键的状态,这样就避开了键发生抖动的那一段时间,再读按键状态,数据可靠。 ②重键:重键是指一个以上的按键同时按下而产生的不确定或错误问题。出现重键时,读取的键值必然出现有一个以上的0。于是就产生了到底是否给予识别哪一键的问题。解决重键可采取的方法有:一是无效处理,当发现有一个以上按键同时按下时,认为此次按键输入无效。二是等待释放,将最后释放的按键作为有效键处理。三是硬件封锁,当发现有一按键按下时,硬件电路即刻封锁其他按键的输入直到该键处理完毕。 ③应防止按一次键而产生多次处理的情况:这种情况的发生是由于键扫描速度和键处理速度较快,当某一个按下的按键还未及时释放时,键扫描程序和键处理程序已执行了多遍,这样由于程序执行和按键动作不同步,而造成一次键有多个键输入的错误状态。为了避免发生这种情况,必须保证按一次键,CPU只对该键作一次键处理,为此,在键扫描程序中不仅要检测是否有键按下,在有键按下的情况下,作一次键处理;而且在键处理完毕后,还应检测按下的键是否释放,只有当按下的键释放以后,程序才继续往下执行。这样每按一次键,只有一次键处理,使两者达到了同步。 传播优秀Word版文档 ,希望对您有帮助,可双击去除! 8*2键盘是一种行列式键盘,如图2所示图中有8行2列,8根行线与PB口相连,2根列线与PC口的PC6、PC7相连按键设置在行、列交交点处(数字或字符为其键号),行、列线分别连接到按键开关的两端。当列线通过上拉电阻接+5V时,接被钳位在高电平行列式键盘电路状态。键盘中有无按键按下是由列线送入全扫描字、列线读入行线状态来判断的。这就是:被行线所有I/O线均置成低电平,然后读入列线电平状态。如果有键按下,总会有一根列线电平被拉至低电平,从而时列线输入不全为1。 键盘中哪一个键是由行线逐行置成低电平后,检查列线输入状态予以确定的。其方法是:依次给行线送低电平,然后查所有行线状态,如果全为1,则所按下之键必在此行。而且与0电平行线相交的交点上的那个键。键盘的工作方式采用编程扫描的工作方式,即通过调用子程序来响应键输入的要求,在按键扫描子程序中完成下述功能: ①判断键盘上有无键按下。其方法是先使PB7~PB0=0,然后读PC6、PC7的状态,若为全1则键盘中无键按下;若不全为1,则说明键盘中有键按下。 ②去除按键的机械抖动影响。可作这样的处理:当判断有键按下后,软件延时一段时间后再判断键盘状态,如果仍为键按下状态,则认为有一个确定的键按下,否则按按键抖动处理。 ③求按下键的键值及键号。键盘上的每一个键都对应一个键值。键盘中键号排列没有规律,不能通过对键值直接运算得到键号。因此必须先判断按下键是使PC7=0还是PC6=0,然后再查为零的列线上键按时其8位键值中是否有一位为零,若为零则可得到键值。求按下键值及键号的目的是使程序转到相应的地址去完成该键的操作。一般,对数字键就是直接将该号送到显示缓冲区进行显示,对功能键则必须先找到完成该功能键处理子程序的入口地址,并转去执行该键的命令。因此,当键号求到后,还必须找到功能键处理程序入口。 ④为保证键闭合一次CPU仅进行一次键功能操作。程序中需要等待键释放以后再将键号送累加器AH。 1.2 8255A与LED数码管接口 发光二级管数码显示器简称为LED(Light Emitting Diode)数码显示器,它由七段发光二级管组成。这种显示器价格低廉、体积小、功耗低,而可靠性有很好,因此,从单板微型机、袖珍计算机到许多微型机控制系统及数字化仪器都