⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 l4-2.c

📁 单片机C语言程序设计教程与实训源代码及图片 单片机C语言程序设计教程与实训源代码及图片
💻 C
字号:
/**********************************************************************
程序名称:L4-2.c
程序功能:通过外部中断0,用K1~K4分别单独控制D1~D4的发光、熄灭
调用函数:Xint0( void )
程序作者:张三
创建时间:2008-3-28
**********************************************************************/
# include <reg51. h>

sbit K1 = P1^0;		// 定义4个按键K1~K4,用于外部中断扩展
sbit K2 = P1^1;
sbit K3 = P1^2;
sbit K4 = P1^3;

sbit D1 = P1^4;		// 定义4个发光二极管D1~D4
sbit D2 = P1^5;
sbit D3 = P1^6;				
sbit D4 = P1^7;

void Xint0( void );	// 外部中断0中断函数声明

/**********************************************************************
函数名称:void main( )
功能描述:主函数,初始化CPU 
函数作者:张三
创建时间:2008-3-28
**********************************************************************/
void main( void )
{
	P1 = 0x00;	// 发光二极管熄灭,准备扫描按键
	EA = 1;		// 打开总中断
	EX0 = 1;	// 允许外部中断0中断
	IT0 = 1;	// INT0为电平触发方式
	for( ; ; ){ ; }
}
/**********************************************************************
函数名称:void Xint0( void ) Interrupt 0 using 3
功能描述:用外部中断0控制发光二极管的发光与熄灭
函数作者:张三
创建时间:2008-3-28
**********************************************************************/
void Xint0( void ) interrupt 0 using 3 		
{
	P1 = P1&0xff;
	if( K1==1 ) D1 = !D1;	// 按一次K1,D1发光;再按一次K1,D1熄灭
	if( K2==1 ) D2 = !D2;	// 按一次K2,D2发光;再按一次K2,D2熄灭
	if( K3==1 ) D3 = !D3;	// 按一次K3,D3发光;再按一次K3,D3熄灭 
	if( K4==1 ) D4 = !D4;	// 按一次K4,D4发光;再按一次K4,D4熄灭
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -