作者wsxokmty (黑色怪物)
看板ASM
标题[问题] 4x4scan
时间Mon Feb 28 22:17:31 2011
小弟是c51新手现在 在玩4x4 scan
有大大可以帮一下小弟scan程式
现在的问题只读的到 3 7 ; ? 这4个码
其它的键都读不到有看过SCAN程式但就是
看不出问题在那有大大可以帮忙一下吗 谢谢
unsigned char scanlink[4]={0xef,0xdf,0xbf,0x7f} ;
void main()
{
while(1)
{
Scankey();
if(keyflag==1)
{
sdata=(col+row*4) | 0x30; //AND 0X30
writedata(sdata); //给lcm ASCII码
keyflag=0;
}
else ;
}
void Scankey()
{
unsigned char inl,i,j;
P2=0Xff;
for(i=0;i<4;i++)
{
P2=scanlink[i];
inl=P2;
delayX1ms(80);
inl=inl & 0x0f ;
if(inl!=0x0f)
{
inl=inl<<4;
inl=inl | 0x0f;
for(j=0;j<4;j++)
{
if(inl==scanlink[j])
{
keyflag=1;
row=i;
col=j;
}
else keyflag=0;
}
}
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.169.15.5