嵌入式 > 技术百科 > 详情

STM8系列单片机定时器操作

发布时间:2023-11-21 发布时间:
|

1、void TIM1_DeInit(void) //复位TM1所有寄存器参数

2、使能TIM_1所用时钟 CLK_PeripheralClockConfig(CLK_Peripheral_TIM1, ENABLE)

3、设置定时器周期

函数void TIM1_TimeBaseInit(uint16_t TIM1_Prescaler,

TIM1_CounterMode_TypeDef TIM1_CounterMode,

uint16_t TIM1_Period,

uint8_t TIM1_RepetitionCounter)

第一个参数:定时器的预分频系数 相对于CPU时钟 Fck=Sysclk/(PSCR+1)

第二个参数:计数模式 TIM1_CounterMode_Down 减法计数 TIM1_CounterMode_Up 加法计数

第三个参数:定时周期,

第四个参数:重复计数的次数


1、使能中断 void TIM1_ITConfig(TIM1_IT_TypeDef TIM1_IT, FunctionalState NewState)

第一个参数:中断类型

@arg TIM1_IT_Update: Update(通用中断)

* @arg TIM1_IT_CC1: Capture Compare Channel1

* @arg TIM1_IT_CC2: Capture Compare Channel2

* @arg TIM1_IT_CC3: Capture Compare Channel3

* @arg TIM1_IT_CC4: Capture Compare Channel4

* @arg TIM1_IT_COM: Commutation

* @arg TIM1_IT_Trigger: Trigger

* @arg TIM1_IT_Break: Break

第二个参数:ENABLE or DISABLE

2、使能定时器void TIM1_Cmd(FunctionalState NewState)

ENABLE or DISABLE

中断入口函数: stm8l15x_it.c中

INTERRUPT_HANDLER(TIM1_UPD_OVF_TRG_COM_IRQHandler,23)
INTERRUPT_HANDLER(TIM1_UPD_OVF_TRG_BRK_IRQHandler, 11)
{

TIM1_ClearFlag(TIM1_FLAG_UPDATE);
}


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
光纤通道的实时数字图像存储