下面的程序 是用4个键来控制12864的菜单上下选择并确认,这种方法很简单,只要判断高低状态就可以了,但是现在想用4*4的矩阵键盘来控制,。矩阵键盘接在P2口上。矩阵键盘是通过定时器中断来获得键值的。原来的程序如下,请问各位大侠们怎么改啊。急啊!!!
while(ok) //OK为P1.1口,控制确认键
{
if(up==0) //up=P1.2,向上
{
select--;
if(select==-1)
select=3;
while(!up);//等待松手
}
if(down==0) //up=P1.2,向上
{
select++;
if(select==4)
select=0;
while(!down);//等待松手
}
menu_page(select);//反白选择
while(ok&up&down); //如果没有按键则等待
}
while(!ok); //等待松手
switch(select)
{
case 0: set_temp();break;//设置温度
case 1: set_humi();break;//设置湿度
case 2: set_temp2();break;//设置土温
case 3: set_humi2();break;//设置土湿
default:break;
}
delay
2013-3-29 16:23:54
定时器中断一次就对键盘进行扫描,然后得到行值和列值,就知道摁了哪个键然后执行相应的操作
定时器中断一次就对键盘进行扫描,然后得到行值和列值,就知道摁了哪个键然后执行相应的操作
举报
2013-3-29 22:34:19
我做毕业设计业用到这个 矩阵按键的中断程序我会
但是我不会lcd菜单显示 你能把你的整个程序发给我吗?
中断矩阵可以直接用单片机内部中断int0 矩阵按键连接好之后,按键的一个公共端用与门连接到单片机的内部中端口上,程序 就在中断扫描哪个按键被按下,这个网上应该很多
我做毕业设计业用到这个 矩阵按键的中断程序我会 但是我不会lcd菜单显示 你能把你的整个程序发给我吗?
中断矩阵可以直接用单片机内部中断int0 矩阵按键连接好之后,按键的一个公共端用与门连接到单片机的内部中端口上,程序 就在中断扫描哪个按键被按下,这个网上应该很多
举报