代码:
#include "reg51.h"
unsigned char led[] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};
void delay(unsigned int time){
while(time--);
}
void init(){
EA = 1; // 开启总中断
EX0 = 1; // 允许外部中断0中断
IT0 = 1; // 设置外部中断0为跳沿触发
}
// 中断后执行的操作
void init0() interrupt 0{
unsigned char n;
EX0 = 0; // 防止重复触发外部中断0
for (n = 0; n < 8; n++){
P1 = ~led[n];
delay(10000);
}
EX0 = 1; // 恢复
}
void main(){
init();
while(1){ P1 = 0;}
}

本文介绍了如何使用C语言在8051单片机上编程,通过外部中断0控制LED灯按照二进制序列亮灭。代码展示了初始化、延迟函数以及中断后处理函数的实现,主要涉及中断系统和硬件接口操作。
最低0.47元/天 解锁文章
3090

被折叠的 条评论
为什么被折叠?



