Define CONF_WORD = 0x3194
Define CLOCK_FREQUENCY = 4
'Define SIMULATION_WAITMS_VALUE = 1
AllDigital
TRISIO = %00000000
Dim i As Byte
Dim datatimer As Byte
Dim delaycount As Byte
Symbol led = GPIO.2
Symbol vdd = GPIO.1
i = 0
led = 1
vdd = 0
datatimer = 200
delaycount = 200
'****************************************************
WaitMs 1000
led = 0
ASM: bsf STATUS,RP0 ;bank 1
ASM: call 3ffh ;get the cal value
ASM: movwf OSCCAL ;calibrate
ASM: bcf STATUS,RP0 ;bank 0
ASM:
main:
Gosub decrement_counters
Gosub senddata
Goto main
End
'****************************************************
decrement_counters:
If delaycount = 0 Then
If datatimer > 0 Then
datatimer = datatimer - 1
Endif
delaycount = 200
Else
delaycount = delaycount - 1
Endif
Return
'****************************************************
senddata:
If datatimer = 0 Then
vdd = 1
led = 1
Serout GPIO.0, 9600, "+", "A", "B", "C", "D", "E", "#", CrLf
vdd = 0
WaitMs 50
led = 0
datatimer = 200
Endif
Return