Log in

View Full Version : Backwards auton_mode


David Bing
05-02-2003, 22:17
After finally deciding what to do for our line-tracking code, I figured that it was about time to learn how to use autonomous mode. I seem to understand it and all, so to make sure that I could get it to work, I put the following lines of code in (using the default program):

if auton_mode = 1 then next15:
pause 500
next15:

All that was currently connected was the rotating light spike. When I ran the program, even though it wasn't in autonomous mode, the light flickered (pausing for 1/2 second at a time, of course)! When I switched the RC's team number to 0 (put it into autonomous mode), the light was constant, as if it should've been in normal mode! I switched it to "auton_mode = 0," and it worked as it should have, but why? Everywhere I've read has said that auton_mode is 1 when it is ON, and 0 when it's off! What's going on?

Jeremy_Mc
05-02-2003, 22:27
the code does what you asked it to...

if auton_mode = 1 then next15:

[ if autonomous mode is on then go to the label "next15" ]

pause 500

[ this code executes if you don't go to "next15" ]

next15:

[ this label executes if autonomous mode is on ]

if you're still confused, PM me...

*jeremy

wwrye
05-02-2003, 23:23
With that logic, you are going to be going through the next15 label regardless of auton_mode's value. If you use labels, you need to do something like this:


If auton_mode = 1 then got do_auton

'regular code in here

goto skip_auton
do_autonomous:

'autonomous goes in here

skip_auton:
A better option, if you're comfortable with 2.5 syntax is something like this:
if auton_mode = 1 then
'autonomous stuff here
else
'non-autonomous code in here
endif