初级会员

- 积分
- 180
- 金钱
- 180
- 注册时间
- 2014-10-14
- 在线时间
- 22 小时
|
5金钱
我用的是mini32开发板,不完全手册上是用TIM1的CH1输出PWM波的,我不知道能不能用TIM8的CH4来输出PWM,后来试了下,部分代码如下:
/PWM初始化
void TIM8_PWM_Init(u16 arr, u16 psc)
{
RCC->APB2ENR |= 1<<13; // TIM8时钟使能
GPIOC->CRH &= 0xffffff0f; //清除PC9位
GPIOC->CRH |= 0x000000B0; //PC9作复用输出
TIM8->ARR |= arr; //重装载值
TIM8-> SC |= psc; //预分频值
TIM8->CCMR2 |= 7<<12; //通道4,PWM模式为2
TIM8->CCMR2 |= 1<<11; //通道4,预装载使能
TIM8->CCER |= 1<<12; //OC4输出使能,确保PWM从IO输出
TIM8->BDTR |= 1<<15; //高级定时器PWM正常输出
TIM8->CR1 = 0x0080; //自动重装载预装载,可不配置
TIM8->CR1 |= 0x01; //使能定时器8
}
然后把PC9和PA8连起来后,但是灯LED0并不能亮,不知道是不是我的理解有误(是不是还要配置其它什么,我也尝试过一些配置PA8引脚的状态),麻烦大家帮我下了,新手感谢。
还有我发现如果LED1灯亮了,把PD2与PA8连接,LED1是会灭的(我臆想的是LED0与LED1同时亮),这又是啥原理呢?
囧!!!
|
|