wxy2023 发表于 2024-8-14 14:02:57

8h8k64u采集摇杆数据时回中时数据跳动

本帖最后由 wxy2023 于 2024-8-14 14:09 编辑

请教一下,用adc dma采集数据时,摇杆回中不动时,数据大部分时间为一个值,偶尔会变成另一个值,请问这个问题应该怎么处理一下呢?如下图
这是采集了四个通道,也就是两个摇杆,一般为0,有时候会变成800多

wxy2023 发表于 2024-8-14 14:05:38

这不会是摇杆的问题吧?

DebugLab 发表于 2024-8-14 14:07:16

ADC漂移一个字很正常

DebugLab 发表于 2024-8-14 14:10:11

ADC加100nF滤波电容,DMA累加求平均,再用算法处理一下,比如和上一次发送/参与计算的值在4个字以内就算噪声,大于等于4个字再发送/参与计算

DebugLab 发表于 2024-8-14 14:13:32

0变800多可能是摇杆的电位器接触不良

wxy2023 发表于 2024-8-14 14:15:03

版主,adc精度不是12位吗,能读到四个字吗?你说的多采集几次那个可以试一下

wxy2023 发表于 2024-8-14 14:15:24

DebugLab 发表于 2024-8-14 14:10
ADC加100nF滤波电容,DMA累加求平均,再用算法处理一下,比如和上一次发送/参与计算的值在4个字以内就算噪 ...

这个思路不错

wxy2023 发表于 2024-8-14 14:20:15

本帖最后由 wxy2023 于 2024-8-14 15:47 编辑

DebugLab 发表于 2024-8-14 14:13
0变800多可能是摇杆的电位器接触不良

我换了同样芯片和摇杆的另一块板子再试了一下,不会0变800了。但是测试发数据给上位机控制物体移动时,那个物体还是会有漂移,就是摇杆没动它自己会往左右走

wxy2023 发表于 2024-8-15 16:47:31

已经解决了,0变800多是采集了12位,减去了2048后剩的数,确实是有漂移,相当于那部分是死区就不会漂移了。
页: [1]
查看完整版本: 8h8k64u采集摇杆数据时回中时数据跳动