你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
STM32 ADC 与 PWM 通道 触发采样
[复制链接]
Great-397279
提问时间:2019-7-19 10:16 /
问答
是否解决:
大家好, STM32H7 系列中 由三个ADC, 每个ADC的转换可以由 PWM Timer 触发转换。我的问题是,如果有六个独立的PWM 通道都需要 测量ADC,是不是单片的 STM32H7 不够用 (我的理解是,单个ADC只能设置一个 PWM timer 触发)? 只能用量片? 谢谢!
赞
0
收藏
0
评论
6
分享
发布时间:2019-7-19 10:16
举报
请先
登录
后回复
6个回答
疯de_恒
回答时间:2019-7-19 10:26:01
a0a.1 32b0c
那就轮流来咯。
赞
0
评论
回复
支持
反对
子曰好人
回答时间:2019-7-19 10:40:00
a0a.1 32b0c
ADC还有很多通道,一个ADC都能采很多路信号了,很多MCU只有一个ADC,做电机控制的时候不也跑得挺好嘛。我不知道你的应用场景是哪方面的,如果是做电机控制的话,采相电流最多就需要一个ADC的三个通道就够了
赞
0
评论
回复
支持
反对
wenyangzeng
回答时间:2019-7-19 10:44:06
a0a.1 32b0c
本帖最后由 wenyangzeng 于 2019-7-19 15:23 编辑
PWM触发ADC实际上是使用了TIMx_CCx的事件来触发ADC开始转换而已,而非楼主所述:
“6个独立的PWM通道都需要测量ADC”,
PWM无法测量ADC的。楼主如果有多个ADC通道需要触发,应该使用ADC扫描模式,实际上只需1路PWM触发信号就足够了。
赞
0
评论
回复
支持
反对
bl2019
回答时间:2019-7-19 12:00:47
a1024a.1 32b0c
轮训+DMA
赞
0
评论
回复
支持
反对
Great-397279
回答时间:2019-7-21 11:31:59
a0a.1 32b0c
谢谢大家回复
我的应用之中不是控制三相电机,而是控制六路的独立的PWM(他们可能同时都在以不同的占空比工作),因此是以六个Timer 作为六个PWM的独立 信号源。每个以PWM控制的负载电流都要在 PWM 输出过程中采样。 我原来的计划是,用每个PWM 高电平的中心点,触发 对应通道的ADC 采样。 目前是用三个ADC 管理六个AD转换通道,每个ADC管两个。但是 每个ADC 在指定触发条件时,只能指定一个Timer (即产生一路PWM 信号的时钟源)事件,另外一路Timer (产生另外一路PWM的时钟源)就没法作为触发源了。 5楼的朋友是建议我转换一轮之后,动态的更改每个ADC的触发时钟源吗?谢谢!
赞
0
评论
回复
支持
反对
scfor123456
回答时间:2019-9-5 09:29:40
a0a.1 32b0c
相当于6路定时器控制6路PWM,而且每路PWM的采样由定时器触发的6路ADC转换。
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
PWM触发ADC实际上是使用了TIMx_CCx的事件来触发ADC开始转换而已,而非楼主所述:
“6个独立的PWM通道都需要测量ADC”,
PWM无法测量ADC的。楼主如果有多个ADC通道需要触发,应该使用ADC扫描模式,实际上只需1路PWM触发信号就足够了。
我的应用之中不是控制三相电机,而是控制六路的独立的PWM(他们可能同时都在以不同的占空比工作),因此是以六个Timer 作为六个PWM的独立 信号源。每个以PWM控制的负载电流都要在 PWM 输出过程中采样。 我原来的计划是,用每个PWM 高电平的中心点,触发 对应通道的ADC 采样。 目前是用三个ADC 管理六个AD转换通道,每个ADC管两个。但是 每个ADC 在指定触发条件时,只能指定一个Timer (即产生一路PWM 信号的时钟源)事件,另外一路Timer (产生另外一路PWM的时钟源)就没法作为触发源了。 5楼的朋友是建议我转换一轮之后,动态的更改每个ADC的触发时钟源吗?谢谢!