原创 STM8(用库)实例赏析---TMI1

2013-10-12 10:43 2652 7 7 分类: MCU/ 嵌入式

//0.5秒定时,LED闪烁

#include "stm8S.h"

void main(void)
{
 //系统时钟切换配置(自动切换,外部高速时钟,关切换中断
 //,切换新时钟后关旧时钟)
 CLK_ClockSwitchConfig ( CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSE, DISABLE, CLK_CURRENTCLOCKSTATE_DISABLE );

  //PG1设置为高速推挽输出高电平
 GPIO_Init(GPIOG,GPIO_PIN_1, GPIO_MODE_OUT_PP_HIGH_FAST);

 //恢复TIM1值
 TIM1_DeInit();
 
 //TMI1初始化(预分频值,向上计数,自动装载值,重复计数值)
 TIM1_TimeBaseInit( 1599, TIM1_COUNTERMODE_UP, 5000, 0 );
 
 //中断配置
 TIM1_ITConfig(TIM1_IT_UPDATE, ENABLE);
 
 //启用定时器(更新中断,启用)
 TIM1_Cmd(ENABLE);
 
 //开中断
  enableInterrupts();

 while(1) { }  // main loop
}

// 中断时间 0.5 Sec
@far @interrupt void TIM1_interrupt(void)
{
  //清除指定标志位(更新标志)
  TIM1_ClearFlag(TIM1_FLAG_UPDATE);
 //端口电平取反(端口,引脚)
 GPIO_WriteReverse(GPIOG, GPIO_PIN_1);
} 

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条