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

📄 p18f4610.c

📁 有关MICROCHIP的P18F4610一些初始化程序.包括RAM初始化
💻 C
字号:
#include <p18f4610.h>

void timer0 (void);
unsigned char time20;
void main (void)
{
  
  unsigned char a,b,c;
  a=0;
  b=0;
  c=0;
  RCONbits.IPEN = 1;
  INTCON2bits.TMR0IP = 1;//TMRO为高优先级HH
  IPR2bits.TMR3IP=1;//TMR3为高优先级
  INTCON = 0X20;//TMROIE使能,其它中断关闭,总中断关闭HH
  PIE2bits.TMR3IE=1;//TMR3IE使能
  T1CON=0X8F;
  TMR0H=0X63;
  TMR0L=0Xbf;//20ms
  T0CON = 0X88;//TMRO计数开始。不分频即Tosc/4 HH
  INTCONbits.GIE= 1;//开所有中断HH INTCON.GIE=1;//开所有中断HH
  while(1)
  {
    
     if(time20==1)
     {
      time20=0;
      c++;
      if(c==100)
      {
        a++;
        c=0;
      }
      if(a==60)
      {
        b++;
        a=0;
      }
      if(b==250)
        b=0;
     }
   }
}
//高优先级中断处理
#pragma code high_vector=0x008
void
high_vector (void)
{
  _asm 
   goto timer0
  _endasm
}
//高优先级中断处理
//timer0中断处理
#pragma code
#pragma interrupt timer0

void
timer0 (void)
{
  if (INTCONbits.TMR0IF)
 {
   INTCONbits.TMR0IF = 0;
   TMR0H=0X63;
   TMR0L=0Xbf;//重装20ms
   time20 = 1;
 }
}
//timer0中断处理

⌨️ 快捷键说明

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