手册
代码
- 定时器0定时,常使用模式0。
- 串口下载软件时,IRC频率选择24MHz。
- 功能:D4间隔1S闪烁。
- main.c
#define _MAIN_C
#include "config.h"
#include "STC8G_H_GPIO.h"
#include "main.h"
#define D1 P03
#define D2 P02
#define D3 P01
#define D4 P00
#define KEY1 P36
#define KEY2 P37
#define K P44
/**
* GPIO口初始化
*/
void GPIO_config(void)
{
P0_MODE_IO_PU(GPIO_Pin_0); // P0.0为准双向口
}
void Timer0_Init(void) //20毫秒@24.000MHz
{
AUXR &= 0x7F; //定时器时钟12T模式
TMOD &= 0xF0; //设置定时器模式
TL0 = 0xC0; //设置定时初始值
TH0 = 0x63; //设置定时初始值
TF0 = 0; //清除TF0标志
TR0 = 1; //定时器0开始计时
ET0 = 1; //使能定时器0中断
}
void main()
{
GPIO_config();
Timer0_Init();
EA = 1;
while (1)
{
;
}
}
void Timer0_Isr(void) interrupt 1
{
static uint8 T0Cnt = 0;
T0Cnt++;
if (T0Cnt >= 50)
{
T0Cnt = 0;
D4 = ~D4;
}
}