【51单片机】外部中断

0、前言

参考:普中 51 单片机开发攻略 第16章 及17章

1、硬件

2、软件

c 复制代码
#include <reg52.h>
#include <intrins.h>
#include "delayms.h"

typedef unsigned char u8;
typedef unsigned int u16;

sbit led = P2^0;
sbit key3 = P3^2;

//外部中断0初始化函数
void Int0Init()
{
	//设置INT0
	IT0 = 1; //跳变沿出发方式(下降沿)
	EX0 = 1; //打开INT0的中断允许
	EA = 1; //打开总中断
}

void Int0() interrupt 0
{
	delayms(100); //正常消抖10ms,但是中断触发100ms实际效果更加
	if(key3 == 0)
	{
		led = ~led;
	}
}

void main()
{
	Int0Init();
	while(1);
}
相关推荐
wuyk5552 小时前
59.嵌入式C语言高级宏定义实战:多行宏、字符串化与符号拼接
c语言·开发语言·stm32·单片机·嵌入式硬件·物联网·51单片机
梅名智2 小时前
找不到libm.so, libc.so
嵌入式硬件
CPETW3 小时前
企业版配套软件介绍 ---- USB TO SPI 3.0-Slave
网络·科技·单片机·嵌入式硬件·电子
piaoyiren3 小时前
STM32 综合温控风扇控制系统
stm32·单片机·嵌入式硬件·oled·lcd1602·hc-05蓝牙
Echo_cy_4 小时前
基于ZYNQ-7000的Ethernet驱动配置
linux·驱动开发·嵌入式硬件·fpga开发·ethernet·zynq
武汉万象奥科5 小时前
万象奥科OpenHarmony 6.1 LTS适配完成,RK3576核心板再添新生态
arm开发·嵌入式硬件·物联网·rk3576·arm核心板
亿道电子Emdoor6 小时前
【Arm】解决Keil MDK无法查看外设寄存器的问题
stm32·单片机·嵌入式硬件
BW.SU6 小时前
瑞佑RUI--工业UI,拖拽即成
stm32·单片机·51单片机·gui·人机界面·单片机可视化设计
染予7 小时前
上位机时间戳精度不够,时间无法对比怎么解决
单片机·嵌入式硬件
現実君7 小时前
关于MCU下位替换FPGA的经验与方案
单片机·嵌入式硬件·fpga开发