- 45
- 0
- 约6.57千字
- 约 18页
- 2018-08-22 发布于江苏
- 举报
lcd1602计算器3
1.实验目的。
1、掌握单片机定时器、中断、键盘扫描、动态显示及数值计算的综合运用能力;
2、掌握编程的运用能力;
3、设计一只简易的16键计算器。
2.实验内容。
图5-1 简易16键计算器
编程实现图5-1的简易16键4位十进制整数计算器的功能。要求:
1.设计4*4的键盘,其中10个数字键0~9,其余6个为“+” “-” “*”“/” “=”和“C”
2.设计4位LED接口电路或LCD显示电路
3.实现2位数的简单运算
编程提示:
1、定时显示
开辟一显示缓冲区,显示中断程序定时读取缓冲区显示各位数字,每位显示2.5ms,显示4位需要10ms,也就是显示的刷新频率是100Hz。这样既保证亮度又不闪烁,同时CPU还有足够时间做其他事情。
2、键盘中断扫描
利用键盘中断扫描程序,读出按键的键码,存入键盘缓冲区,供主程序读取。
3、计算器的主程序读取键盘缓冲区的键码,驱动计算器的运行。
4、计算中需要十进制与十六进制(或二进制)转化。
3、系统硬件设计电路图
矩阵键盘的硬件接线仿真图
LCD1602的接线仿真图
P0.0~P0.7引脚接lcd的D0-D7,P3口接矩阵键盘。单片机的P2.4、P2.0、P2.3脚分别接到LCD的RS、R/W、E管。
整体电路图为:
显示电路,LCD1602A的引脚详细介绍:
采用LCD1602A来显示,要求能显示两行。它的—引脚分别接到单片机的P0.0~P0.7引脚;RS、R/W、E管脚分别接到单片机的P2.4、P2.0、P2.3 。具体连接见后面的电路图。
以下是1602的16进制ASCII码表
软件设计。包含程序主框图,所有程序。
分析可知共分为七个模块:键盘扫描部分,定义各个位置上的键值部分,延迟部分,存贮部分,液晶显示部分,运算部分,动态显示部分。运用了proteus软件仿真电路,使用keil软件进行程序的编写与调试。
Keil软件编写过程截图:
Proteus软件仿真电路图编写过程截图:
主程序流程图如下:
判断是否有键按下
判断是否有键按下
否
有
按下数字键则将键值存入指定内存单元,并在液晶上显示出来,若是第二次则须完成四则运算并将结果保存在指定内存单元
按下加减乘除四个功能按键时,将数码管显示清零,以等待下一个数字键值输入
若按下的是等号键时,则要将运算结果在数码管上显示出来
液晶显示电路,将各种输入值和运算结果显示出来
键盘扫描
代码:
#includereg51.h
#define uint unsigned int
#define uchar unsigned char
sbit lcden=P2^3;
sbit rs=P2^4;
sbit rw=P2^0;
sbit busy=P0^7;
char i,j,temp,num,num_1;
long a,b,c;
float a_c,b_c;
uchar flag,fuhao;
uchar code table[]={
7,8,9,0,
4,5,6,0,
1,2,3,0,
0,0,0,0};
uchar code table1[]={
7,8,9,0x2f-0x30,
4,5,6,0x2a-0x30,
1,2,3,0x2d-0x30,
0x01-0x30,0,0x3d-0x30,0x2b-0x30};
void delay(uchar z)
{
uchar y;
for(z;z0;z--)
for(y=0;y110;y++);
}
void check()
{
do{
P0=0xFF;
rs=0;
rw=1;
lcden=0;
delay(1);
lcden=1;
}while(busy==1);
}
void write_com(uchar com)
{
P0=com;
rs=0;
rw=0;
lcden=0;
check();
lcden=1;
}
void write_date(uchar date)
{
P0=date;
rs=1;
rw=0;
lcden=0;
check();
lcden=1;
}
void init()
{
num=-1;
lcden=1;
write_com(0x01);
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x80);
write_com(0x01);
num_1=0;
i=0;
j=0;
a=0;
b=0;
c=0;
flag=0;
fuhao=0;
}
void keyscan(
您可能关注的文档
最近下载
- 常用字偏旁部首为走之儿(辶)的字练习字帖.pdf VIP
- 1.1我们与法律(教学课件)道德与法治新教材统编版五四学制六年级下册.pptx VIP
- 文化为主题的空间设计研究.pptx VIP
- 中药制剂检测技术第一章绪论.ppt VIP
- 《食管癌术后吻合》课件.ppt VIP
- 2013款长安福特新福克斯_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf VIP
- 人工智能入门 课件 刘峡壁1.绪论、2.人工神经网络与机器学习.pptx
- 餐饮大数据与门店开发项目一餐饮门店开发投资评估任务三开店模.pptx VIP
- 电机及拖动系统课件全套.pdf
- 2026版人教版八年级下册语文古诗及古诗解析.docx VIP
原创力文档

文档评论(0)