OpenEdv-开源电子网

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

STM32F103ZET精英板中PA0不能输出PWM

[复制链接]

4

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
158
金钱
158
注册时间
2019-5-27
在线时间
22 小时
发表于 2019-7-4 16:25:45 | 显示全部楼层 |阅读模式
1金钱

我用TIM5_CH1打算在PA0上输出PWM,如下TIM5_PWM_Init(u16 arr,u16 psc)是我参考例程TIM3_PWM_Init(u16 arr,u16 psc)编写的PWM初始化程序,TIM3可以输出PWM,但是我编写的TIM5输出脚我用示波器查看始终是高电平一条直线,没有PWM输出,我将完整的工程文件添加到附件中了,麻烦各位帮我看看是什么问题,谢谢!

//TIM3 PWM部分初始化
//PWM输出初始化
//arr:自动重装值
//psc:时钟预分频数
void TIM3_PWM_Init(u16 arr,u16 psc)
{                                                          
        //此部分需手动修改IO口设置
        RCC->APB1ENR|=1<<1;         //TIM3时钟使能
       
        RCC->APB2ENR|=1<<3;            //使能PORTB时钟

       
//        RCC->APB2ENR|=1<<6;            //使能PORTE时钟
//        GPIOE->CRL&=0XFF0FFFFF;        //PE5输出
//        GPIOE->CRL|=0X00B00000;        //复用功能输出

        GPIOB->CRL&=0XFF0FFFFF;        //PB5输出
        GPIOB->CRL|=0X00B00000;        //复用功能输出       
       

          
        RCC->APB2ENR|=1<<0;     //开启辅助时钟          
        AFIO->MAPR&=0XFFFFF3FF; //清除MAPR的[11:10]
        AFIO->MAPR|=1<<11;      //部分重映像,TIM3_CH2->PB5

        TIM3->ARR=arr;                        //设定计数器自动重装值
        TIM3->PSC=psc;                        //预分频器不分频
       
        TIM3->CCMR1|=7<<12;          //CH2 PWM2模式                 
        TIM3->CCMR1|=1<<11;         //CH2预装载使能          
        TIM3->CCER|=1<<4;           //OC2 输出使能          
        TIM3->CR1=0x0080;           //ARPE使能
        TIM3->CR1|=0x01;            //使能定时器3                        
}

/*******************设置TIM5_CH1 PWM输出******************************/
void TIM5_PWM_Init(u16 arr,u16 psc)
{
    RCC->APB1ENR|=1<<3;         //TIM5时钟使能
        RCC->APB2ENR|=1<<2;            //使能PORTA时钟       

        GPIOA->CRL&=0XFFFFFFF0;        //PA0输出,清除之前设置
        GPIOA->CRL|=0X0000000B;        //复用功能输出       
        RCC->APB2ENR|=1<<0;     //开启辅助时钟         
       
    TIM5->ARR=arr;                        //设定计数器自动重装值
        TIM5->PSC=psc;                        //预分频器不分频
       
//        TIM5->CCMR1&=~(3<<0);          //CC1通道被配置为输出;
        TIM5->CCMR1|=7<<4;          //CH1 PWM2模式                 
        TIM5->CCMR1|=1<<3;             //CH1预装载使能          
        TIM5->CCER|=1<<0;           //OC1 输出使能          
        TIM5->CR1=0x0080;           //ARPE使能
        TIM5->CR1|=0x01;            //使能定时器5        


}           


25 PWM输出实验.rar

654.77 KB, 下载次数: 16

源代码工程

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-11 07:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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