蓝桥杯08---单片机的中断系统

本文介绍了单片机中断系统的基本概念及其在蓝桥杯竞赛中的重要性。通过示例代码展示了如何配置中断服务函数,特别是定时器中断服务函数,用于周期性控制LED灯闪烁。代码中初始化了定时器,并在中断服务函数中更新计数器,当达到一定阈值时切换LED状态。此外,还提供了初始化函数用于设置HC136编码器。博客最后邀请读者访问作者的个人博客获取更多资源。

前言

本人曾在第十三届蓝桥杯大赛单片机组中获得国一,以下是我在准备比赛过程中的一些记录,希望能给大家带来帮助

本人持续分享更多关于嵌入式和单片机的知识,如果大家喜欢,别忘点个赞加个关注哦,让我们一起共同进步~

中断是单片机中非常重要的一部分,在蓝桥杯竞赛中也是必考所需掌握的。

1.中断

在这里插入图片描述

2.中断的使用

在这里插入图片描述

3.中断服务函数的编写


在这里插入图片描述
我们再看一下上一节的代码,对中断部分是不是理解了呢?

 # 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; 
	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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

おもいね

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值