#include "p12F683.inc"
; CONFIG
__CONFIG _FOSC_INTOSCIO & _WDTE_ON & _PWRTE_OFF & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOREN_ON & _IESO_ON & _FCMEN_ON
cblock 0x20
temp
endc
org 0
bsf STATUS,RP0 ;bank 1
movlw 0x70
movwf OSCCON ;8MHz
movlw b'11101011' ;GP2 = LED GP4 = 2N7000
movwf TRISIO
movlw b'10101001' ;09/24*5V
movwf VRCON
bcf STATUS,RP0 ;bank 0
movlw b'00000011'
movwf CMCON0
loop btfss CMCON0,COUT ;if clear then wait
goto loop ;as at required voltage
clrwdt ;kick the dog
bcf GPIO,4 ;turn on for 30uS = 60 cycles
movlw 18
call delay
bsf GPIO,4 ;and off for 6uS+
movlw 3
call delay
goto loop
delay movwf temp ;1 delay = 3*w+5
dloop decfsz temp,f ;1/2 including call
goto dloop ;2 and loading W
return ;2
end