标题:
单片机多级外部中断控制LED灯移动实验 Proteus仿真加源程序
[打印本页]
作者:
51黑电子happy
时间:
2017-3-29 22:08
标题:
单片机多级外部中断控制LED灯移动实验 Proteus仿真加源程序
单片机多级外部中断控制LED灯移动的仿真原理图(proteus工程文件可到本帖附件下载):
0.png
(31.49 KB, 下载次数: 62)
下载附件
2017-3-29 22:05 上传
单片机源程序:
//---------------------------------------------------------------------------------------------------------------
// 程序名: ZD5-5.c
// 程序功能:多级外部中断控制灯移动
//---------------------------------------------------------------------------------------------------------------
#include<reg51.h> // 头文件
char sum =0; // 声明sum为字符变量并赋初始值0
delay (); // 延时函数
// ----------------------------------------------- 主函数 --------------------------------------------------
void main()
{
EA=1; // 允许总中断
EX0=1; // 允许外部中断0中断
EX1=1; // 允许外部中断1中断
PX1=1; // 外部中断1高优先级
while(1) // 无限循环
{
delay ();
P1=0xff;
delay ();
P1=0x00;
}
}
// -------------------------------------------- INT0 中断函数 ----------------------------------------------
void EX_INT0() interrupt 0
{
while(sum<15) // 循环15次
{
delay (); // 调用延时函数
P1=0x0f; // P1输出0x0f
delay (); // 调用延时函数
P1=0xf0; // P1输出0xf0
sum ++; // sum 加1
}
sum=0; // sum 清零,以便重新计数
}
// -------------------------------------------- INT1 中断函数 -----------------------------------------------
void EX_INT1() interrupt 2
{
while(sum<15) // 循环15次
{
delay (); // 调用延时函数
P1=0xc3; // P1输出0xc3
delay (); // 调用延时函数
P1=0x3c; // P1输出0x3c
sum ++; // sum 加1
}
sum=0; // sum 清零,以便重新计数
}
//-------------------------------------------------- 延时函数 -------------------------------------------------
delay ()
{
int a=50000;
while (a--);
}
//---------------------------------------------------------------------------------------------------------------------
复制代码
0.png
(63.31 KB, 下载次数: 58)
下载附件
2017-3-29 22:07 上传
该系列源码包含有很多非常经典,代码风格十分规范,而且注释详细的单片机例程,还带仿真,对于MCU学习特别是初学者是很有帮助的,全部源码下载(共25个项目):
http://www.51hei.com/bbs/dpj-79328-1.html
本例程下载(含proteus仿真工程文件与源码):
5-5单片机多级外部中断控制LED灯移动实验.rar
(40.01 KB, 下载次数: 31)
2017-3-29 22:06 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
asd122
时间:
2017-4-26 21:54
多谢楼主
作者:
27477655
时间:
2019-11-5 09:03
多谢大佬帮助
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1