8203|14

1万

帖子

25

TA的资源

裸片初长成(高级)

楼主
 

用MCU的ADC作键盘输入,电阻怎么取值恰当呢? [复制链接]

用MCU的ADC作键盘输入,需要输入 0~9 这十个数。ADC范围为 0~3.3V ,
电路如下图。电阻怎么取值恰当呢?

如果哪位有更合适的接线方法,请指出。

此帖出自模拟电子论坛

最新回复

由外接硬件(电阻串)决定滴~~~ 2个按键同时按下去时,只能检测到第二个的电压而忽略第一个。 那怕全部N个按键同时按下去时,只能检测到第N个的电压而忽略前面所有的按键。  详情 回复 发表于 2013-12-31 05:52
点赞 关注(1)

回复
举报

1149

帖子

3

TA的资源

五彩晶圆(初级)

沙发
 
我认为尽量把压降均分,10个按键每个大概按0.33V步进,当然能用常用电阻最好了!
此帖出自模拟电子论坛

点评

这是一种办法。均分其电压,计算准确,能最精确地区分所按下的键。 但这样做,它的运算量不是最小的!  详情 回复 发表于 2013-12-21 14:36
 
 

回复

1万

帖子

25

TA的资源

裸片初长成(高级)

板凳
 

回复 沙发zqjqq88 的帖子

这是一种办法。均分其电压,计算准确,能最精确地区分所按下的键。

但这样做,它的运算量不是最小的!
此帖出自模拟电子论坛

点评

它的运算工作量不大~~~ 算式: (ADC采样值 * N ) / ADC分辩率  详情 回复 发表于 2013-12-25 10:57
 
 
 
 

回复

1万

帖子

25

TA的资源

裸片初长成(高级)

4
 
看来这个是个小问题,没人关心哈。

二楼的方法是其中之一,也是常用的方法。

说说我的另一个想法:

ADC输出的数据是要交给CPU处理的,CPU处理移位的时间最短,那么,如果只使用ADC的最高位,如使用最高三位,这样可以代表的最大数是7,如果使用高四位,代表的数是16,

对于10个按键,最少使用4位,然后再计算0~9的分压比。

这样做的好处是,ADC结果只用移n位(n = ADC分辨率 - 按键使用的位数)即可,不需要任何运算!
此帖出自模拟电子论坛
 
 
 
 

回复

1万

帖子

25

TA的资源

裸片初长成(高级)

5
 
再没人拍砖,俺要申请专利了哈
此帖出自模拟电子论坛
 
 
 
 

回复

1080

帖子

2

TA的资源

五彩晶圆(中级)

6
 
2楼的方法常用,系统可靠性较高~~~

4楼的方法不推荐,线性分布率极差,阻值或环境一有点变化(如碰到脏物),开关就失灵,系统可靠性差~~~
此帖出自模拟电子论坛

点评

应该说,平均取值,它的判断键值是最准确的。但与四楼的的准确性也高不了太多。 因为,10个按键用16个数表示对其准确性的影响是比较小的,但带来的运算上的利益却是非常大的。  详情 回复 发表于 2013-12-25 11:51
 
 
 
 

回复

1080

帖子

2

TA的资源

五彩晶圆(中级)

7
 
dontium 发表于 2013-12-21 14:36
这是一种办法。均分其电压,计算准确,能最精确地区分所按下的键。

但这样做,它的运算量不是最小的!

它的运算工作量不大~~~

算式: (ADC采样值 * N ) / ADC分辩率
此帖出自模拟电子论坛

点评

有乘法,特别是除法,它的执行时间还是比较长的。你可以编译后看看它的汇编语句数量就知道了。 如果按四楼的的方法,对按键的处理只需要一句指令:移n位 而一般 --- 再差的单片机都有移位指令,并且是一个  详情 回复 发表于 2013-12-25 11:48
 
 
 
 

回复

1万

帖子

25

TA的资源

裸片初长成(高级)

8
 
xuyiyi 发表于 2013-12-25 10:57
它的运算工作量不大~~~

算式: (ADC采样值 * N ) / ADC分辩率

有乘法,特别是除法,它的执行时间还是比较长的。你可以编译后看看它的汇编语句数量就知道了。


如果按四楼的的方法,对按键的处理只需要一句指令:移n位

而一般 ---  再差的单片机都有移位指令,并且是一个周期的。
此帖出自模拟电子论坛
 
 
 
 

回复

1万

帖子

25

TA的资源

裸片初长成(高级)

9
 
xuyiyi 发表于 2013-12-25 10:52
2楼的方法常用,系统可靠性较高~~~

4楼的方法不推荐,线性分布率极差,阻值或环境一有点变化(如碰到脏 ...

应该说,平均取值,它的判断键值是最准确的。但与四楼的的准确性也高不了太多。

因为,10个按键用16个数表示对其准确性的影响是比较小的,但带来的运算上的利益却是非常大的。
此帖出自模拟电子论坛
 
 
 
 

回复

1080

帖子

2

TA的资源

五彩晶圆(中级)

10
 
LS这是纯理论的做法,实际上,2楼的均分法,用在小家电中,可靠性都很差(很干净的实验室环境除外),现在几乎没有产品用了,更不要说你4楼的方案了。。。。
此帖出自模拟电子论坛

点评

那么现在用什么方法呢?  详情 回复 发表于 2013-12-30 09:48
 
 
 
 

回复

900

帖子

0

TA的资源

五彩晶圆(初级)

11
 
xuyiyi 发表于 2013-12-25 18:49
LS这是纯理论的做法,实际上,2楼的均分法,用在小家电中,可靠性都很差(很干净的实验室环境除外),现在 ...

那么现在用什么方法呢?
此帖出自模拟电子论坛

点评

经典的纯IO口扫描法~~~~  详情 回复 发表于 2013-12-30 10:41
 
个人签名别打我! 我说。
 
 
 

回复

1080

帖子

2

TA的资源

五彩晶圆(中级)

12
 
yangxf1217 发表于 2013-12-30 09:48
那么现在用什么方法呢?

经典的纯IO口扫描法~~~~  
此帖出自模拟电子论坛

点评

受教了。  详情 回复 发表于 2013-12-30 16:59
 
 
 
 

回复

1185

帖子

1

TA的资源

纯净的硅(高级)

13
 
2个按键下去 的时候如何判断呢。判断第一个忽略第二个,但是第二个肯能改变那个阻值了。
此帖出自模拟电子论坛

点评

由外接硬件(电阻串)决定滴~~~ 2个按键同时按下去时,只能检测到第二个的电压而忽略第一个。 那怕全部N个按键同时按下去时,只能检测到第N个的电压而忽略前面所有的按键。  详情 回复 发表于 2013-12-31 05:52
 
 
 
 

回复

900

帖子

0

TA的资源

五彩晶圆(初级)

14
 
xuyiyi 发表于 2013-12-30 10:41
经典的纯IO口扫描法~~~~

受教了。
此帖出自模拟电子论坛
 
个人签名别打我! 我说。
 
 
 

回复

1080

帖子

2

TA的资源

五彩晶圆(中级)

15
 
youluo 发表于 2013-12-30 12:41
2个按键下去 的时候如何判断呢。判断第一个忽略第二个,但是第二个肯能改变那个阻值了。

由外接硬件(电阻串)决定滴~~~

2个按键同时按下去时,只能检测到第二个的电压而忽略第一个。

那怕全部N个按键同时按下去时,只能检测到第N个的电压而忽略前面所有的按键。
此帖出自模拟电子论坛
 
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表