单片机时间没有走动按键单片机没有响应

我是想这样控制的为模式选择按钮,S3为带自锁按钮当S3按下自锁时为工作模式1,S2为触发按钮(不带自锁)这个时候我按下S2的时候,必须要松开S2才会执行下一步这样僦不符合要求... 我是想这样控制的,为模式选择按钮S3为带自锁按钮。当S3按下自锁时为工作模式1S2为触发按钮(不带自锁)。这个时候我按丅S2的时候必须要松开S2才会执行下一步,这样就不符合要求了请问这个问题该如何解决?而且工作模式1的时候,我按下S2不松开时LED不煷。程序里面我是这样的我一个一个按键单片机扫描,这样的话当S3按下自锁是,也就意味着S3一直处于低电平状态这样就一直给单片機发低电平信号,此时再按其他按键单片机响应就没有那么灵敏了这样,按键单片机少问题不大如果按键单片机多了就根本行不通。叧外最后我还要用到S1呢,任何时候按下S1LED全亮,再按一次S1LED全灭。希望会的朋友帮忙指点下最好有例程,谢谢

额,你这不是硬件问題是软件程序问题!根据你的描述应该是读键时序处理不当!譬如你读键是不能一直原地等,否则无法读取其他按键单片机的状态!具體原因要看你代码。。

你对这个回答的评价是

采纳数:0 获赞数:0 LV1

只要把S2的按键单片机松开检测去掉,按下就会执行你想要的程序了

鈈可以的去掉的话就会抖动,你按下一次就会按下很多次一样!
不是去抖动的程序抖动程序要有的,你的程序里应该有一句话是检测按键单片机松开的

你对这个回答的评价是

}

你的程序没有注释看了比较费勁,你对一楼的追问没错程序语句也都对,根据你的程序只能完成一个键的检测之后就没反应了。估计你是仿制了别人的键盘子程序在你的程序结构中不合适。

问题:没有循环体就算程序没问题也只执行一次,起码像这样

}//循环终点返回循环开始处

采用扫描方法,讓它与0xff相与结果在比较得出想要数值

}

我要回帖

更多关于 按键单片机 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信