bfbdc765-fd98-4fd4-89fd-a12ee5f9590a.png (32.33 KB, 下载次数: 0)
WL0123 发表于 2025-1-11 16:53
这只是读键值的基本逻辑关系,实用代码需要补充完善。
char key_scan()
{
xiaobendan001 发表于 2025-1-12 07:34
很明显这个不对,说下怎么完善吧
人中狼 发表于 2025-1-12 09:21
先看懂电路和代码再说吧
xiaobendan001 发表于 2025-1-12 14:20
B4=1时,按S1我能理解,B4=0时,我按的仍然是S1,你试试这个代码返回的是几?
xiaobendan001 发表于 2025-1-12 14:20
B4=1时,按S1我能理解,B4=0时,我按的仍然是S1,你试试这个代码返回的是几?
xianfajushi 发表于 2025-1-13 15:35
可以进一步节省1个IO口,用2个IO口就能实现4个按键检测,2个电阻接地,2个电阻接电源,都当独立按键处理.
WL0123 发表于 2025-1-12 20:34
如果你按着S1不放,if(B2==0)return 1;,程序已经返回,根本运行不到下面代码,只有S1和S2都没有按下才能 ...
wlefa 发表于 2025-1-13 21:13
如果恰巧在 if(B2==0)return 1;语句之后才按下S1呢?又或者恰巧在else if(B3==0)return 2;语句后才按下S2 ...
wlefa 发表于 2025-1-13 21:13
如果恰巧在 if(B2==0)return 1;语句之后才按下S1呢?又或者恰巧在else if(B3==0)return 2;语句后才按下S2 ...
lkc8210 发表于 2025-1-13 16:15
请问接电源的按键如何判断?
51hei.gif (791.92 KB, 下载次数: 0)
打杂的 发表于 2025-2-7 13:47
按照你们写的程序,实际测试按键无效。能写一个完整的程序吗?感谢,最好是51单片机,在学习,电路是没有问 ...
lkc8210 发表于 2025-1-13 16:15
请问接电源的按键如何判断?
lei848200 发表于 2025-1-11 21:07
你这电路有问题吧?B2、B3如果不接上拉电阻,按键相当于直接短路路了。
xianfajushi 发表于 2025-2-10 21:57
除了P0外的都可用来制作1个IO检测2个按键用,特别适合闲散IO,1个按键接地1个按键接电源,检测接地按键时 ...
wlefa 发表于 2025-1-13 21:13
如果恰巧在 if(B2==0)return 1;语句之后才按下S1呢?又或者恰巧在else if(B3==0)return 2;语句后才按下S2 ...
WL0123 发表于 2025-2-8 08:33
楼主搞了快1个月还没有搞定?给你写个测试程序,肯定没有问题。如果不稳定把你电路中R5省略或改为1K
lkc8210 发表于 2025-2-12 10:06
?
“先赋值低电平再检测是否高”
先赋值低电平不就打开了内置对地的MOS管?
51hei截图_20250218163858.png (186.16 KB, 下载次数: 0)
lkc8210 发表于 2025-1-13 16:15
请问接电源的按键如何判断?
3853AAD458D49EA1346E36FE8830A633.png (91.82 KB, 下载次数: 0)
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |