jcky001 发表于 2025-2-17 16:25

atmega128AD的问题

为什么单独采用AD时候AD口(AD0)的电压时正确的,当我加上其他程序后AD口(AD0)的电压值就变了,不知道为什么

weifeng90 发表于 2025-2-17 18:54

说明你的代码设计上影响ADC的工作了

xinxianshi 发表于 2025-2-22 21:19

其他的影响了ad,比如供电,比如采样时间

雨果喝水 发表于 2025-2-23 03:09

其他程序运行时,可能会引入电源噪声或干扰如 PWM、电机驱动、通信模块等,影响 ADC 的测量精度。

雨果喝水 发表于 2025-2-23 04:28

使用独立的电源或 LDO 为模拟部分供电,减少数字部分的干扰。

wahahaheihei 发表于 2025-2-26 19:32

嗯,这个方法不错,不过单片机的ADC好像参考电压是VCC和GND 啊,单片机的供电。

jiekou001 发表于 2025-2-28 11:16

你如何切换的,要给每一路足够的采样时间。

gejigeji521 发表于 2025-2-28 14:56

不正确的误差有多大?

nuan11nuan 发表于 2025-3-6 16:19

当 ATmega128 的 ADC(AD0)在单独测试时电压值正确,但加入其他程序后电压值发生变化,可能是电源噪声干扰导致的,其他程序运行时,可能导致电源噪声增加,影响 ADC 的测量精度

清芯芯清 发表于 2025-3-6 17:25

在 AVCC 和 AREF 引脚附近添加滤波电容(如 0.1µF 陶瓷电容和 10µF 电解电容)。

suiziq 发表于 2025-3-6 18:30

如果可能,使用独立的模拟电源(AVCC)和数字电源(VCC),并通过磁珠或电感隔离

miltk 发表于 2025-3-6 19:37

减少其他外设的功耗,降低电源噪声。

teaccch 发表于 2025-3-6 21:19

数字电路和模拟电路共用地线时,数字电路的开关噪声可能通过地线影响 ADC

wamed 发表于 2025-3-6 22:13

一般建议将模拟地和数字地在靠近电源处单点连接

星星点点didi 发表于 2025-3-7 09:00

优化 PCB 布局,确保模拟部分和数字部分的地线分离,减少交叉干扰

tiakon 发表于 2025-3-7 10:20

如果使用外部参考电压(AREF),其他程序运行时可能导致参考电压波动。果精度要求不高,使用 ATmega128 的内部参考电压(如 2.56V)

nqty 发表于 2025-3-7 13:06

使用低噪声、高精度的参考电压源,并在 AREF 引脚添加滤波电容

yuliangren 发表于 2025-3-7 15:38

其他程序可能修改了 ADC 的配置寄存器,导致 ADC 工作异常。建议检查 ADC 配置:确保在每次 ADC 读取前正确配置 ADC 寄存器(如 ADMUX、ADCSRA)。锁定 ADC 配置:在关键代码段中禁用中断,防止其他程序修改 ADC 配置。

纠结的那些年 发表于 2025-3-24 19:10

程序中的其他部分可能不小心修改了 ADC 引脚的配置或状态。

kzlzqi 发表于 2025-4-25 18:00

结合 dmesg、lsusb、mdio-tool 以及 Wireshark 来排查问题。
页: [1]
查看完整版本: atmega128AD的问题