STM8L 使用discovery板输出PWM到LED的问题 我想用PWM(PD2)输出模拟信号到LED(PE7),实现LED的逐渐变亮(暗), 可是不成功,各位高手给指出错误吧,谢谢 void main(void) { /* Initialize LEDs mounted on STM8L152X-EVAL board */ GPIO_Init(LED_GPIO_PORT, LED_GPIO_PINS, GPIO_Mode_Out_PP_Low_Fast); GPIO_Init(Button_GPIO_PORT, Button_GPIO_PINS, GPIO_Mode_In_FL_No_IT); // PD2 TIM1 CH1设置 /* GPIO configuration: TIM1 channel 1 (PD2)*/ GPIO_Init(GPIOD, GPIO_Pin_2 , GPIO_Mode_Out_PP_Low_Fast); /* Enable TIM1 clock */ CLK_PeripheralClockConfig(CLK_Peripheral_TIM1, ENABLE); //设置TIM1 CH1输出PWM波 /* configure TIM1 channel 1 as PWM Output */ TIM1_OC1Init(TIM1_OCMode_PWM2, TIM1_OutputState_Enable, TIM1_OutputNState_Enable, 0x7FF, TIM1_OCPolarity_Low, TIM1_OCNPolarity_High, TIM1_OCIdleState_Set, TIM1_OCNIdleState_Reset); /* Set TIM1 Autoreload value*/ TIM1_SetAutoreload(0xFFF); //2M/4095=488.4HZ // 使能 /* Enable TIM1 Outputs*/ TIM1_CtrlPWMOutputs(ENABLE); /* Enable TIM1 */ TIM1_Cmd(ENABLE); while (1) { } } |
从零开始操作STM8寄存器(风驰iCreate奉献)
【中文资料】初学STM8库函数的中文帮助软件
绝对经典的中文STM8学习手册,淘宝上学习板资料,友情大放送!
【原创教程】风驰iCreate独家开源STM8 27个例程和10多万字的pdf教程
STM8的LCD1602 4线驱动,为什么不工作
【精华资料】由零开始开发STM8
STM8S 的触摸库是如何在主程序中查询键的呢、
【精华资料】STM8的C语言编程1-14讲完整版
【精品教程】STM8系列单片机入门教程系列
STM8 第一次进中断不准【悬赏问答】
RE:STM8L 使用discovery板输出PWM到LED的问题
看我的一个STM8L的使用TIM3输出PWM的初始化
void Buzzer_Init(void)
{
/* Enable TIM3 CLK */
CLK_PeripheralClockConfig(CLK_Peripheral_TIM3, ENABLE); //允许TIM3外部时钟
GPIO_Init(Buzzer_PORT,Buzzer_PIN,GPIO_Mode_Out_PP_Low_Slow); //初始化蜂鸣器控制引脚
//使用TIM3定时器
TIM3_TimeBaseInit(TIM3_Prescaler_16,TIM3_CounterMode_Up,BUZZER_PERIOD);
//设置为16分频,向上计数模式,计数周期为1000
TIM3_OC1Init(TIM3_OCMode_PWM1,TIM3_OutputState_Enable, BUZZER_DUTY,TIM3_OCPolarity_High,TIM3_OCIdleState_Reset);
TIM3_OC1PreloadConfig(ENABLE); //输出比较1通道预加载使能
TIM3_CtrlPWMOutputs(ENABLE); //PWM输出使能
TIM3_Cmd(ENABLE);
} //使能
经实际测试初始化有效
新手,不懂额请指教