我是靠谱客的博主 呆萌鞋子,最近开发中收集的这篇文章主要介绍extern interrupt0.c,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

/*********************************************************************************
*程序名称:extern interrupt0.c
*程序描述:外部中断0
*编    制:LZS
*备    注:编译器keil C51 V7.06;时间2008.2.10;版本:v1.0
**********************************************************************************/
void Delay(unsigned int delay);
#include "reg51.h"
unsigned char tmp;
int main(void)
{

 tmp=0xAA;
 EA=1;
 EX0=1;
 while(1)
 {
  P0=tmp;
 }
}

/**********************************************************************
*函数名称:void Ext_Interrupt0(void)
*函数描述:外部中断0服务函数
*入口参数:无
*出口参数:无
*备    注:无
***********************************************************************/
void Ext_Interrupt0(void) interrupt 0 using 2
{
 if(tmp==0x55)
 {
  tmp=0xAA;
 }

 
 else
 {
  tmp=0x55;
 }
 Delay(10);
}

/**********************************************************************
*函数名称:Delay()
*函数描述:延时delay个ms
*入口参数:delay
*出口参数:无
*备    注:假设晶振频率为12MHZ时延时为delay个ms
***********************************************************************/
void Delay(unsigned delay)
{
 unsigned int tmp;//一个临时变量
 for(;delay>0;delay--)
 {
  for(tmp=0;tmp<124;tmp++)
  {
   ;
  }
 }
}

 /***********************************************************************************************************************
*关于本程序有几点不明白:1.为什么直接用P0口判断不行,如:if(P0==0x55) P0=0xaa;
                                            2.如何使得刚好按下一个键触发一次外部中断(适当延时可以解决)
************************************************************************************************************************/

最后

以上就是呆萌鞋子为你收集整理的extern interrupt0.c的全部内容,希望文章能够帮你解决extern interrupt0.c所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部