你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32H743ADC数据转换输出值缺失问题

[复制链接]
fyuocukstM 提问时间:2023-7-12 09:36 / 已解决

H743用三个ADC转换器,每个转换器转换4个通道,总共12个通道,数据ADC转换是通过tim3来驱动(5000HZ),数通过网络上传到电脑图形显示12条曲线,慢慢旋转传感器发现再32768附近有突变,现象就像这一区域的模拟数据值无法转换成ADC值(32585-32767),这样的区域在真个ADC转换范围并不唯一,而且同一个芯片,三个ADC有的缺失,而有的没有,zhi要通道在一个ADC上的缺失范围是一样的,可以肯定缺失就是由ADC转换时引起的,后我将12个探头用同样的板子测试,发现不同的板子上每个ADC缺失范围是不定的,有的正常,有的缺失ADC转换值,每个H743不一样,我用电位器分压,但是电阻输出信号噪声大,无法出现这种现象,不知道谁在使用过程中遇到过这种问题吗?

image.png

收藏 评论5 发布时间:2023-7-12 09:36

举报

5个回答
butterflyspring 最优答案 回答时间:2023-7-13 16:58:13
ADC 运行之前应做一下校准,包括 OFFSET_LINEARITY 。
xmshao 回答时间:2023-7-12 12:01:42
你说32768附近有突变,如果你现在使用16位ADC的话,意味着一半电压附近有突变。


你可以测试下传感器此时的输出到到底是多少,即看看这个输出情况怎么样。


另外,你说的ADC结果缺失又是怎么回事呢?还是指这个32768附件吗?同时你又说这


个缺失范围是不定的。


建议先用1个模块的一个通道,看看能否全量程正确转换。即先确定硬件方面
的原因,然后再考虑软件相关方面的原因。
fyuocukstM 回答时间:2023-7-14 10:00:53

butterflyspring 发表于 2023-7-13 16:58
ADC 运行之前应做一下校准,包括 OFFSET_LINEARITY 。

非常感谢就是这样,HAL_ADCEx_Calibration_Start(&hadc1,ADC_CALIB_OFFSET_LINEARITY,ADC_SINGLE_ENDED

fyuocukstM 回答时间:2024-1-12 15:39:08

xmshao 发表于 2023-7-12 12:01
你说32768附近有突变,如果你现在使用16位ADC的话,意味着一半电压附近有突变。</p>
<p>

0-3.3V因该对应0-65535,但实际有一部分无法转换,最后结果0-0x3FFF,0x4182-0xFFFF。0x3FFF-0X4182是没有输出的,而且有的ADC不止这一个区域无法转换,每个无法转换的区域大小也不相同

fyuocukstM 回答时间:2024-1-12 15:40:47

butterflyspring 发表于 2023-7-13 16:58
ADC 运行之前应做一下校准,包括 OFFSET_LINEARITY 。

原来做校准了,好像小时了,后来这几批片子,同样的代码,还是会出现这种问题

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版