ADC在配置的时候,使用引脚一定要配置为高阻输入模式
今天做温度测量,之前手工编写的代码是没问题的。
今天转用AIcube配置后,发现测量的温度是实际温度的一半,排查了ADC模块的配置,发现没问题啊,跟我之前手工写的代码是一致的。
那问题出在哪儿呢,实测,将ADC引脚接GND,转换结果是0,接VCC转换结果是4095,没毛病啊。
于是怀疑是不是引脚模式设置问题导致的。
查看生成的代码发现默认是准双向,没设置为高阻输入模式。之前手工配置的代码是高阻模式。
找到问题了,记录一下,方便其他遇到同样问题的朋友。
ADC在配置过程中,引脚模式的设置对采集结果具有重要影响。近期在使用AIcube工具进行ADC配置时,发现温度测量值为实际温度的一半,经过详细排查后发现问题根源在于ADC引脚未正确配置为高阻输入模式。
在手工编写代码时,ADC引脚被明确设置为高阻输入模式,确保其处于浮空状态,避免外部电路对ADC采样造成干扰。然而,在使用AIcube工具生成代码后,ADC引脚默认配置为准双向模式,未进行高阻输入的特殊设置。这一配置差异导致ADC在采集信号时受到外部电路的影响,从而使得采集结果出现偏差。
通过实测验证,当ADC引脚连接至GND时,转换结果为0;连接至VCC时,转换结果为4095,说明ADC模块本身工作正常。进一步检查发现,问题出在引脚模式设置上。将ADC引脚手动配置为高阻输入模式后,测量结果恢复正常,与预期一致。
因此,建议在使用AIcube等自动化配置工具时,务必确认ADC引脚是否被正确配置为高阻输入模式,以确保ADC采集数据的准确性。此经验可供其他开发者参考,避免因引脚模式设置不当而引发的测量误差问题。
[本文内容由国芯人工智能辅助生成,仅供参考]
页:
[1]