• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

基于stm32的PWM输出

0554d92212303fa2 2019-03-01 浏览量:849
在做STM32的PWM输出时,我参照例程,把原来的tiM1-CH1改成了TIM3-CH1,也就是PA.6端口,程序里面涉及到定时器的参数和函数名都改过了,可是在PA.6得不到PWM波,我是用PA.6端口驱动LED的,朱成西循环改变占空比值,LED却是一直常亮,而且亮度不增不减,求大神指教
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 程序贴出来看一下,看看是不是初始化时钟的总线写错了,tim1是RCC_APB2PeriphClockCmd,tim3是RCC_APB1PeriphClockCmd
    • 发布于 2019-03-07
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:13

  • 改pwm口不止改一个地方,你把程序贴出来看下
    • 发布于2019-03-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 你通道换了,对应的通道设置更改了吗。不能只改个管脚,改个计数值就行了。
    • 发布于2019-03-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 你换的是定时器而不是通道,所以改的地方有好几处
    • 发布于2019-03-01
    • 举报
    • 评论 0
    • 0
    • 0

  • PWM通道换了,对应的设置也要改。贴上程序,大家一起看看。
    • 发布于2019-03-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 建议你可以尝试使用Cubemx软件,

    我之前一直使用的标准库,每次调试驱动都要话很长的时间,看很多的手册。

    使用MX软件后,随便弄几下,软件就把工程的代码生成出来了,很方便。

    • 发布于2019-03-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 通道设置对的话,看看程序,调试仿真就能看到结果了
    • 发布于2019-03-01
    • 举报
    • 评论 0
    • 0
    • 0

  • 我估计是你的定时器没有配置好,PWM是属于单片机的片内外设,所以不使用中断因此基本上就是配置问题
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 应该是有些地方没有配置好,如果确定与定时器有关的都改好了,那看看你的管脚配置等。
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 还是配置的问题,如上的回答,建议使用cubemx,省时省力
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 定时器改了,IO口初始化改了吗?主函数初始化呢,调用修改pwm那个地方呢?
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 要看一下TIM1和TIM3的时钟来源是不是同一个
    • 发布于2019-03-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 没配置好把    我之前将野火的PWM自己改一下就好了
    • 发布于2019-03-05
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

基于stm32的PWM输出