PORT Change Interrupt PIC 16f877A
单片机源程序如下:
#define LED_1 PORTd.b0
#define LED_2 PORTd.b1
void interrupt()
{
if(INTCON.RBIF)
{
INTCON.RBIF = 0;
if(!PORTB.B4)
{
LED_1 = 0;
LED_2 = 1;
}
if(!PORTB.B7 )
{
LED_1 = 1;
LED_2 = 0;
}
}
}
void main(){
TRISB = 0XF0;
TRISD = 0X00;
PORTD = 0X00;
OPTION_REG.B7=0; // PORTB dahili pull-up aktif
INTCON.GIE=1; // b黷黱 kesmelere izin ver
INTCON.RBIE=1; // PORTB de餴m kesmesine izin ver
INTCON.RBIF=0; // RBIF bayra瘕n?temizle
LED_1 = 1;
delay_ms(1000);
LED_1 = 0;
while(1)
{
}
}
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』