#include <16f887.h>
#device adc=10
#fuses HS,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP 
#use delay(clock=20000000)
#use rs232(baud=1200, xmit=PIN_C6, rcv=PIN_C7) 
#zero_ram

#byte ANSELH = 0x189
#bit ANSELH_8 = ANSELH.0
#bit ANSELH_9 = ANSELH.1
#bit ANSELH_10 = ANSELH.2
#bit ANSELH_11 = ANSELH.3
#bit ANSELH_12 = ANSELH.4
#bit ANSELH_13 = ANSELH.5

#byte IOCB = 0x096
#bit IOCB4 = IOCB.4
#bit IOCB5 = IOCB.5

#byte INTCON = 0x0B
#bit RBIE = INTCON.3
#bit RBIF = INTCON.0
#bit PEIE = INTCON.6

#byte port_b = 6
#bit piros = port_b.1
#bit zold = port_b.2

#INT_RB
void int_rb_isr()
{
 zold=1;                                  //villanjon fel egy led (nyilván nem ez a végső cél...)
delay_ms(500);
zold=0;
 RBIF=0;                                  //töröljük a "mismatch conditiont"
}

void init()
{
int8 temp;                           //

 setup_adc(ADC_CLOCK_INTERNAL);
 setup_adc_ports (sAN0 | sAN1);      //0>szenzor 1>akku
 ANSELH_8=0;                         //portB legyen digitális biztosan  
 ANSELH_9=0;
 ANSELH_10=0;
 ANSELH_11=0;
 ANSELH_12=0;
 ANSELH_13=0;
 set_tris_b (00110000);              //2 bemenet a 2 kerékjeladónak (B4, B5)
 set_tris_c (0);
 set_tris_d (0);	                 //VAGY 2 bemenet a 2 infrabumbernek
 set_tris_e (1);        	         //nyomógombok
 zold=1;                             //2db led felvillan 
 piros=1;
 delay_ms(500);
 output_b(0);
 output_c(0b0000);                   //különben elgurul...

                                         
 /*clear_interrupt (INT_RB);
 enable_interrupts(INT_RB4);                   
 enable_interrupts(INT_RB5);*/

temp=port_b;      //én úgy értettem, hogy a kiolvasás RBIF törlése miatt kell, így jelen esetben nem szükséges, mivel külön kitörlöm.
IOCB4=1;          //B4, B5-re megszakítás
IOCB5=1;
RBIE=1;           //maga a portB megszakítás bekapcs
PEIE=1; 
RBIF=0;           //törlöm a megszakítás megtörténtét jelző flaget
enable_interrupts(GLOBAL);
}

void main()
{
init();

  while(1)                         //lássam, hogy él...
  {
  piros=1;
  delay_ms(1000);
  piros=0;
  delay_ms(1000);
  }

}