打印
[MM32软件]

MM32F031F6 TIM2_PWM 對應PA0 PA1 PA2 PA3 輸出PWM信號

[复制链接]
5169|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

#include "delay.h"
#include "sys.h"
#include "uart.h"
#include "pwm.h"
#include "LED.h"
//
void tiM2_PWM_Init(u16 arr,u16 psc)
{  
   
   RCC->APB1ENR|=RCC_APB1ENR_TIM2EN;   
   RCC->AHBENR|=0x7<<17;  
   
   GPIOA->AFRL&=0x0000;   
    GPIOA->AFRL=0x2222;
   GPIOA->CRL&=0XFFFF0000;
   GPIOA->CRL|=GPIO_CRL_MODE3|GPIO_CRL_CNF3_1;
   GPIOA->CRL|=GPIO_CRL_MODE2|GPIO_CRL_CNF2_1;
   GPIOA->CRL|=GPIO_CRL_MODE1|GPIO_CRL_CNF1_1;
   GPIOA->CRL|=GPIO_CRL_MODE0|GPIO_CRL_CNF0_1;
    TIM2->ARR=arr;
   TIM2->PSC=psc;
   
   
   TIM2->CCMR1=0X7878;
   TIM2->CCMR2=0X7878;
   TIM2->CCER|=TIM_CCER_CC1E|TIM_CCER_CC2E|TIM_CCER_CC3E|TIM_CCER_CC4E;      
   TIM2->CR1=TIM_CR1_ARPE;     
   TIM2->CR1|=TIM_CR1_CEN;         
   
}
int main(void)
{
    u8 dir=1;   
    u16led0pwmval=0;   
   
   delay_init();   
   //uart_initwBaudRate(115200);
    //LED_Init();
      RCC->CR|=0x00000003;
      RCC->CFGR&=0xFFFFFFF0;   
   TIM2_PWM_Init(99,0);
   TIM2->CCR1=10;
   TIM2->CCR2=30;
   TIM2->CCR3=60;
   TIM2->CCR4=90;  
   while(1)                                                        
    {
        
   delay_ms(5);     
      TIM2->CCR1++;
    IF( TIM2->CCR1>=TIM2->ARR)
        {TIM2->CCR1=0x01;}
        
      TIM2->CCR2++;
    if( TIM2->CCR2>=TIM2->ARR)
        {TIM2->CCR2=0x01;}      
      TIM2->CCR3++;
    if( TIM2->CCR3>=TIM2->ARR)
        {TIM2->CCR3=0x01;}
      TIM2->CCR4++;
    if( TIM2->CCR4>=TIM2->ARR)
        {TIM2->CCR4=0x01;}  
            
    }   
}




使用特权

评论回复
沙发
迟到的火车| | 2021-7-9 21:06 | 只看该作者
你的板是自己做的吗?我用MM32F031F6p6R换到stm32f030F4P6的板子上,用官网的工程,LED灯都点不亮,不知道什么原因,你用的是官网的工程吗?Boards_MM32F031xx_q\MBF031C6T_q_lib\EXTI\EXTI_KEY 我用的官网这个工程

使用特权

评论回复
板凳
sadicy| | 2021-7-16 15:36 | 只看该作者
这是最小系统的最小系统~

使用特权

评论回复
地板
里面有晴雨| | 2021-7-17 08:55 | 只看该作者
这个是不是最小系统板,很棒的。

使用特权

评论回复
5
skyred| | 2021-8-10 16:40 | 只看该作者
为啥,你输入法是繁体的么

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

139

主题

827

帖子

0

粉丝