[STM8] PWM没有输出,求大神指教

[复制链接]
3273|13
 楼主| Keyer_Bao 发表于 2016-1-26 13:23 | 显示全部楼层 |阅读模式
PWM, TI, ni, BLE, pi
小弟由于项目开始用STM8L来做,要输出PWM在控制灯,但是怎么都调不出来,下面是我初始化程序
void TIM_Init(void)
{
                TIM2_DeInit();
    USART_DeInit(USART1);
                CLK_PeripheralClockConfig(CLK_Peripheral_TIM2, ENABLE);                  //允许TIM3外部时钟
                GPIO_Init(GPIOC,GPIO_Pin_6,GPIO_Mode_Out_PP_Low_Fast);
               
    TIM2_TimeBaseInit(TIM2_Prescaler_16,TIM2_CounterMode_Up, 999);
    TIM2_OC1Init(TIM2_OCMode_PWM2, TIM2_OutputState_Enable,500, TIM2_OCPolarity_High,TIM2_OCIdleState_Reset);
    TIM2_OC1PreloadConfig(ENABLE);
                TIM2_Cmd(ENABLE);
                TIM2_CtrlPWMOutputs(ENABLE);
}

用示波器打,就没有波形出来,然后我把初始化全部换成TIM3_CH1,就能输出波形,换回TIM2就不行,不知道什么原因,
希望大神们能抽空帮忙看看,谢谢!
JY-DX-JY 发表于 2016-1-26 14:20 | 显示全部楼层
PWM腿换了没有?
 楼主| Keyer_Bao 发表于 2016-1-26 14:30 | 显示全部楼层

我有点不懂,就是PB0和PC5都是TIM2_CH1,PB2和PC6都是TIM2_CH2,这个引脚该怎么配?我接在PC6上面在
JY-DX-JY 发表于 2016-1-26 14:32 | 显示全部楼层
不知道,我没搞过STM8.你看手册,这个肯定需要配置。
Snow7 发表于 2016-1-26 15:13 | 显示全部楼层
选择的PWM管脚是否和相应的寄存器对应了
 楼主| Keyer_Bao 发表于 2016-1-26 15:50 | 显示全部楼层
Snow7 发表于 2016-1-26 15:13
选择的PWM管脚是否和相应的寄存器对应了

大哥 你好,我现在的问题就是不知道在哪设置对应脚,
拉克丝 发表于 2016-1-26 16:04 | 显示全部楼层
去datasheet下载芯片手册看看先
迪卡 发表于 2016-1-26 16:37 | 显示全部楼层
PWM可能是定时器的第二功能,看看定时器配置,或者应该有PWM模块介绍的
xmshao 发表于 2016-1-26 16:59 | 显示全部楼层
你都没说完整型号。
你要注意有些管脚是需要重映射的。
 楼主| Keyer_Bao 发表于 2016-1-26 18:17 | 显示全部楼层
已解决,谢谢大家,还是数据手册没有看全,只要配置SYSCFG_RMPCR1、SYSCFG_RMPCR2、SYSCFG_RMPCR3这几个寄存器就行了 ,我去!
FireRiver9 发表于 2016-1-27 19:50 | 显示全部楼层
一切以数据手册为准
关于SYSCFG_RMPCR1、SYSCFG_RMPCR2、SYSCFG_RMPCR3,手册上是怎么说的
DreamofOven 发表于 2016-1-29 10:33 | 显示全部楼层
先看看定时器能不能正常工作吧
lzyyoumuren 发表于 2016-1-29 15:51 | 显示全部楼层
还是配置的问题,现在一般的cpu都有PWM例程看看就知道了
行云_流水 发表于 2016-3-25 11:39 | 显示全部楼层
关键一点,你的选项字节设置了没有?有的型号要设置选项字节后才能实现PWM功能输出,否则是普通IO,比如STM8S003
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部