'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : [select VIEW...EDITOR OPTIONS] *
'* Notice : Copyright (c) 2002 [select VIEW...EDITOR OPTIONS] *
'* : All Rights Reserved *
'* Date : 13/12/2002 *
'* Version : 1.0 *
'* Notes : *
'* : *
'****************************************************************
CMCON=7
TRISA=%00001111
TRISB=%00000010
RECEPTOR VAR PORTB.1
TRANSMISOR VAR PORTB.2
PULSADOR1 VAR PORTA.0
PULSADOR2 VAR PORTA.1
PULSADOR3 VAR PORTA.2
PULSADOR4 VAR PORTA.3
LED1 VAR PORTB.4
LED2 VAR PORTB.5
LED3 VAR PORTB.6
LED4 VAR PORTB.7
DATO_REC VAR BYTE
SPBRG = 25 ' Set baud rate to 2400
RCSTA = %10010000 ' Enable serial port and continuous receive
TXSTA = %00100000 ' Enable transmit and asynchronous mode
LED1=0
LED2=0
LED3=0
LED4=0
INICIO:
IF PULSADOR1=0 THEN
PAUSE 30
IF PULSADOR1=0 THEN
WHILE PULSADOR1=0 :WEND
HSerout ["1"]
ENDIF
ENDIF
IF PULSADOR2=0 THEN
PAUSE 30
IF PULSADOR2=0 THEN
WHILE PULSADOR2=0 :WEND
HSerout ["2"]
ENDIF
ENDIF
IF PULSADOR3=0 THEN
PAUSE 30
IF PULSADOR3=0 THEN
WHILE PULSADOR3=0 :WEND
HSerout ["3"]
ENDIF
ENDIF
IF PULSADOR4=0 THEN
PAUSE 30
IF PULSADOR4=0 THEN
WHILE PULSADOR4=0 :WEND
HSerout ["4"]
ENDIF
ENDIF
If PIR1.5 = 1 Then ' If receive flag then...
DATO_REC= RCREG ' ...get received character to B1
IF DATO_REC="1" THEN
LED1=1
PAUSE 1000
LED1=0
DATO_REC=0
GOTO INICIO
ENDIF
IF DATO_REC="2" THEN
LED2=1
PAUSE 1000
LED2=0
DATO_REC=0
GOTO INICIO
ENDIF
IF DATO_REC="3" THEN
LED3=1
PAUSE 1000
LED3=0
DATO_REC=0
GOTO INICIO
ENDIF
IF DATO_REC="4" THEN
LED4=1
PAUSE 1000
LED4=0
DATO_REC=0
GOTO INICIO
ENDIF
ENDIF
GOTO INICIO