PIC16F877A外部中断的例程 高手飘过

2020-02-09 11:25发布

望对初学者有帮助

/***********************************************************************
Platform: PIC1687A
Project : 实验7 外部中断的用法
Clock F : 外部4M
Software: PICC
Author  : 竹林清风
comments:
PORTB RB0引脚可以作为一个外部中断信号的输入
外部信号触发,LED亮,用按键的高低电平作为外部
中断信号的输入源
proteus仿真通过;
注:
*********************************************************************/
#include <pic.h>
#include <pic1687x.h>

/*-------------------------------------------------------------------
函数名称: void INT_0(void)
函数功能: 外部中断初始化函数
参    数: 无
返 回 值: 无
--------------------------------------------------------------------*/
void INT_0(void)
{
  TRISB=0x01;//设定为输入模式
  INTEDG=0;  //设定下降沿触发
  INTF=0;    //外部中断标志清0
  INTE=1;    //允许外部中断
  GIE=1;     //打开全局中断标志
  
}
/*-------------------------------------------------------------------
函数名称: void interrupt ISR(void)
函数功能: 中断程序
参    数: 无
返 回 值: 无
--------------------------------------------------------------------*/
void interrupt INT(void)
{
  if(INTF)               //中断标志
    {
      
      INTF=0;
      RD0=!RD0;
     }
}

/*-------------------------------------------------------------------
函数名称: void main(void)
函数功能: 主程序
参    数: 无
返 回 值: 无
--------------------------------------------------------------------*/
void main(void)
{
  //初始化端口//
  
  TRISD=0X00;//所有D0端口输出
  PORTD=0x00;//所有D0端口输出低电平
  INT_0();
  while(1)
  {
   
  }
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。