你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

st-img
chrome
st-img
firefox
st-img
safari
st-img
ie8及以上
shequ.stmicroelectronics.cn
  • ST意法半导体官网
  • STM32中文官网
  • ST全球论坛
登录/注册
  • 首页
  • 技术问答
  • 话题
  • 资源
  • 创客秀
  • 视频
  • 标签
  • 积分商城
  • 每日签到
卡西利亚斯

卡西利亚斯

 

回答数 0 关注数 0
关注 私信
  • 动态99
  • 提问
  • 回答0
  • 创客秀 0
  • 分享 0
  • 关注0
3 回答

想用STM32F103或407在不影响主程序进程的情况下(即不太压榨中断资源情况) 实现下列描述的PWM波形,

STM32F1 STM32F4
xmshao xmshao 最优答案 回答时间: 2024-10-12 11:22

应该说可以实现的方案比较多,这里给两个参考方案。相对而言,下面方案外设资源需求少,占用CPU也少,使用常规TIMER即可。 参考方案1: 我们可以将波形分成6段,其中3个段带脉冲输出,另外3段输出低电平。利用STM32片内高级定时器,使用RCR寄存器和PWM单脉冲模式,在 更新中断里修改下一段的时基参数及PWM输出格式。这里只需每输出一大段才需要中断一次,无须时刻中断而耗用CPU资源。 参考方案2: 将整个1轮的输出波形等分成N小段,每小段对应的电平或高或低,根据基于PWM方式结合DMA,逐段输出相应的高或低电平。此时任意STM32片内通用或高级 定时器都可以实现。此方案除非调整参数外,一般无须为之启用中断。

赞0
卡西利亚斯 卡西利亚斯


阅读作者更多的帖子

所在话题

参与活动

  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16