关于 51单片机 C语言 按键 数码管 电子计算器 4*4键盘 请您帮忙
单片机C语言按键数码管电子计算器怎么加上+-*/,让最后一行四个键是+-*/,第一个键是等于第二个键是归零请给我个编程我去钻研...
单片机 C语言 按键 数码管 电子计算器 怎么加上+ - * /,让最后一行 四个键是+ - * /,第一个键是等于 第二个键是归零 请给我个编程 我去钻研
展开
展开全部
又是你。
数码管就能显示“-”号,“+”、“*”、“/”怎么显示?
我都给你编程思路了,还给你做了简易的计算器,你就不会自己改改?加点你自己想要的功能,怎么这么懒。
数码管就能显示“-”号,“+”、“*”、“/”怎么显示?
我都给你编程思路了,还给你做了简易的计算器,你就不会自己改改?加点你自己想要的功能,怎么这么懒。
更多追问追答
追问
你那个不太对艾
追答
当然会不对!
你又没说你板子矩阵键盘接什么口,数码管接口,我就用我自己的开发板给你做,你拿着就能用?你就不知道自己改改引脚,改改显示,什么都要人家来帮你做出成品,那我请问你学习单片机的目的何在?自己都舍不得去研究学了有什么用?就是拿人家的程序,下载进来看看是什么样的?
意法半导体(中国)投资有限公司
2021-01-14 广告
2021-01-14 广告
1、不是的,STC单片机全面兼容MCS-51单片机,可以用一般的编程器编程,但ISP功能更方便实用。 2、实验板的串口就是ISP下载用的吧。 4、汇编语言不一定要在keil里学,一般的教程都可以学。keil只是一个编译程序。因为keil编译...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
展开全部
这个根据你的习惯自己定位这些符号,按照你讲的应该是:
= c 1 2
3 4 5 6
7 8 9 0
+ - * /
4x4矩阵键盘吧!
你可以编个按键子程序:
定义个全局变量key,再写个delay();延时程序。这个按键子程序会给key赋值,第一个键按下时key=1;第二个键按下时key=2;。。。第16个键按下时key=16;
void keycan(void)
{
unsigned char temp;
P1 = 0xf0;
if(P1!=0xf0)
{
delay();
if(P1!=0xf0)
{
temp = P1;
temp &= 0xf0;
if(temp==0xe0)
key = 1;
else if(temp==0xd0)
key = 2;
else if(temp==0xb0)
key = 3;
else if(temp==0x70)
key = 4;
else
key = 0;
P1 = 0x0f;
temp = P1;
temp &= 0x0f;
if(temp==0x0d)
key += 0;
else if(temp==0x0b)
key += 4;
else if(temp==0x07)
key += 8;
else
key = 0;
while(P1!=0x0f);
}
}
}
然后你再根据key的值确定哪个键按下,再用switch case语句就行了!不给你写详细程序,给个思路,你自己想!自己想收获大!
不懂再问我
= c 1 2
3 4 5 6
7 8 9 0
+ - * /
4x4矩阵键盘吧!
你可以编个按键子程序:
定义个全局变量key,再写个delay();延时程序。这个按键子程序会给key赋值,第一个键按下时key=1;第二个键按下时key=2;。。。第16个键按下时key=16;
void keycan(void)
{
unsigned char temp;
P1 = 0xf0;
if(P1!=0xf0)
{
delay();
if(P1!=0xf0)
{
temp = P1;
temp &= 0xf0;
if(temp==0xe0)
key = 1;
else if(temp==0xd0)
key = 2;
else if(temp==0xb0)
key = 3;
else if(temp==0x70)
key = 4;
else
key = 0;
P1 = 0x0f;
temp = P1;
temp &= 0x0f;
if(temp==0x0d)
key += 0;
else if(temp==0x0b)
key += 4;
else if(temp==0x07)
key += 8;
else
key = 0;
while(P1!=0x0f);
}
}
}
然后你再根据key的值确定哪个键按下,再用switch case语句就行了!不给你写详细程序,给个思路,你自己想!自己想收获大!
不懂再问我
追问
哦 有一个不太明白 怎么让16个键分别用key赋值,
追答
你用一个大循环:
while(1)
{
key();
switch(key)
{
case 1;...break;
case 2;...break;
...
case 16;...break;
default;break;
}
}
你按键时子程序key会给key变量赋值,你硬件调试看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我做的毕设 你看看 有仿真有录像 有问题再追问吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询