单片机
返回首页

PIC RB0外部中断程序

2018-08-04 来源:eefocus

#include

#include

 

//__CONFIG (CP_OFF&WDTE_OFF& BOREN_OFF&PWRTE_OFF &FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);

__CONFIG (CP_OFF&WDTE_OFF&BOREN_ON&PWRTE_OFF&FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);

 

 

//__CONFIG (CP_OFF&WDTE_OFF& BOREN_OFF&PWRTE_OFF &FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);

//__CONFIG (CP_OFF&WDTE_ON& BOREN_OFF&PWRTE_ON&FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);

/*配置位

CP_OFF,代码保护位,程序存储器代码保护关闭;

WDTE_OFF,看门狗定时器使能位,看门狗定时器关闭,可以通过WDTCON寄存器的SWDTEN位使能;

BOREN_OFF,掉电复位选择位,掉电复位关闭;

PWRTE_OFF,上电定时器使能位,上电定时器关闭;

FOSC_HS,振荡器选择位,高速晶振或谐振器在RA6/OSC2/CLKOUT和RA7/OSC1/CLKIN;

WRT_OFF,闪存程序存储器自写使能位,写保护关闭;

LVP_OFF,低电压编程使能位,RB3引脚有数字I/O,使用MCLK上的HV(高电压)来编程;

CPD_OFF,数据代码保护位,数据存储器代码保护关闭;

*/

 

//__CONFIG (0x2FF2);

 

 

 

#define uchar unsigned char

#define uint unsigned int

#define LEDA RB3//定义灯1

#define RET RB0//定义灯1

 

 

void delay(unsigned int n);

void interrupt ISR(void); 

uchar count;

 

main()

{

TRISB=0X01; 

//

PORTB=0x09; 

ANSEL=0x00;

ANSELH=0x00;

//

//

GIE = 1;

PEIE = 1;   //允许外设中断

RBIE = 1; 

//INTE = 1;

 

//IOCB = 0x01;   //B0电平变化中断;

WPUB = 0X01;

OPTION_REG=0x00;

INTEDG=0;//当INTEDG位(OPTION<6>)被清零时在下降沿触发

INTE = 0;

INTF=0;

INTE = 1;

INTF=0;

 

 

//INTCON=

//WPUB = 0X0F; 

//RBIF = 0;

 

 

 

 

//TRISB=0X01; 

//PORTB=0X00;//红

RB3=0;//红灯

 

//count=0;

//RBIF = 0;

while(1)

{

   

 

if((count%2)==0)

{RB3=0;}

else

{RB3=1;}

 

 

 

 

//RB3=0;//红灯

////RET=0;

//delay(1000);

////delay(1000);

//

//RB3=1;

////RET=1;

//delay(1000);

////delay(1000);

}

 

}

 

 

//延时(n)ms

void delay(unsigned int n)

{

unsigned int j;

unsigned int k;

for(j=0;j

for(k=264;k>0;k--)

NOP();

}

 

void interrupt ISR(void)

{

 if(INTF==1)   //电平变化中断

{

//  PortB0Intrupt = PortB0Intrupt+ 1;

//  PORTB = PORTB;

//  RD0 = ~RD0;

//  SendToPrin(&PortB0Intrupt,2);

 

RB3=1;//黄

 

count++;

INTF=0;

//  RBIF = 0;

}

}


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 如何构建一个触摸传感器电路

  • 基于ICL296的大电流开关稳压器电源电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章