I found the same problem. If I remove the timeout value and label in the SEROUT2 line with flow control it works.
Code:
DEFINE LOADER_USED 1
DEFINE OSC 20 ' define oscillator to be 20Mhz
ADCON1 = 7 ' set the analog pins to digital
RX VAR PORTC.7 ' receive (from PC)
TX VAR PORTC.6 ' transmit (to PC)
CTS VAR PORTC.1 ' clear to send
RTS VAR PORTA.0 ' request to send
' General variables
I VAR byte
J var byte
K VAR BYTE
L VAR BYTE
M VAR BYTE
N VAR BYTE
I = 7
J = 8
K = 9
L = 10
M = 11
N = 12
Main:
SEROUT2 TX, 84,["I: ", DEC I, 13, 10, "J: ", DEC J, 13, 10]
SEROUT2 TX, 84,["K: ", DEC K, 13, 10, "L: ", DEC L, 13, 10]
SEROUT2 TX, 84,["M: ", DEC M, 13, 10, "N: ", DEC N, 13, 10]
pause 1000
goto Main
NoData:
' The line below does not work
SEROUT2 TX\CTS, 84, 200, NoData, ["Test"]
' This one below works if above is commented out
' SEROUT2 TX\CTS, 84, ["Test"]
Goto Main
With the timeout and label options used in the NoData routine, the Main routine sends;
I: 7
J:
K: 9
L:
M: 11
N:
Comment out the timeout & label line, un comment the lower, and it works sending this;
I: 7
J: 8
K: 9
L: 10
M: 11
N: 12
Seems to always trash the 2nd variable with flow control and the timeout/label options used in NoData.
I sent Jeff at MeLabs an email. He's looking into it.
Bookmarks