基于AT89C51单片机简易计算器的设计(2)

2019-06-04 22:53

计算机科学与技术系 硬件课程设计实验

致能。

(9) DA(Data Available,脚12):数据有效输出脚。任一按键按下时,此脚位会输出高电位,按键释放后此脚又会恢复为低电位。

MM74C922对各按键的响应如下表所示:

如下图5所示,在本设计中,计算器输入键盘的4条行线、列线分别连接到MM74C922的X1-X4、Y1-Y4引脚,MM74C922的数据输出口与单片机的P2口相连,MM74C922的DA引脚经过一个非门连接到单片机的/INT0脚,当MM74C922检测到键盘输入时,DA产生高电平,与之相连的/INT0检测到低电平,给单片机一个中断,单片机从P2口的低四位读入键盘上按下的键的值。

6

计算机科学与技术系 硬件课程设计实验

图5 键盘接口电路图

(三)、LCD显示模块

本设计采用LCD液晶显示器来显示输出数据。通过D0-D7引脚向LCD写指令字或写数据以使LCD实现不同的功能或显示相应数据。

图6 LCD 模块

(四)运算模块(单片机控制)

MCS-51 单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器

7

计算机科学与技术系 硬件课程设计实验

(RAM)、程序存储器(ROM/EPROM)、并行I/O 口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。

单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。 三、软件设计

现实生活中人们熟知的计算器,其功能主要如下: 1、 键盘输入; 2、 数值显示;

3、 加、减、乘、除四则运算; 4、 对错误的控制及提示;

针对上述功能,计算器软件程序要完成以下模块的设计: 1、 键盘输入检测模块 2、 LCD显示模块; 3、 算术运算模块 4、 错误处理及提示模块。

系统总流程图

8

计算机科学与技术系 硬件课程设计实验

开始 初始化参数 初始化LCD显示 Y 有键输入? 读取键码 N 数字键 清零键 功能键 输入数值 状态清零 根据上次功能键和输入的数据计算结果 本次功能键? 结果送显示缓冲 结果送显示缓冲 等待数值输入 等待数值输入 结果送显示缓冲 数值送显示缓冲 等待数值输入 LCD显示

9 计算机科学与技术系 硬件课程设计实验

分块程序设计

1、 键盘输入检测程序设计

有键按下时,单片机响应外部中断0,转入外部中断0中断处理函数,在中断处理函数中完成对按键的判断,以进行下一步的程序处理。

/***********外部中断0处理函数*************/ void INT_0(void) interrupt 0 using 0 { key=translate(P2&0x0f);

if(key<='9'&&key>='0') //判断按下的键是否为数值 { num=num*10+(key-'0'); if (operators>0) { y=num; iny=1;

} else x=num; if(num<134217728&&num>-134217728) //当前数值是否超出限定范围

{

display(num);

} else

dataoverflow(); } else { switch(key) { case 'c': x=0; y=0; num=0; iny=0; operators=0; display(num); break; case '=':

arithmetic();

10


基于AT89C51单片机简易计算器的设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:曾都区实验中学2013年中考适应性考试数学试题及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: