OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7926|回复: 8

请教下ADC如何关闭后再二次初始化

[复制链接]

4

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-7-8
在线时间
4 小时
发表于 2022-12-12 15:58:55 | 显示全部楼层 |阅读模式
2金钱
因为设计需要,cubemx 的ADC1上配置了2个通道,但是不是同时使用,是分开使用的。初始化1通道后,使用完毕就不再使用。需要初始化2通道。请问下如何取消初始化并二次初始化?

我的思路是,HAL_ADC_MspInit里两个引脚都带上,然后写两个MX_ADC1_Init,需要用哪个通道就调用对应的MX_ADC1_Init就行了。只是不知道第二次直接用MX_ADC1_Init可不可以,是否需要关闭上一个的初始化,如果管得话,又怎么关?

不知道对不对,请教各位大佬

最佳答案

查看完整内容[请看2#楼]

那你通道1完事以后就反初始化一下就行了,然后在初始化通道2。速度不够的话建议上外部独立AD芯片吧。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3329
金钱
3329
注册时间
2011-11-10
在线时间
207 小时
发表于 2022-12-12 15:58:56 | 显示全部楼层
elegyC 发表于 2022-12-13 16:19
功能设计上,需要先用通道1用完关闭再用通道2。所以想问应该怎么切?

那你通道1完事以后就反初始化一下就行了,然后在初始化通道2。速度不够的话建议上外部独立AD芯片吧。
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3329
金钱
3329
注册时间
2011-11-10
在线时间
207 小时
发表于 2022-12-12 18:48:55 | 显示全部楼层
不用这么麻烦。配置好2个通道轮流AD转换输出就行了。
回复

使用道具 举报

9

主题

218

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1364
金钱
1364
注册时间
2020-5-12
在线时间
381 小时
发表于 2022-12-13 08:33:35 | 显示全部楼层
一直刷新,不用不读不行吗?
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2676
金钱
2676
注册时间
2018-11-8
在线时间
431 小时
发表于 2022-12-13 08:43:17 | 显示全部楼层
为什么要二次初始化
看起来就是普通的手动控制单次转换 还需要调整什么参数呢? 如果个别参数需要调整就在开始转换前把个别参数的值改一下就行了
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-7-8
在线时间
4 小时
 楼主| 发表于 2022-12-13 16:18:06 | 显示全部楼层
babyrabbit 发表于 2022-12-13 08:43
为什么要二次初始化
看起来就是普通的手动控制单次转换 还需要调整什么参数呢? 如果个别参数需要调整就 ...

主要是想先用通道1读数 然后切换到通道2。如果2个通道一起用,时间上很难满足,定时器采样是100us ,两个通道的转换时间也是用的几十微妙。最好的办法就是用完1通道 把1通道关了切换2通道
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-7-8
在线时间
4 小时
 楼主| 发表于 2022-12-13 16:19:14 | 显示全部楼层
叶子君 发表于 2022-12-13 08:33
一直刷新,不用不读不行吗?

功能设计上,需要先用通道1用完关闭再用通道2。所以想问应该怎么切?
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-7-8
在线时间
4 小时
 楼主| 发表于 2022-12-13 16:19:40 | 显示全部楼层
c2007s 发表于 2022-12-12 18:48
不用这么麻烦。配置好2个通道轮流AD转换输出就行了。

功能设计上,需要先用通道1用完关闭再用通道2。所以想问应该怎么切?
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2676
金钱
2676
注册时间
2018-11-8
在线时间
431 小时
发表于 2022-12-13 17:39:25 | 显示全部楼层
elegyC 发表于 2022-12-13 16:18
主要是想先用通道1读数 然后切换到通道2。如果2个通道一起用,时间上很难满足,定时器采样是100us ,两个 ...

两个通道为什么不能一起用 如果非要分开 每次只要改SQR寄存器里 第1组转换的通道编号不就行了 这个就进行了一次赋值 也不会占用多久的时间 其他的地方都不用动啊
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 19:55

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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