you might have a rmw issue
try this
Code:
#CONFIG
__config _INTRC_OSC_NOCLKOUT & _WDT_OFF & _CP_OFF & _MCLRE_OFF & _BODEN_OFF & _PWRTE_OFF
#ENDCONFIG
DEFINE OSC 4
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_SAMPLEUS 50
DEFINE SER_BAUD 2400
DEFINE SER_CLROERR 1
CMCON = 7 : TRISIO = %00010001 : ADCON0.7 = 1 : ANSEL = %00011001
INCLUDE "modedefs.bas"
LED var GPIO.2
i var byte
Akumuliatorius VAR word
Lygis var word
Buves var word : Buves = 0
Buves1 var word
Buves2 var word
Adr1 var byte : Adr1 = %00111110
Adr2 var byte : Adr2 = %01101110
CMD1 VAR BYTE : cmd1 = %10111110
CMD2 var byte : cmd2 = %10011100
pause 100
FOR i = 1 TO 3
high led : pause 400
low led : pause 400
NEXT i
main:
ADCIN 0, akumuliatorius
if akumuliatorius <= 640 then
high led
else
low led
endif
gpio.0=1
adcin 3, lygis
Buves1 = Buves - 4 : Buves2 = Buves + 4
if Lygis <= Buves1 or Lygis >= Buves2 then
buves = lygis
SEROUT GPIO.1,T2400,["*",Adr1,Adr2,Lygis,CMD1,CMD2]
endif
goto main
end
Bookmarks