前言
本人曾在第十三届蓝桥杯大赛单片机组中获得国一,以下是我在准备比赛过程中的一些记录,希望能给大家带来帮助
本人持续分享更多关于嵌入式和单片机的知识,如果大家喜欢,别忘点个赞加个关注哦,让我们一起共同进步~
1. 定时器计数原理
2. 51单片机中的定时器
3. 有关初值的计算
4.与定时器相关的重要寄存器![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/d595d173bde473d397a4c8dbb6f17c0d.png)
5. 代码举例
实现LED0 亮1s 关1s 如此循环
# include "reg52.h"
sbit HC136_A = P2^5;
sbit HC136_B = P2^6;
sbit HC136_C = P2^7;
sbit LED1 = P0^0;
sbit LED2 = P0^1;
void InitHC138(unsigned char n)
{
switch(n)
{
case 4 :
HC136_A = 0;
HC136_B = 0;
HC136_C = 1;
break;
}
}
void init_time0(){
TMOD = 0x01; // 模式1 16位计时器
TH0 = (65536 - 50000) /256;
TL0 = (65536 - 50000) %256;
ET0 = 1 ; // 使能中断
EA = 1;
TR0 = 1; //开始计时
}
unsigned char count = 0;
void SeviceTimer0() interrupt 1
{
TH0 = (65536 - 50000) /256;
TL0 = (65536 - 50000) %256;
count ++;
if(count ==20){
LED1 = ~LED1;
count = 0;
}
}
void main(){
InitHC138(4);
init_time0();
while (1);
}
更多相关资源
【全套完结】蓝桥杯单片机— 从省赛到国赛
https://blog.csdn.net/amimax/article/details/128749109?spm=1001.2014.3001.5501