完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
下面的程序 是用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 |
|
相关推荐
2个回答
|
|
定时器中断一次就对键盘进行扫描,然后得到行值和列值,就知道摁了哪个键然后执行相应的操作
|
|
|
|
我做毕业设计业用到这个 矩阵按键的中断程序我会 但是我不会lcd菜单显示 你能把你的整个程序发给我吗?
中断矩阵可以直接用单片机内部中断int0 矩阵按键连接好之后,按键的一个公共端用与门连接到单片机的内部中端口上,程序 就在中断扫描哪个按键被按下,这个网上应该很多 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
195 浏览 0 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
172 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
453 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
697 浏览 2 评论
602 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11983 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 03:54 , Processed in 0.758067 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号