Dependencies: mbed Motordriver QEI
main.cpp
- Committer:
- Keisuke_Fujii
- Date:
- 2011-06-13
- Revision:
- 0:993cd673f077
- Child:
- 1:19d647492936
File content as of revision 0:993cd673f077:
#include "include_file.h" int main( int argc, char **argv ) { char key; float d = 0.5; device.baud( 115200 ); right_pwm.period_us( 10 ); left_pwm.period_us( 10 ); enable.write( 1 ); device.putc('s'); device.printf("f:forward, b:back, r:turn_right\n" "l:turn_left, a:duty+=0.01, m:duty-=0.01\n"); while( 1 ) { key = device.getc(); switch( key ) { case 'f': move_f( d ); break; case 'b': move_b( d ); break; case 'r': turn_r( d ); break; case 'l': turn_l( d ); break; case 's': stop(); break; case 'a': d += 0.01; break; case 'm': d -= 0.01; break; default: break; } device.printf("duty = %1.2f\r", d); wait_ms( 10 ); } } void move_f( float d ) { right_P.write( 0 ); right_N.write( 1 ); left_P.write( 1 ); left_N.write( 0 ); right_pwm.write( d ); left_pwm.write( d ); /*right_pwm.pulsewidth_us( d ); left_pwm.pulsewidth_us( d );*/ } void move_b( float d ) { right_P.write( 1 ); right_N.write( 0 ); left_P.write( 0 ); left_N.write( 1 ); right_pwm.write( d ); left_pwm.write( d ); /*right_pwm.pulsewidth_us( d ); left_pwm.pulsewidth_us( d );*/ } void turn_r( float d ) { right_P.write( 0 ); right_N.write( 1 ); left_P.write( 0 ); left_N.write( 1 ); right_pwm.write( d ); left_pwm.write( d ); /*right_pwm.pulsewidth_us( d ); left_pwm.pulsewidth_us( d );*/ } void turn_l( float d ) { right_P.write( 1 ); right_N.write( 0 ); left_P.write( 1 ); left_N.write( 0 ); right_pwm.write( d ); left_pwm.write( d ); /*right_pwm.pulsewidth_us( d ); left_pwm.pulsewidth_us( d );*/ } void stop( void ) { right_P.write( 0 ); right_N.write( 0 ); left_P.write( 0 ); left_N.write( 0 ); right_pwm.write( 0 ); left_pwm.write( 0 ); }