Hola gente del foro!
El problema me surge al intentar compilar un programa simple hecho para el pic 12F508, pero muestra que no conoce los términos "GPIO" y "TRISIO". Quizás haya que realizar alguna configuración en el compilador, no lo sé. Si alguien conoce del tema le agradecería la ayuda. Adjunto el programa. Gracias de antemano.
Esteban.
list p=12f508 ; list directive to define processor
#include ; include device specific header file
errorlevel -302, -207 ; suppress useless assembler warnings
__CONFIG _CP_OFF & _MCLRE_OFF & _WDT_OFF & _IntRC_OSC
CLRF GPIO ; GPIO.1 LED drive output OFF
MOVLW b'11111101' ; GPIO,0 = IR data in, GPIO,1 = IR data out
TRISIO ; All inputs except GPIO.1
; If input GPIO.0=1 output 40KHz on GPIO.1
; If input GPIO.0=0 turn OFF carrier on GPIO.1
HOLD40 ; Generates 40KHz carrier based on logic input
BCF GPIO,1 ; LED = OFF
BTFSS GPIO,0 ; Logic 1 turns ON carrier
GOTO $-1 ; Logic 0 turns OFF carrier
FREQ1
BSF GPIO,1 ;1uS LED = ON here
BTFSS GPIO,0 ;2uS
GOTO HOLD40 ;3uS
BTFSS GPIO,0 ;4uS 2uS instruction if bit = 1
GOTO HOLD40 ;5uS NOP inserted here if bit = 0
BTFSS GPIO,0 ;6uS
GOTO HOLD40 ;7uS
BTFSS GPIO,0 ;8uS
GOTO HOLD40 ;9uS
BTFSS GPIO,0 ;10uS
GOTO HOLD40 ;11uS
BTFSS GPIO,0 ;12uS
GOTO HOLD40 ;13uS
BCF GPIO,1 ;14uS LED = OFF here
BTFSS GPIO,0 ;15uS
GOTO HOLD40 ;16uS
BTFSS GPIO,0 ;17uS
GOTO HOLD40 ;18uS
BTFSS GPIO,0 ;19uS
GOTO HOLD40 ;20uS
BTFSS GPIO,0 ;21uS
GOTO HOLD40 ;22uS
BTFSC GPIO,0 ;23uS
GOTO FREQ1 ;25uS, GOTO requires 2uS, 25uS total=40KHz
BCF GPIO,1 ;else LED = OFF
GOTO HOLD40 ;return to monitor input pin
END