4*4键盘扫描C程序
来源:互联网 发布:达索plm软件 编辑:程序博客网 时间:2024/05/21 05:19
4*4键盘扫描C程序
#include<reg52.h>
#define uchar unsigned char
uchar code table[]={0xC0,0xF9,0xA4,0xB0,0x99,
0x92,0x82,0xF8,0x80,0x90,
0x88,0x83,0xC6,0xA1,0x86,0x8E};
uchar temp,num;
void display(uchar);
void delay(uchar a)
{
uchar b;
for(;a>0;a--)
for(b=200;b>0;b--);
}
void main()
{
while(1)
{
P2=0x7f;
temp=P2;
temp&=0x0f;
if(temp!=0x0f)
{
delay(50);
if(temp!=0x0f)
{
switch(temp)
{
case 0x07: num="0"; break;
case 0x0b: num="1"; break;
case 0x0d: num="2"; break;
case 0x0e: num="3"; break;
}
}
}
P2=0xbf;
temp=P2;
temp&=0x0f;
if(temp!=0x0f)
{
delay(50);
if(temp!=0x0f)
{
switch(temp)
{
case 0x07: num="4"; break;
case 0x0b: num="5"; break;
case 0x0d: num="6"; break;
case 0x0e: num="7"; break;
}
}
}
P2=0xdf;
temp=P2;
temp&=0x0f;
if(temp!=0x0f)
{
delay(50);
if(temp!=0x0f)
{
switch(temp)
{
case 0x07: num="8"; break;
case 0x0b: num="9"; break;
case 0x0d: num="10"; break;
case 0x0e: num="11"; break;
}
}
}
P2=0xef;
temp=P2;
temp&=0x0f;
if(temp!=0x0f)
{
delay(50);
if(temp!=0x0f)
{
switch(temp)
{
case 0x07: num="12"; break;
case 0x0b: num="13"; break;
case 0x0d: num="14"; break;
case 0x0e: num="15"; break;
}
}
}
display(num);
}
}
void display(uchar i)
{
P3=0xf0;
P0=table[i];
}
- 4*4键盘扫描C程序
- 4X4键盘扫描演示程序
- 4X4矩阵键盘扫描程序
- 4X4矩阵键盘扫描程序
- 键盘扫描4X4
- 键盘扫描程序
- 键盘扫描程序
- 矩阵键盘扫描程序
- 矩阵键盘扫描程序
- 键盘扫描程序进展顺利
- C51行列键盘扫描程序
- C51矩阵键盘扫描程序
- 键盘扫描程序 FPGA
- 51单片机扫描键盘程序
- 键盘扫描程序及体会
- 矩阵键盘扫描程序实例
- linux下4x4矩阵 键盘驱动,用了定时器控制扫描程序来抗抖。
- 4*4矩阵键盘的扫描原理
- lcd 计算器
- Linux下动态共享库加载时的搜索路径详解(顶嵌开源)
- AT89S52控制DS18B20
- 嵌入开发(WinCE)的一些经验(2)
- 嵌入开发(WinCE)的一些经验(3)
- 4*4键盘扫描C程序
- SQL1220N The database manager shared memory set cannot be allocated.
- I will try google doc
- 分布式系统的CAP理论
- ORACLE GROUPING函数的使用
- 培训总结系列二:高效工作的12个心理法则
- You want to be a Graphics Programmer ...
- 嵌入式C++——关于C++的效率分析(顶嵌开源)
- 带复选框(checkbox)的树