⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
2个帖子/ 0新
最后一篇
Vrabo.
离线
最后一次露面:2年11个月前
加入:2016-11-04 19:19
ADC值

你好!

我正在使用adc_init(gp_adc_se,0,0);我想知道ADC的价值观是什么。当我有1.2V我读0x106时。我理解1023(0x03FF)是最大值。我在这里做错了吗?

谢谢

(编辑)我正在使用带有274k和100k电阻的电压除数,以便当电池为4.5V时,该值将在P00处为1.2V。目前的影响是以某种方式影响吗?

设备:
sts_dialog(未经验证)
嗨vrado,

嗨vrado,

请在软件开发套件中查看UM-B-051(第70页)从“软件开发套件”部分中,有关与ADC相关的值的说明。在ADC_INIT()函数中,第三个值(ATTN)是指内部ADC衰减器。ADC不使用衰减器可以测量0-1.2V范围内的电压。当衰减器启用时,ADC可以测量1.2-3.6V的范围。在未使用衰减器的情况下,ADC的内部阻抗被认为是无限的。在这种情况下泄漏为〜12na.当启用衰减时,当衰减启用时,在内部连接两个电阻,一个200k和一100k为GND创建了总电阻300k的路径,您需要在计算中包括泄漏的计算电压除数。您的外部电压除数将导致额外的电流泄漏。您需要考虑到设计的功耗预算。关于将ADC读取的值的转换转换为实际毫伏,公式是:

如果启用ADC内部衰减器:VALUE =(ADC_READ * 3.6)/ 1024

如果禁用ADC内部衰减器:VALUE =(ADC_READ * 1.2)/ 1024

“价值”是伏特。

由于您需要测量高达4.5V,因此在ADC范围内,您需要使用外部电压除数。除外使用的问题是额外的功耗,如果是非常高的电阻器ADC端口中提供的可能噪声。较小的电阻将有助于为ADC提供更好的SNR,但功耗更高。可能的解决方案可以是在GND和电阻之间使用FET,并通过580通过GPIO控制其栅极。因此,当您需要测量电池电压时,您将通过FET使除法机能够通过FET和所有其余的您可以禁用它以节省权力的时间。

谢谢,

sts_dialog。