欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
撥號(hào)鍵盤程序
[打印本頁(yè)]
作者:
changfeng4hao
時(shí)間:
2015-11-22 21:28
標(biāo)題:
撥號(hào)鍵盤程序
#include<reg51.h>
#define uchar unsigned char
uchar a0=16,b0=16,c0=16,d0=16,e0=16,f0=16,wei,temp,key,i,j,k;
sbit dula=P2^6;
sbit wela=P2^7;
//sbit beep=P2^3;
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x40};
void delay(uchar i)
{
for(j=i;j>0;j--)
for(k=125;k>0;k--);
}
/*xianshihanshu*/
void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f)
{
dula=1;
P0=table[a];
dula=0;
P0=0xff;//消影
wela=1;
P0=0xfe;
wela=0;
delay(5);
dula=1;
P0=table[b];
dula=0;
P0=0xff;//送位選數(shù)據(jù)前關(guān)閉所有顯示,防止打開位選鎖存時(shí)原來(lái)段選數(shù)據(jù)通過(guò)位選鎖存器造成混亂
wela=1;
P0=0xfd;
wela=0;
delay(5);
dula=1;
P0=table[c];
dula=0;
P0=0xff;//消影
wela=1;
P0=0xfb;
wela=0;
delay(5);
dula=1;
P0=table[d];
dula=0;
P0=0xff;//送位選數(shù)據(jù)前關(guān)閉所有顯示,防止打開位選鎖存時(shí)原來(lái)段選數(shù)據(jù)通過(guò)位選鎖存器造成混亂
wela=1;
P0=0xf7;
wela=0;
delay(5);
dula=1;
P0=table[e];
dula=0;
P0=0xff;//消影
wela=1;
P0=0xef;
wela=0;
delay(5);
dula=1;
P0=table[f];
dula=0;
P0=0xff;//送位選數(shù)據(jù)前關(guān)閉所有顯示,防止打開位選鎖存時(shí)原來(lái)段選數(shù)據(jù)通過(guò)位選鎖存器造成混亂
wela=1;
P0=0xdf;
wela=0;
delay(5);
}
/*鍵盤掃描函數(shù)*/
void keyscan()
{
{
P3=0xfe; //第一行線置低電平
temp=P3;//讀取p3口狀態(tài)值
temp=temp&0xf0; //第一行線是否有按鍵按下 (高4位)
if(temp!=0xf0) //有按鍵按下
{
delay(10);
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
temp=P3; //重新讀一次狀態(tài)值
switch(temp)
{
case 0xee:
key=0;
wei++;
break;
case 0xde:
key=1;
wei++;
break;
case 0xbe:
key=2;
wei++;
break;
case 0x7e:
key=3;
wei++;
break;
}
while(temp!=0xf0)
{
temp=P3;
temp=temp&0xf0;
// beep=0;
}
// beep=1;
}
}
P3=0xfd;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(10);
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
temp=P3;
switch(temp)
{
case 0xed:
key=4;
wei++;
break;
case 0xdd:
key=5;
wei++;
break;
case 0xbd:
key=6;
wei++;
break;
case 0x7d:
key=7;
wei++;
break;
}
while(temp!=0xf0)
{
temp=P3;
temp=temp&0xf0;
// beep=0;
}
//beep=1;
}
}
P3=0xfb;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(10);
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
temp=P3;
switch(temp)
{
case 0xeb:
key=8;
wei++;
break;
case 0xdb:
key=9;
wei++;
break;
case 0xbb:
key=10;
wei++;
break;
case 0x7b:
key=11;
wei++;
break;
}
while(temp!=0xf0)
{
temp=P3;
temp=temp&0xf0;
// beep=0;
}
// beep=1;
}
}
P3=0xf7;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(10);
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
temp=P3;
switch(temp)
{
case 0xe7:
key=12;
wei++;
break;
case 0xd7:
key=13;
wei++;
break;
case 0xb7:
key=14;
wei++;
break;
case 0x77:
key=15;
wei++;
break;
}
while(temp!=0xf0)
{
temp=P3;
temp=temp&0xf0;
// beep=0;
}
// beep=1;
}
}
}
}
/*主函數(shù)*/
void main()
{
while(1)
{
keyscan();
if(key!=20)
{
switch(wei)
{
case 1: a0=key;
b0=16;
c0=16;
d0=16;
e0=16;
f0=16;
break;
case 2: b0=key;
c0=16;
d0=16;
e0=16;
f0=16;
break;
case 3: c0=key;
d0=16;
e0=16;
f0=16;
break;
case 4: d0=key;
e0=16;
f0=16;
break;
case 5: e0=key;
f0=16;
break;
case 6: f0=key;
wei=0;
break;
}
key=20;
}
display(a0,b0,c0,d0,e0,f0);
}
}
/*主函數(shù)*/
/*void main()
{ while(1)
{
keyscan();
if(key!=20)//
{
switch(wei)
{
case 1:a0=key;
b0=16;
c0=16;
d0=16;
e0=16;
f0=16;break;
case 2:b0=key;
c0=16;
d0=16;
e0=16;
f0=16;break;
case 3:c0=key;
d0=16;
e0=16;
f0=16;break;
case 4:d0=key;
e0=16;
f0=16;break;
case 5:e0=key;
f0=16;
break;
case 6:f0=key;
wei=0;
break;
}
key=20; //
display(a0,b0,c0,d0,e0,f0);
}
}
} */
作者:
admin
時(shí)間:
2015-11-22 22:26
很好 謝謝分享 能提供一下電路圖嗎?
作者:
wyf00
時(shí)間:
2015-11-23 00:47
非常好 謝謝分享 。
作者:
changfeng4hao
時(shí)間:
2015-11-27 08:37
不知道怎樣把單片機(jī)原理圖發(fā)上去
作者:
changfeng4hao
時(shí)間:
2015-11-27 08:37
admin 發(fā)表于 2015-11-22 22:26
很好 謝謝分享 能提供一下電路圖嗎?
不知道怎樣把單片機(jī)原理圖發(fā)上去
作者:
233232
時(shí)間:
2018-4-17 17:12
多謝,,,,,,
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1