PIC16F877A进不了中断,望好心人看下,谢谢!

2020-02-09 11:23发布

学习使用定时器0,定时溢出产生中断,RD0高电平,相应的LED亮,
但此程序LED一直是灭的,是不是没进入中断呀,望好心人看下,谢谢!

#include <pic.h>
#include <pic1687x.h>

/*-------------------------------------------------------------------
函数名称: void timer0_init(void)
函数功能: 定时器初始化函数
参    数: 无
返 回 值: 无
--------------------------------------------------------------------*/
void timer_0(void)
{
  T0CS=0;           //选择内部时钟
  T0SE=0;           //LOW TO HIGH
  PSA=0;            //TIMER0 MODULE
  PS2=1;            //预分频为256
  PS1=1;
  PS0=1;
  TMR0=0XD8;        //
  T0IE=1;         //开启中断
  T0IF=0;         //清中断
  
}
/*-------------------------------------------------------------------
函数名称: void interrupt ISR(void)
函数功能: 中断程序
参    数: 无
返 回 值: 无
--------------------------------------------------------------------*/
void interrupt ISR(void)
{
  if(T0IF)
    {
      TMR0=0XD8;
      T0IF=0;
      RD0=1;
     }
}

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