1,结构
我的博客:写写感悟
2,原理
分两部来检测按下的按键
一,把1,2,3,4,初始化为上拉输入配置为高;再把a,b,c,d,初始化为推挽输出,配置为低;
二,例如按下F建,则4读出为低,这样按下的按键区间缩小到了4个,为C,D,E,F;
三,现在把IO口电平反转, 1,2,3,4, 初始化为推挽输出,配置为低; 再把a,b,c,d,初始化为上拉输入配置为高;
四,这个时候按下的F键,会使得d读出为低,那么通过反转前4为低,反转后d为低就可以确定按下的是F键.
3,程序
主函数
驱动程序
两次IO初始化,是因为读取的时候需要一次IO电平反转.
下面就是读按键的程序了
这样a的值具有了唯一性和相当于性,下面进行判断
再加上按键松开检测