'program Lynx.bas by Ron Klimas, UP362, 02/23/99 'This program controls a small robot base that has 2 modified servos 'set up for differential steering. It receives data on a 3 bit bus from 'a second processor which directs what movements to make. ' ' pin connection ' ' 7 ----------------- input from Stamp2 ' 6 ----------------- input from Stamp2 ' 5 ----------------- input from Stamp2 ' 4 ----------------- input from Stamp2 ' 1 ----------------- left servo control ' 0 ----------------- right servo control ' symbol lservo = 1 symbol rservo = 0 symbol mask = %11110000 'mask to isolate input bus symbol hold = %00000000 symbol right = %11010000 symbol left = %11110000 symbol forward = %11000000 symbol back = %01000000 symbol gleft = %10110000 symbol gright = %10010000 symbol gbright = %00010000 symbol gbleft = %00110000 symbol bleft = %01110000 symbol bright = %01010000 symbol inbus = b0 'b0 and b1 are bit addressable dirs = %00000011 'define pins 1 and 0 as outputs pins = %00000000 'set all pins low (init cond.) start: inbus = pins & mask 'debug inbus if inbus=hold then shold if inbus=forward then sforward if inbus=back then sback if inbus=right then sright if inbus=left then sleft if inbus=gleft then sgleft if inbus=gright then sgright if inbus=gbright then sgbright if inbus=gbleft then sgbleft if inbus=bleft then sbleft if inbus=bright then sbright goto start shold: pulsout rservo,174 pulsout lservo,171 pause 10 goto start sforward: pulsout rservo,191 pulsout lservo,220 pause 10 goto start sback: pulsout rservo,110 pulsout lservo,152 pause 10 goto start sright: pulsout rservo,174 'moves right wheel slowly, need to adjust. pulsout lservo,200 'moves left wheel fast pause 10 goto start sleft: pulsout rservo,200 'moves right wheel fast pulsout lservo,171 'moves left wheel slowly, need to adjust. pause 10 goto start sgleft: pulsout rservo,200 pulsout lservo,180 pause 10 goto start sgright: pulsout rservo,183 pulsout lservo,200 pause 10 goto start sgbleft: pulsout rservo,110 pulsout lservo,162 pause 10 goto start sgbright: pulsout rservo,166 pulsout lservo,110 pause 10 goto start sbright: pulsout rservo,174 pulsout lservo,110 pause 10 goto start sbleft: pulsout rservo,110 pulsout lservo,171 pause 10 goto start