搜索
bottom↓
12
返回列表 发新帖
楼主: yaoyutaoTom

AD转换时,是除 4096 还是4095

  [复制链接]

出0入0汤圆

发表于 2019-6-6 18:52:11 来自手机 | 显示全部楼层
标准答案:4095

出0入0汤圆

发表于 2019-6-6 20:16:44 | 显示全部楼层
给你一个独树一帜耳目一新的答案:
请忽略掉4095与4096的差异=1/4096=0.00024
只要直接把AD结果右移12位,那个速度绝对比做除法要快很多,
有些MUC的乘法是1周期的速度但除法几个或几十个周期。
有些MCU没有硬件除法器的要通过子程序那运算时间更加漫长。
所以运算最快精度不太差的办法就先乘法在结果右移12位,
例如:
BC=33
AD*BC>>12

出50入10汤圆

发表于 2019-6-7 12:17:37 | 显示全部楼层
本帖最后由 our2008 于 2019-6-7 12:28 编辑

用16进制和2进制移位操作思考就不会纠结了!

2进制是自然界统一数制。

16进制是人机交换数制。

10进制是给人用的。

有些mcu直接舍弃低端几位就当滤波了!

出10入12汤圆

发表于 2019-6-7 16:26:33 | 显示全部楼层
这还有的争????
ADC的量化方式本来就不是完全一样的,具体的都看自己的数据手册

出0入0汤圆

发表于 2019-6-8 13:50:20 来自手机 | 显示全部楼层
本帖最后由 lovemini 于 2019-6-8 13:57 编辑

这2篇文章说得挺清楚的,

https://blog.csdn.net/zyboy2000/article/details/40540823
http://bbs.21ic.com/icview-24884-1-1.html

出0入0汤圆

发表于 2019-6-8 18:12:59 | 显示全部楼层
一直都是除4095

出0入0汤圆

发表于 2020-7-2 10:37:43 | 显示全部楼层
看ADC手册,一般都有计算公式的

出0入33汤圆

发表于 2020-7-2 10:52:19 来自手机 | 显示全部楼层
其实前面有人提出来了,假设ADC分辨率只有1位,总不可能除以0吧。所以应该是4096没错。

出0入0汤圆

发表于 2020-7-2 11:15:40 | 显示全部楼层
4095对应的是最大值,0对应的是最小值,应该是除以4095

出0入4汤圆

发表于 2020-7-2 11:21:44 | 显示全部楼层
hdxet 发表于 2020-7-2 11:15
4095对应的是最大值,0对应的是最小值,应该是除以4095

量化误差  - -
请看
https://blog.csdn.net/zyboy2000/article/details/40540823

出100入0汤圆

发表于 2020-7-2 11:23:11 | 显示全部楼层
agilityChen 发表于 2015-5-1 15:43
从二楼起就开始传递错误信息!

绝大部分ADC的结构决定了其每1LSB的台阶必然是1/2^N,而不可能是1/(2^N - ...

受教了!

出0入0汤圆

发表于 2020-7-2 11:43:59 | 显示全部楼层
对于没有硬件除法器的话,还是除4096好点,可以移位运算效率高

出0入0汤圆

发表于 2020-7-2 11:52:13 | 显示全部楼层
liufabing 发表于 2015-5-1 12:30
不是0~4095,总共4096级么?

0~4095,总共4096个数,4095个级

出105入79汤圆

发表于 2020-7-2 11:52:51 | 显示全部楼层
应该是4096. 从数据结构出发

出0入0汤圆

发表于 2020-7-2 15:37:05 来自手机 | 显示全部楼层
简化一下,如果这个ADC只有1位,那么当转换结果为1时,是除以1好呢还是除以2好呢

出0入0汤圆

发表于 2020-7-2 17:21:54 来自手机 | 显示全部楼层
楼上正确

出0入0汤圆

发表于 2020-7-2 18:53:40 | 显示全部楼层
理论上是4096

出5入0汤圆

发表于 2020-7-2 20:21:31 | 显示全部楼层
用二进制 方式来看:
MIN:0000,0000,0000,
MAX:1111,1111,1111

出0入0汤圆

发表于 2020-7-2 23:18:32 | 显示全部楼层
           4096

出0入0汤圆

发表于 2020-7-3 10:40:54 | 显示全部楼层
miaoguoqiang 发表于 2015-5-1 10:48
AD最大4095  如果除以4096  得到的最高电压为3.299v

算数肯定按4096算啊!!!4095是包括了0这个数的

出0入0汤圆

发表于 2020-7-3 11:48:23 | 显示全部楼层
一直都是 右移12位了事  速度优先  

出0入0汤圆

发表于 2020-7-3 11:49:04 | 显示全部楼层
其它为了计算方便和提高计算的速度,还是用4096吧,效率高很多的。那一位影响也不会很大的。

出0入0汤圆

发表于 2020-7-6 10:54:35 | 显示全部楼层
一直除4096,把3.3分4096份

出0入0汤圆

发表于 2020-7-8 14:24:20 | 显示全部楼层
一直除以4096

出0入0汤圆

发表于 2020-7-8 16:26:40 | 显示全部楼层
应该除以4095。

出0入0汤圆

发表于 2020-7-8 17:41:24 | 显示全部楼层
adcValue = 3.3*AD/4095

AD最大取值是4095,所以标准是除以4095
但是为了速度我都是除以2的n次方

出20入30汤圆

发表于 2020-7-8 19:32:44 来自手机 | 显示全部楼层
继续接力,个人认为应该是教科书式答案,把3.3V分成4096份,应该是除以4096。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-24 15:20

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表