在设计中如果用到IO口不够用,我们肯定第一时间想到的就是通过电阻分压,根据按下不同按键,来让不同阻值的电阻接到分压电路中,然后单片机ADC模块做电压数据读取分析对应按键按下。下文就和大家分享下单片机设计AD按键的内容。
AD按键设计硬件部分的电路有两种电路形式,一种的电阻串联,另一种是电阻并联,这两种都是通过电阻分压的原理实现的,下面通过电路图一一介绍,并给出一个案例程序参考。
电阻并联型AD按键
![95fa8ad440f3c96a88d05c98fe6de3e0.png](https://i-blog.csdnimg.cn/blog_migrate/8f2c46c09fcab9a5f3f11ab4c7a267cc.jpeg)
电阻并联型AD按键
上图有10个按键,不同按键按下,分到的电压值不同,电阻值我已经计算好了,有部分误差,但已经是算成最小误差值了,以后大家可直接使用。对应的分压值依次有0.1Vref、0.2Vref ~ 0.9Vref、0.99Vref,共10个档位。单片机ADC通过读取电路中ADCIN处的电压识别对应按键按下。
上图电阻并联型AD按键电路有一个缺点就是如果有两个按键同时按下,会有错误识别的可能出现,抗干扰差,所以并联型AD按键电路很少使用。