?? main.c
字號:
/* MAIN.C file
* Copyright (c) 軒微科技
本程序功能為讓軒微科技STM8S105S4開發(fā)板板載LED在定時器2的驅動下每一秒內(nèi)亮半秒滅半秒.
本程序使用ST官方庫進行操作.
軒微科技保留所有權利.
*/
#include "stm8s.h"
#include "stm8s_gpio.h"
#include "stm8s_beep.h"
#include "stm8s_tim2.h"
//10毫秒計數(shù)器
unsigned long _10ms=0;
//定時器2更新中斷服務程序
@far @interrupt void TIM2_UPD_IRQHandler (void)
{
ITStatus ins=RESET;
//采集中斷標志
ins=TIM2_GetITStatus(TIM2_IT_UPDATE);
_10ms++;
//清中斷標志
TIM2_ClearFlag(TIM2_IT_UPDATE);
//判定是否已過半秒且為更新中斷
if(ins==SET&&(_10ms%50==0))
{
//翻轉LED
GPIO_WriteReverse(GPIOD, GPIO_PIN_0|GPIO_PIN_2|GPIO_PIN_3);
}
}
main()
{
//反初始化GPIOD
GPIO_DeInit(GPIOD);
//實始化GPIOD,配置其第0,2,3位為推挽輸出,高電平.
GPIO_Init(GPIOD, GPIO_PIN_0|GPIO_PIN_2|GPIO_PIN_3, GPIO_MODE_OUT_PP_LOW_FAST);
//定時器2反初始化
TIM2_DeInit();
//定時器2初始化,每10個毫秒中斷一次
TIM2_TimeBaseInit(0, 20000);
//使能定時器2更新中斷
TIM2_ITConfig(TIM2_IT_UPDATE, ENABLE);
//啟動定時器2
TIM2_Cmd(ENABLE);
// 允許CPU全局中斷
enableInterrupts();
while (1);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -