本帖最后由 LIGONG004 于 2019-5-14 09:03 编辑
#include "stm32f10x.h"
int main(void)
{
TIM3->CCR1=600; //占空比= 30%
RCC->APB1ENR |= 1 << 1; //使能TIM3时钟
RCC->APB2ENR|=1<<2; //使能PORTA时钟
GPIOA->CRL &= 0XF0FFFFFF; //PA6推挽复用输出
GPIOA->CRL |= 0X0B000000; //50MHz
GPIOA->ODR |= 1 << 6; //PA6上拉
TIM3->ARR = 1894; //设定计数器重装值(PWM频率) 38KHz
TIM3->PSC = 0; //预分频器 0=不分频
TIM3->CCMR1 |= 7 << 4; //CH1 PWM2模式
TIM3->CCMR1 |= 1 << 3; //CH1预装载使能
TIM3->CCER |= 1 << 0; //捕获1输出使能
TIM3->CR1 = 0X0080; //ARPE设定
TIM3->CR1 |= 0X01; //TIM3使能
for(;;) ;
}
我的PWM程序, 用TIM3 的第01路输出, PA6脚,
搞了两天, PA6脚没看到波形,
PA6脚就是高电平,没有方波,
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
RCC->APB1ENR |= 1 << 1; //使能TIM3时钟
还没使能时钟就写CCR1, 能用才奇怪呢
一周热门 更多>