ok remarking out - didnt work
ADCON1.7 = 0 - didnt work
ADCON1.7 = 1 - WORKED!
OK so now we are sending to the computer what we need. Now to get the part to receive from the PC a Byte.
Heres my modified code, its been reworked several times stuff moved round Ill make notes at bottom of what its doing.
Code:
Include "12F1572.bas"
DEFINE OSC 20
DEFINE ADC_BITS 10 ' A/D number of bits
DEFINE ADC_CLOCK 1 ' Uses A/D internal RC clock
DEFINE ADC_SAMPLEUS 50 ' Set sampling time in us
define HSER_BAUD 9600
DEFINE HSER_BITS 8
DEFINE HSER_CLROERR 1
ADCON1.7 = 1
TRISA = %00000100
ANSELA = %00000100
A VAR word 'Stores 10 Bit Analog Reading
B var byte
mainloop:
b = 0
porta.4 = 1
pause 250
porta.4 = 0
HSERIN 250, test,[B] : Pause 50
goto mainloop ' Do it all over again
test:
ADCIN 2, A 'Grab analog input from pin3
pause 250
Hserout [#A,13,10] ' Send char out serial port
porta.4 = 1
pause 1000
porta.4 = 0
goto mainloop
ok, it goes in blinks the led quick and starts the line of code for hserin then it jumps to the test loop runs the adc and sends to the pc and the led continues to blink at 1 sec intervals, it never does the quick led blink of the main loop when test loop led duration is longer. and im not sure if I have the HSERIN coded right, it was taken from other code I had working last year with another chip. the weird thing is, if I change the mainloop led to 1000 and the test loop to 250, it still blinks at the 1 sec rate????
Bookmarks