Yuichi Kawamura
/
evorobo
main.cpp@0:1cc4593f62e2, 2011-12-10 (annotated)
- Committer:
- kagyroy
- Date:
- Sat Dec 10 10:58:29 2011 +0000
- Revision:
- 0:1cc4593f62e2
- Child:
- 1:0a67babd7786
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kagyroy | 0:1cc4593f62e2 | 1 | #include "include_file.h" |
kagyroy | 0:1cc4593f62e2 | 2 | |
kagyroy | 0:1cc4593f62e2 | 3 | int main( int argc, char **argv ) |
kagyroy | 0:1cc4593f62e2 | 4 | { |
kagyroy | 0:1cc4593f62e2 | 5 | char key; |
kagyroy | 0:1cc4593f62e2 | 6 | float d = 0.5; |
kagyroy | 0:1cc4593f62e2 | 7 | int width,height,color; |
kagyroy | 0:1cc4593f62e2 | 8 | |
kagyroy | 0:1cc4593f62e2 | 9 | device.baud( 115200 ); |
kagyroy | 0:1cc4593f62e2 | 10 | right_pwm.period_us( 10 ); |
kagyroy | 0:1cc4593f62e2 | 11 | left_pwm.period_us( 10 ); |
kagyroy | 0:1cc4593f62e2 | 12 | enable.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 13 | |
kagyroy | 0:1cc4593f62e2 | 14 | // device.putc('s');$$$ |
kagyroy | 0:1cc4593f62e2 | 15 | |
kagyroy | 0:1cc4593f62e2 | 16 | device.printf("f:forward, b:back, r:turn_right\n" |
kagyroy | 0:1cc4593f62e2 | 17 | "l:turn_left, a:duty+=0.01, m:duty-=0.01\n"); |
kagyroy | 0:1cc4593f62e2 | 18 | |
kagyroy | 0:1cc4593f62e2 | 19 | width = 0; |
kagyroy | 0:1cc4593f62e2 | 20 | |
kagyroy | 0:1cc4593f62e2 | 21 | |
kagyroy | 0:1cc4593f62e2 | 22 | |
kagyroy | 0:1cc4593f62e2 | 23 | |
kagyroy | 0:1cc4593f62e2 | 24 | |
kagyroy | 0:1cc4593f62e2 | 25 | |
kagyroy | 0:1cc4593f62e2 | 26 | //testing area |
kagyroy | 0:1cc4593f62e2 | 27 | wait( 5 ); |
kagyroy | 0:1cc4593f62e2 | 28 | |
kagyroy | 0:1cc4593f62e2 | 29 | // while( 1 ) |
kagyroy | 0:1cc4593f62e2 | 30 | // { |
kagyroy | 0:1cc4593f62e2 | 31 | ++width; |
kagyroy | 0:1cc4593f62e2 | 32 | device.printf("%d\n",width); |
kagyroy | 0:1cc4593f62e2 | 33 | if(width==255) width = 0; |
kagyroy | 0:1cc4593f62e2 | 34 | wait_ms( 50 ); |
kagyroy | 0:1cc4593f62e2 | 35 | // } |
kagyroy | 0:1cc4593f62e2 | 36 | |
kagyroy | 0:1cc4593f62e2 | 37 | |
kagyroy | 0:1cc4593f62e2 | 38 | int frame[200][200][3]; |
kagyroy | 0:1cc4593f62e2 | 39 | |
kagyroy | 0:1cc4593f62e2 | 40 | for(int i=0; i<200; i++) |
kagyroy | 0:1cc4593f62e2 | 41 | { |
kagyroy | 0:1cc4593f62e2 | 42 | for(int j=0; j<200; j++) |
kagyroy | 0:1cc4593f62e2 | 43 | { |
kagyroy | 0:1cc4593f62e2 | 44 | frame[i][j][0] = 100; |
kagyroy | 0:1cc4593f62e2 | 45 | frame[i][j][1] = 100; |
kagyroy | 0:1cc4593f62e2 | 46 | frame[i][j][2] = 100; |
kagyroy | 0:1cc4593f62e2 | 47 | } |
kagyroy | 0:1cc4593f62e2 | 48 | } |
kagyroy | 0:1cc4593f62e2 | 49 | |
kagyroy | 0:1cc4593f62e2 | 50 | while(1) |
kagyroy | 0:1cc4593f62e2 | 51 | { |
kagyroy | 0:1cc4593f62e2 | 52 | for(int i=0; i<200; i++) |
kagyroy | 0:1cc4593f62e2 | 53 | { |
kagyroy | 0:1cc4593f62e2 | 54 | for(int j=0; j<200; j++) |
kagyroy | 0:1cc4593f62e2 | 55 | { |
kagyroy | 0:1cc4593f62e2 | 56 | device.printf("%d\n",frame[i][j][0]); |
kagyroy | 0:1cc4593f62e2 | 57 | |
kagyroy | 0:1cc4593f62e2 | 58 | wait_ms( 50 ); |
kagyroy | 0:1cc4593f62e2 | 59 | } |
kagyroy | 0:1cc4593f62e2 | 60 | } |
kagyroy | 0:1cc4593f62e2 | 61 | } |
kagyroy | 0:1cc4593f62e2 | 62 | |
kagyroy | 0:1cc4593f62e2 | 63 | |
kagyroy | 0:1cc4593f62e2 | 64 | |
kagyroy | 0:1cc4593f62e2 | 65 | |
kagyroy | 0:1cc4593f62e2 | 66 | |
kagyroy | 0:1cc4593f62e2 | 67 | /* |
kagyroy | 0:1cc4593f62e2 | 68 | device.printf("s"); //start chara |
kagyroy | 0:1cc4593f62e2 | 69 | for(int i=0; i<200; i++) |
kagyroy | 0:1cc4593f62e2 | 70 | { |
kagyroy | 0:1cc4593f62e2 | 71 | for(int j=0; j<200; j++) |
kagyroy | 0:1cc4593f62e2 | 72 | { |
kagyroy | 0:1cc4593f62e2 | 73 | device.printf("%d\n",frame[i][j][0]); |
kagyroy | 0:1cc4593f62e2 | 74 | } |
kagyroy | 0:1cc4593f62e2 | 75 | device.printf("h"); //horizontal transition |
kagyroy | 0:1cc4593f62e2 | 76 | } |
kagyroy | 0:1cc4593f62e2 | 77 | device.printf("e"); //vertical end |
kagyroy | 0:1cc4593f62e2 | 78 | */ |
kagyroy | 0:1cc4593f62e2 | 79 | //testing area |
kagyroy | 0:1cc4593f62e2 | 80 | |
kagyroy | 0:1cc4593f62e2 | 81 | |
kagyroy | 0:1cc4593f62e2 | 82 | while(1) |
kagyroy | 0:1cc4593f62e2 | 83 | { |
kagyroy | 0:1cc4593f62e2 | 84 | key = device.getc(); |
kagyroy | 0:1cc4593f62e2 | 85 | switch( key ) |
kagyroy | 0:1cc4593f62e2 | 86 | { |
kagyroy | 0:1cc4593f62e2 | 87 | case 'f': |
kagyroy | 0:1cc4593f62e2 | 88 | move_f( d ); |
kagyroy | 0:1cc4593f62e2 | 89 | break; |
kagyroy | 0:1cc4593f62e2 | 90 | case 'b': |
kagyroy | 0:1cc4593f62e2 | 91 | move_b( d ); |
kagyroy | 0:1cc4593f62e2 | 92 | break; |
kagyroy | 0:1cc4593f62e2 | 93 | case 'r': |
kagyroy | 0:1cc4593f62e2 | 94 | turn_r( d ); |
kagyroy | 0:1cc4593f62e2 | 95 | break; |
kagyroy | 0:1cc4593f62e2 | 96 | case 'l': |
kagyroy | 0:1cc4593f62e2 | 97 | turn_l( d ); |
kagyroy | 0:1cc4593f62e2 | 98 | break; |
kagyroy | 0:1cc4593f62e2 | 99 | case 's': |
kagyroy | 0:1cc4593f62e2 | 100 | stop(); |
kagyroy | 0:1cc4593f62e2 | 101 | break; |
kagyroy | 0:1cc4593f62e2 | 102 | case 'a': |
kagyroy | 0:1cc4593f62e2 | 103 | d += 0.01; |
kagyroy | 0:1cc4593f62e2 | 104 | break; |
kagyroy | 0:1cc4593f62e2 | 105 | case 'm': |
kagyroy | 0:1cc4593f62e2 | 106 | d -= 0.01; |
kagyroy | 0:1cc4593f62e2 | 107 | break; |
kagyroy | 0:1cc4593f62e2 | 108 | default: |
kagyroy | 0:1cc4593f62e2 | 109 | break; |
kagyroy | 0:1cc4593f62e2 | 110 | } |
kagyroy | 0:1cc4593f62e2 | 111 | |
kagyroy | 0:1cc4593f62e2 | 112 | // device.printf("duty = %1.2f\r", d); |
kagyroy | 0:1cc4593f62e2 | 113 | |
kagyroy | 0:1cc4593f62e2 | 114 | } |
kagyroy | 0:1cc4593f62e2 | 115 | } |
kagyroy | 0:1cc4593f62e2 | 116 | |
kagyroy | 0:1cc4593f62e2 | 117 | void move_f( float d ) |
kagyroy | 0:1cc4593f62e2 | 118 | { |
kagyroy | 0:1cc4593f62e2 | 119 | right_P.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 120 | right_N.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 121 | left_P.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 122 | left_N.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 123 | right_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 124 | left_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 125 | /*right_pwm.pulsewidth_us( d ); |
kagyroy | 0:1cc4593f62e2 | 126 | left_pwm.pulsewidth_us( d );*/ |
kagyroy | 0:1cc4593f62e2 | 127 | } |
kagyroy | 0:1cc4593f62e2 | 128 | |
kagyroy | 0:1cc4593f62e2 | 129 | void move_b( float d ) |
kagyroy | 0:1cc4593f62e2 | 130 | { |
kagyroy | 0:1cc4593f62e2 | 131 | right_P.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 132 | right_N.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 133 | left_P.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 134 | left_N.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 135 | right_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 136 | left_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 137 | /*right_pwm.pulsewidth_us( d ); |
kagyroy | 0:1cc4593f62e2 | 138 | left_pwm.pulsewidth_us( d );*/ |
kagyroy | 0:1cc4593f62e2 | 139 | } |
kagyroy | 0:1cc4593f62e2 | 140 | |
kagyroy | 0:1cc4593f62e2 | 141 | void turn_r( float d ) |
kagyroy | 0:1cc4593f62e2 | 142 | { |
kagyroy | 0:1cc4593f62e2 | 143 | right_P.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 144 | right_N.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 145 | left_P.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 146 | left_N.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 147 | right_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 148 | left_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 149 | /*right_pwm.pulsewidth_us( d ); |
kagyroy | 0:1cc4593f62e2 | 150 | left_pwm.pulsewidth_us( d );*/ |
kagyroy | 0:1cc4593f62e2 | 151 | } |
kagyroy | 0:1cc4593f62e2 | 152 | |
kagyroy | 0:1cc4593f62e2 | 153 | void turn_l( float d ) |
kagyroy | 0:1cc4593f62e2 | 154 | { |
kagyroy | 0:1cc4593f62e2 | 155 | right_P.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 156 | right_N.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 157 | left_P.write( 1 ); |
kagyroy | 0:1cc4593f62e2 | 158 | left_N.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 159 | right_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 160 | left_pwm.write( d ); |
kagyroy | 0:1cc4593f62e2 | 161 | /*right_pwm.pulsewidth_us( d ); |
kagyroy | 0:1cc4593f62e2 | 162 | left_pwm.pulsewidth_us( d );*/ |
kagyroy | 0:1cc4593f62e2 | 163 | } |
kagyroy | 0:1cc4593f62e2 | 164 | |
kagyroy | 0:1cc4593f62e2 | 165 | void stop( void ) |
kagyroy | 0:1cc4593f62e2 | 166 | { |
kagyroy | 0:1cc4593f62e2 | 167 | right_P.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 168 | right_N.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 169 | left_P.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 170 | left_N.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 171 | right_pwm.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 172 | left_pwm.write( 0 ); |
kagyroy | 0:1cc4593f62e2 | 173 | } |