欢迎来到天天文库
浏览记录
ID:20682680
大小:70.00 KB
页数:3页
时间:2018-10-14
《单片机用一个io口采集多个按键信号,如何实现?》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、单片机用一个IO口采集多个按键信号,如何实现? 一个IO口检测多个按键肯定是可以实现的,下面简单举几个例子,为大家指点一下思路。 使用普通的I/O口检测多个按键通常我们使用按键检测的时候,一般都是一个I/O口检测一个按键,比如: M×N阵矩阵式按键至少也需(M+N)个I/O口,比如4×4共16个按键的矩阵共需8个I/O口。 那么一个I/O口可不可以实现检测多个按键呢?其实是可以的,硬件电路设计复杂,值不值得这么做。比如通过检测占空比来区分不同的按键,每个按键后面做硬件防抖处理后再加555定时器组成的电路。或者类似于串行通讯的方式,比如第一个
2、按键按下输出1个脉冲,第二个按键按下输出两个脉冲,第三个按下输出3个脉冲等,这种按键后端电路处理更复杂。 使用单片机的一个ADC采样口检测多个按键使用ADC检测多个按键时,按键之间的电压间隔最好相近,而且范围较宽,这样设计误差会更小一些。 比如以5个按键为例,ADC检测电压范围为0~5V,那么在设计电路时各按键之间的电压间隔应大约为5V/5=1V。 上图为本人设计的电路图,S1按下电压为0V;S2按下电压约为0.97V;S3按下电压为2.03V;S4按下电压约为2.94V;S5按下电压约为3.99V。软件处理时只要设置±0.1V的检测范围宽度
3、即可。 单片机
此文档下载收益归作者所有