Hello everyone,
I'm trying to make a simple program that will blink a LED on PortB.2. While waits for an incoming character to PortC.7(with max232). My trouble I think is with the command serin PortC.7, T2400, RX and my PortB.2 doesnt blink. I appreciate any help/guide to understand how I can make this work.
Code:
CLEAR 
include "modedefs.bas" 'include serout defines
DEFINE OSC 20
OPTION_REG=%10000101	
				;Bit 7=1 disable pull ups on PORTB 
				;Bit 5=0 selects timer mode 
				;Bit 2=1  }
				;Bit 1=0  } sets Timer0 pre-scaler to 64
				;Bit 0=1  }
				
INTCON=%10100000	;Bit 7=1 Enables all unmasked interrupts
				;Bit 5=1 Enables Timer0 overflow interrupt 
				;Bit 2 flag will be set on interrupt and has to be cleared 
				;in the interrupt routine.  It is set clear to start with.

RX   var byte    ; holds incoming character 
symbol led1=PORTB.0
symbol led2=PORTB.1
i    var byte    ;counter
Cnt  var byte
TRISB   = %11110000	;sets the 3 output pins in the B port
PORTB = %00000000	;sets all pins low in the B port
TRISC = %10000000   ;Set portC.7 for  serial input				
ON INTERRUPT GOTO INTERUPTROUTINE	
			
				
MAINLOOP:		
        High PORTB.2       
        For i = 0 to 200	
	    	Pause 1   	
		Next i		
        Low PORTB.2     
        For i = 0 to 200	
	        Pause 1   
		Next i 
        
   ''''''''''''''''''''''''''''''''''''''''''''''''
    IF Cnt=49 then
            led1=1-led1
            pause 100
            Cnt=0
      endif   

      if Cnt=50 then
            led2=1-led2
            pause 100
            Cnt=0
      endif
GOTO MAINLOOP	;end of loop
				
DISABLE	
INTERUPTROUTINE:	
   serin PortC.7, T2400, RX 'Receive menu  
   Cnt = Rx
ENDINTERRUPT:	;
INTCON.2 = 0		;clears the interrupt flag.
RESUME		;resume the main program
ENABLE		;DISABLE and ENABLE must bracket the int routine
END
mbox