导航:首页 > 操作系统 > 单片机实验键盘和数码

单片机实验键盘和数码

发布时间:2024-05-06 04:47:10

A. 求用52单片机实验板实现4*4键盘及数码管动态扫描显示的程序

#include <reg52.h>
#define uchar unsigned char
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};
sbit la=P2^6;
sbit wela=P2^7;
uchar keyscan();
uchar num,temp,num1;
void delay(uchar z)
{
int x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
num=17;
la=1;
P0=0;
la=0;
wela=1;
P0=0xc0;
wela=0;
while(1)//每次按下都是 所以while循环
{
num1=keyscan();
la=1;
P0=table[num1-1];
la=0;
}
}
uchar keyscan()
{
P3=0xfe;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0); //必须用if啊
{
delay(5);//消抖再判断
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0) //必须用if啊
{
temp=P3;
switch(temp)
{
case 0xee:num=1;break;
case 0xde:num=2;break;
case 0xbe:num=3;break;
case 0x7e:num=4;break;
}
while(temp!=0xf0)// 松手检测 松手数字才变化 必须用while 不松手不显示 不松手下一排键盘没用 一直在while内循环 放在第二个if内
{
temp=P3;
temp=temp&0xf0;
}
}
}
P3=0xfd;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0);
{
delay(5);//消抖再判断
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0);
{
temp=P3;
switch(temp)
{
case 0xed:num=5;break;
case 0xdd:num=6;break;
case 0xbd:num=7;break;
case 0x7d:num=8;break;
}
while(temp!=0xf0)//松手检测 松手数字才变化 必须用while
{
temp=P3;
temp=temp&0xf0;
}
}
}
P3=0xfb;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0);
{
delay(5);//消抖再判断
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0);
{
temp=P3;
switch(temp)
{
case 0xeb:num=9;break;
case 0xdb:num=10;break;
case 0xbb:num=11;break;
case 0x7b:num=12;break;
}
while(temp!=0xf0)//松手检测 松手数字才变化 必须用while
{
temp=P3;
temp=temp&0xf0;
}
}
}
P3=0xf7;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0);
{
delay(5);//消抖再判断
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0);
{
temp=P3;
switch(temp)
{
case 0xe7:num=13;break;
case 0xd7:num=14;break;
case 0xb7:num=15;break;
case 0x77:num=16;break;
}
while(temp!=0xf0)//松手检测 松手数字才变化 必须用while
{
temp=P3;
temp=temp&0xf0;
}
}
}
return num;
}

B. 51单片机怎样用键盘控制数码管显示

51单片机怎样用键盘控制数码管显示的方法。

如下参考:

1.首先,编写代码并点亮数码管。

C. 51单片机如何把矩阵键盘控制数码管和独立键盘控制蜂鸣器共同实现

我们先了解矩阵键盘的工作原理,掌握编码方法并能够编写出扫描程序,使用矩阵键盘控制数码管输出矩阵键值。

显示内容
在显示备橘祥模块的八位 LED 数码的个位显示当前使用矩阵键盘所按下的值。
键阵键盘多用于键伍李数目较多的时候。这样可以更多的节省IO口的占用量,
对于矩阵键盘常用的扫描方法为线反转查询法。具体的思路是:首先使行作为输入,使用单片机内部仿搏电阻上拉为高电平,列输出低电平,读行的状态。如果行有一个IO口是低,说明有键按下,进行下一步,否则退出扫描。如果有键按下,置列为输入,行输出低电平,读列的状态。最后根据
行列的状态查表就可以知道是那个按键按下。

阅读全文

与单片机实验键盘和数码相关的资料

热点内容
炮神命令部队进攻 浏览:497
三星压缩机sk190h参数 浏览:1002
解压到硬盘好难怎么办 浏览:25
socket接口java 浏览:232
压缩机cad图 浏览:389
java内聚 浏览:550
pythonopencvmask 浏览:983
java地址解析 浏览:306
高级编程培训班需要多少费用 浏览:830
excel加密方法保护表格 浏览:193
今买明卖的选股公式源码 浏览:215
腾讯手机加密的照片怎么还原 浏览:547
飞利浦电视怎么安装APP 浏览:34
程序员版约会 浏览:938
java保留小数点两位 浏览:869
喜马拉雅app怎么选 浏览:37
java编程语言制作app 浏览:646
为什么无法让app使用数据 浏览:184
手机怎么卸载刷机包预装app 浏览:684
程序员的下班点 浏览:420