ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:304.47KB ,
资源ID:15119949      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15119949.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于AT89C51单片机简易计算器的设计Word文档格式.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于AT89C51单片机简易计算器的设计Word文档格式.docx

1、(4)错误提示:当计算器执行过程中有错误时,会在LED上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LED上显示“CUO”,提示溢出。三、系统模块组成框图:二、硬件设计(一)、总体硬件设计本设计选用AT89C51单片机为主控单元。显示部分:采用LED动态显示。按键部分:采用4*4集成计算键盘;总电路图:(1)44集成计算键盘 集成计算键盘本质上是44矩阵键盘,矩阵键盘采用四条I/O 线作为行线,四条I/O 线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为44个。这种行列式键盘结构能有效地提高单片机系统中I/O 口的利用率

2、。矩阵键盘的工作原理:计算器的键盘布局如图2所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按键功能,这种形式在单片机系统中也最常用。矩阵键盘内部电路图如图所示:(三)、LED显示模块如图本设计采用LED共阴数码管来显示输出数据。共阴数码管的每一位都是公共的阴极,只有输入低电平的时候才有可能被点亮,所以位选的时候被选中的位必须是低电平。本设计采用两个74HC573锁存器来驱动数码管,引脚如上图所示。74HC573-1是控制段选的,74HC573-2是控制位选的,P2.6和P2.7端口是锁存使能位,置高电平时锁存器透明(即输入和输出相同),置低电平时锁存。74HC573的八个锁存

3、器都是透明的D 型锁存器,当使能(G)为高时,Q 输出将随数据(D)输入而变。当使能为低时,输出将锁存在已建立的数据电平上。输出控制不影响锁存器的内部工作,即老数据可以保持,甚至当输出被关闭时,新的数据也可以置入。这种电路可以驱动大电容或低阻抗负载,可以直接与系统总线接口并驱动总线,而不需要外接口。特别适用于缓冲寄存器,I/O 通道,双向总线驱动器和工作寄存器。HC573引脚功能: 引脚号 符号 名称及功能1 OE 3态输出使能输入(低电平)2-9 D0 - D7 数据输入12-19 Q0 - Q7 3态锁存输出11 LE 锁存使能输入10 GND 接地(0V)20 VCC 电源电压(四)运算

4、模块(51单片机控制)51 单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O 口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。单片机最小系统复位时单片机的初始化操作,只要

5、给RST引脚加上两个机器周期以上的高电平信号,就可以使STC89C51单片机复位。本次采用的是12M晶振,按钮复位电路。三、软件设计现实生活中人们熟知的计算器,其功能主要如下:1、键盘输入;2、数值显示;3、加、减、乘、除四则运算;针对上述功能,计算器软件程序要完成以下程序的设计:1、键盘输入检测程序2、LED显示程序3、算术运算程序1、程序流程图系统总流程图算术运算程序流程图2、程序清单#includemath.h#define uchar unsigned char#define uint unsigned int#define ulong unsigned longsbit wela=P

6、27; /定义端口sbit dula=P26;long in1,in2,out,x;int cnt,i,flag;uchar code num=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71; /LED显示字模,共阴void delay(uint xms) /延时函数 uint j; for(i=xms;i0;i-) for(j=114;jj-);void display() /显示函数声明 uchar w1,w2,w3,w4,w5,w6,f=0; long y; if(x=0) /

7、显示六位计时数 if(x=1e6) P0=0xff; wela=1; P0=0xf7; wela=0; dula=1; P0=num12; dula=0; delay(2); P0=0xef; P0=0x3e; P0=0xdf; P0=num0; return; w1=x%10;w2=x/10%10;w3=x/100%10;w4=x/1000%10;w5=x/10000%10;w6=x/100000%10; if(f=1|w6) f=1; P0=0xfe; P0=numw6; if(f=1|w5) P0=0xfd; P0=numw5; if(f=1|w4) P0=0xfb; P0=numw4; if(f=1|w3) P0=numw3; if(f=1|w2) P0=numw2; P0=0xff; wela=1; P0=0xdf; wela=0; dula=1; P0=numw1; dula=0; delay(2); else y=labs(x); if(y=1e5) w1=y%10;w2=y/10%10;w3=y/100%10;w4=y/1000%10;w5=y/10000%10; if(f=0) P0=0xff; wela=1; P0=0xfe; wela=0; dula=1; P0=0x40; dula=0; delay(2); P0=0xfd; P0=0xfb; wel

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1