pbdata.h文件中的程序#ifndef _PBDATA_H//宏定义,定义文件名称
#define _PBDATA_H
#include "stm8s.h"//引入STM8的头文件
#include "led.h" //引用LED头文件
#include "tim1_pwm.h" //引用定时器头文件
void delay_us(u16 nCount); //微秒延时程序
void delay_ms(u16 nCount); //毫秒延时程序
#endif //定义文件名称结束
tim1-pwm.c文件中的程序#include "pbdata.h"
/***************************************************************************
* 函 数 名: Tim1_PWM_Init
* 功能说明: 初始化高级定时器1
* 形 参:无
* 返 回 值: 无
***************************************************************************/
void Tim1_PWM_Init(void)
{
TIM1_TimeBaseInit(15,TIM1_COUNTERMODE_UP,2000,0);//初始化定时器1
TIM1_ARRPreloadConfig(ENABLE);//使能自动重装 TIM1_OC1Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_ENABLE,1000,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_LOW,TIM1_OCIDLESTATE_SET,TIM1_OCNIDLESTATE_SET);
TIM1_Cmd(ENABLE);//开定时器
TIM1_CtrlPWMOutputs(ENABLE);//使能PWM主输出
}
void Tim1_PWM_Demo1(void)
{
u8 i=0;
for(i=1;i<20;i++)
{
TIM1_SetCompare1(i*100);//设置占空比
delay_ms(1000);
}
}
|