' First attempt at some crude autonomous vehicle software 'hardware is picaxe 18A 'L293D motor driver connected to 0,1, and 2,3 '2 mini robot motors 'LED between pins 4 and 5 'define pinouts symbol motor1A=0 'left motor symbol motor1B=1 symbol motor2A=2 'right motor symbol motor2B=3 symbol LED1A=4 'LED across these pins for now symbol LED1B=5 symbol tmp0b=b0 symbol tmp1b=b1 symbol rndw=w1 symbol rndb=b2 '1st byte of random word 'define constants symbol leddly=100 init: gosub flashled 'let user know we're alive pause 8500 start: gosub flashled 'say hi pause 1500 'wait abit random rndw 'get new random number tmp0b=rndb%5 'and use it to select new action on tmp0b gosub sitstill, m1m2lt, m1m2fwd, m1m2rt, m1m2rev 'call action pause 1000 'wait abit gosub m1m2off goto start sitstill: return m1fwd: high motor1A low motor1B return m1rev: high motor1B low motor1A return m1off: low motor1A low motor1B return m2rev: high motor2A low motor2B return m2fwd: high motor2B low motor2A return m2off: low motor2A low motor2B return m1m2fwd: high motor1A low motor1B high motor2B low motor2A return m1m2rev: high motor1B low motor1A high motor2A low motor2B return m1m2lt: high motor1B low motor1A high motor2B low motor2A return m1m2rt: high motor1A low motor1B high motor2A low motor2B return m1m2off: low motor1a low motor1b low motor2a low motor2b return led1on: high LED1A low LED1B return led1off: low LED1A low LED1B return flashled: for tmp1b=0 to 3 gosub led1on pause leddly gosub led1off pause leddly next tmp1b return