虽然可以,但是,对单片机的要求比较高,需要有下拉电阻控制器的单片机, 比如 STC8051U 系列,STC32系列等等。
IO设置为高祖,
1) 开内部下拉,关内部上拉,如果 IO = 1, 则: 接VCC的按键被按下。
2) 关内部下拉,开内部上拉,如果 IO = 0, 则: 接GND的按键被按下。
以上皆否则没有按键被按下。
然后,还有另一种双按键方案,需要单片机IO 支持强推挽输出。
IO出来,接一个电阻,然后对地电容,然后,接两个按键,按键A直接接地,按键B接一个等值电阻后接地。
IO强推挽,先充电5us, 然后,切换高阻,检测IO, IO 为 0, 则 按键 A 按下。 否则 5us 后再检测,IO 为 0 则按键B 按下, 反之 没有按键 按下。
如 判定为 按键B 按下,需要 再 充电一次复验, 防止是 在第二次检测时,实际按键A 按下。
|