找回密码
 立即注册
查看: 1244|回复: 8

有关ADC读取很诡异的事

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:434
  • 最近打卡:2025-05-01 20:16:58
已绑定手机

229

主题

328

回帖

1471

积分

金牌会员

积分
1471
发表于 2023-3-24 11:10:50 | 显示全部楼层 |阅读模式
UW6847U(6A_CPX]~)UJ[JB7.png

在ADC中断中先清除ADC中断标志位并关闭ADC时读取的ADC值为0;

40Q[~LA$$F{SDMO{9E2F_{U.png


如果是先读取ADC值在关闭ADC就正常,请问关闭ADC后ADC的转换值是不是不能读取了?
ADC我是1分钟转换一次
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:54
  • 最近打卡:2025-05-01 09:07:55

717

主题

1万

回帖

1万

积分

管理员

积分
15613
发表于 2023-3-24 11:16:38 | 显示全部楼层
读走,再关ADC的电源,或者用DMA来支持ADC
===以后先将具体MCU型号
  • 打卡等级:以坛为家II
  • 打卡总天数:434
  • 最近打卡:2025-05-01 20:16:58
已绑定手机

229

主题

328

回帖

1471

积分

金牌会员

积分
1471
发表于 2023-3-24 11:42:53 | 显示全部楼层
神*** 发表于 2023-3-24 11:16
读走,再关ADC的电源,或者用DMA来支持ADC
===以后先将具体MCU型号

stc8h8k64u
  • 打卡等级:偶尔看看III
  • 打卡总天数:38
  • 最近打卡:2025-04-30 14:38:57

25

主题

977

回帖

3599

积分

超级版主

积分
3599
发表于 2023-3-24 13:28:52 | 显示全部楼层
如果要关闭ADC电源,必须先读取ADC转换结果
否则,一旦关闭ADC电源后,ADC转换结果寄存器的值就会被复位为0
  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2023-3-24 14:19:58 | 显示全部楼层
楼主的现象正常的,因为你关闭了ADC电源了。一旦关闭ADC电源,ADC模块失电,读到0是正常的。
楼主应该先读取值,之后关闭。

还要记住,每次打开ADC电源,要等待至少1ms之后再启动ADC转换,否则你又会碰到很诡异的事。
这世间所有的ADC,不管是单独的ADC芯片还是MCU自带的ADC外设,开启之后都要延时一定时间(依据IC不用需要1ms~几百ms不等),才能转换的,ADC是典型的模拟电路,也需要供电,允许给ADC模拟电路供电的电源供电后,还是要加点等待时间,等专门给ADC供电的电源稳定下来,再操作ADC。
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:513
  • 最近打卡:2025-05-01 04:31:49

24

主题

515

回帖

986

积分

荣誉版主

积分
986
发表于 2023-3-24 15:13:41 | 显示全部楼层
如果一直开着ADC电源,对AD转换有影响吗?

点评

没影响,相反如果关闭ADC电源的话,下次打开后需要等待1ms才能进行ADC转换。  详情 回复 发表于 2023-3-24 15:33
  • 打卡等级:常住居民III
  • 打卡总天数:142
  • 最近打卡:2025-04-27 09:42:20

11

主题

157

回帖

1780

积分

版主

积分
1780
发表于 2023-3-24 15:33:42 | 显示全部楼层
社区*** 发表于 2023-3-24 15:13
如果一直开着ADC电源,对AD转换有影响吗?

没影响,相反如果关闭ADC电源的话,下次打开后需要等待1ms才能进行ADC转换。
  • 打卡等级:偶尔看看III
  • 打卡总天数:31
  • 最近打卡:2025-03-31 16:46:26

2

主题

19

回帖

220

积分

中级会员

积分
220
发表于 2024-5-7 22:59:35 | 显示全部楼层
我读ADC_CH2和ADC_CH3(DMA、中断,查询都试了),只能读到ADC_CH3,如果我把电源够到ADC_CH3能采集到,但是ADC_CH2会跟着变化,电源够到ADC_CH2,两个通道都没有变化

点评

你可以先测试下官方的多通道ADC程序,串口返回结果。  详情 回复 发表于 2024-5-9 10:07
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2024-5-9 10:07:56 | 显示全部楼层
独风*** 发表于 2024-5-7 22:59
我读ADC_CH2和ADC_CH3(DMA、中断,查询都试了),只能读到ADC_CH3,如果我把电源够到ADC_CH3能采集到,但是AD ...

你可以先测试下官方的多通道ADC程序,串口返回结果。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 06:24 , Processed in 0.224444 second(s), 112 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表