masamitsu shibata
/
traserTA_termB_final
タームB、ファイナルのプログラム
main.cpp@0:115e12879ffb, 2016-09-29 (annotated)
- Committer:
- 12f2025e
- Date:
- Thu Sep 29 07:25:38 2016 +0000
- Revision:
- 0:115e12879ffb
???B????????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
12f2025e | 0:115e12879ffb | 1 | #include "mbed.h" |
12f2025e | 0:115e12879ffb | 2 | |
12f2025e | 0:115e12879ffb | 3 | DigitalIn in1(PTE21);//左 |
12f2025e | 0:115e12879ffb | 4 | DigitalIn in2(PTE20);//左中 |
12f2025e | 0:115e12879ffb | 5 | DigitalIn in3(PTE23);//右中 |
12f2025e | 0:115e12879ffb | 6 | DigitalIn in4(PTE22);//右 |
12f2025e | 0:115e12879ffb | 7 | |
12f2025e | 0:115e12879ffb | 8 | DigitalOut led1(PTB8);//左 |
12f2025e | 0:115e12879ffb | 9 | DigitalOut led2(PTB9);//左中 |
12f2025e | 0:115e12879ffb | 10 | DigitalOut led3(PTB10);//右中 |
12f2025e | 0:115e12879ffb | 11 | DigitalOut led4(PTB11);//右 |
12f2025e | 0:115e12879ffb | 12 | |
12f2025e | 0:115e12879ffb | 13 | BusOut cmotor(PTA1,PTA2); |
12f2025e | 0:115e12879ffb | 14 | PwmOut vc(PTD4); |
12f2025e | 0:115e12879ffb | 15 | BusOut lmotor(PTC0,PTC7); |
12f2025e | 0:115e12879ffb | 16 | PwmOut vl(PTA12); |
12f2025e | 0:115e12879ffb | 17 | BusOut rmotor(PTC6,PTC5); |
12f2025e | 0:115e12879ffb | 18 | PwmOut vr(PTA4); |
12f2025e | 0:115e12879ffb | 19 | int lift_count = 0; |
12f2025e | 0:115e12879ffb | 20 | |
12f2025e | 0:115e12879ffb | 21 | int main() { |
12f2025e | 0:115e12879ffb | 22 | while(1) { |
12f2025e | 0:115e12879ffb | 23 | if(in1 == 1)//黒の時光る 1:白 0:黒 |
12f2025e | 0:115e12879ffb | 24 | led1 = 0;//1:光る 0:光らない |
12f2025e | 0:115e12879ffb | 25 | else |
12f2025e | 0:115e12879ffb | 26 | led1 = 1; |
12f2025e | 0:115e12879ffb | 27 | |
12f2025e | 0:115e12879ffb | 28 | if(in2 == 1) |
12f2025e | 0:115e12879ffb | 29 | led2 = 0; |
12f2025e | 0:115e12879ffb | 30 | else |
12f2025e | 0:115e12879ffb | 31 | led2 = 1; |
12f2025e | 0:115e12879ffb | 32 | |
12f2025e | 0:115e12879ffb | 33 | if(in3 == 1) |
12f2025e | 0:115e12879ffb | 34 | led3 = 0; |
12f2025e | 0:115e12879ffb | 35 | else |
12f2025e | 0:115e12879ffb | 36 | led3 = 1; |
12f2025e | 0:115e12879ffb | 37 | |
12f2025e | 0:115e12879ffb | 38 | if(in4 == 1) |
12f2025e | 0:115e12879ffb | 39 | led4 = 0; |
12f2025e | 0:115e12879ffb | 40 | else |
12f2025e | 0:115e12879ffb | 41 | led4 = 1; |
12f2025e | 0:115e12879ffb | 42 | |
12f2025e | 0:115e12879ffb | 43 | if(in1 == 0 && in2 == 0) |
12f2025e | 0:115e12879ffb | 44 | { |
12f2025e | 0:115e12879ffb | 45 | while(in4 == 1) |
12f2025e | 0:115e12879ffb | 46 | { |
12f2025e | 0:115e12879ffb | 47 | if(in1 == 1)//黒の時光る 1:白 0:黒 |
12f2025e | 0:115e12879ffb | 48 | led1 = 0;//1:光る 0:光らない |
12f2025e | 0:115e12879ffb | 49 | else |
12f2025e | 0:115e12879ffb | 50 | led1 = 1; |
12f2025e | 0:115e12879ffb | 51 | |
12f2025e | 0:115e12879ffb | 52 | if(in2 == 1) |
12f2025e | 0:115e12879ffb | 53 | led2 = 0; |
12f2025e | 0:115e12879ffb | 54 | else |
12f2025e | 0:115e12879ffb | 55 | led2 = 1; |
12f2025e | 0:115e12879ffb | 56 | |
12f2025e | 0:115e12879ffb | 57 | if(in3 == 1) |
12f2025e | 0:115e12879ffb | 58 | led3 = 0; |
12f2025e | 0:115e12879ffb | 59 | else |
12f2025e | 0:115e12879ffb | 60 | led3 = 1; |
12f2025e | 0:115e12879ffb | 61 | |
12f2025e | 0:115e12879ffb | 62 | if(in4 == 1) |
12f2025e | 0:115e12879ffb | 63 | led4 = 0; |
12f2025e | 0:115e12879ffb | 64 | else |
12f2025e | 0:115e12879ffb | 65 | led4 = 1; |
12f2025e | 0:115e12879ffb | 66 | |
12f2025e | 0:115e12879ffb | 67 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 68 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 69 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 70 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 71 | if(in1 == 0 && in2 == 1 && in3 == 0 && in4 == 0) |
12f2025e | 0:115e12879ffb | 72 | { |
12f2025e | 0:115e12879ffb | 73 | if(lift_count == 0) |
12f2025e | 0:115e12879ffb | 74 | { |
12f2025e | 0:115e12879ffb | 75 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 76 | vc = 0.5f; |
12f2025e | 0:115e12879ffb | 77 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 78 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 79 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 80 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 81 | wait(0.5); |
12f2025e | 0:115e12879ffb | 82 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 83 | vc = 0.0f; |
12f2025e | 0:115e12879ffb | 84 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 85 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 86 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 87 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 88 | wait(1.0); |
12f2025e | 0:115e12879ffb | 89 | lift_count = 1; |
12f2025e | 0:115e12879ffb | 90 | break; |
12f2025e | 0:115e12879ffb | 91 | } |
12f2025e | 0:115e12879ffb | 92 | else |
12f2025e | 0:115e12879ffb | 93 | { |
12f2025e | 0:115e12879ffb | 94 | cmotor = 2; |
12f2025e | 0:115e12879ffb | 95 | vc = 0.5f; |
12f2025e | 0:115e12879ffb | 96 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 97 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 98 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 99 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 100 | wait(0.5); |
12f2025e | 0:115e12879ffb | 101 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 102 | vc = 0.0f; |
12f2025e | 0:115e12879ffb | 103 | lmotor = 2; |
12f2025e | 0:115e12879ffb | 104 | vl = 1.0f; |
12f2025e | 0:115e12879ffb | 105 | rmotor = 2; |
12f2025e | 0:115e12879ffb | 106 | vr = 1.0f; |
12f2025e | 0:115e12879ffb | 107 | wait(2); |
12f2025e | 0:115e12879ffb | 108 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 109 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 110 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 111 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 112 | wait(5); |
12f2025e | 0:115e12879ffb | 113 | lift_count = 0; |
12f2025e | 0:115e12879ffb | 114 | break; |
12f2025e | 0:115e12879ffb | 115 | } |
12f2025e | 0:115e12879ffb | 116 | } |
12f2025e | 0:115e12879ffb | 117 | } |
12f2025e | 0:115e12879ffb | 118 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 119 | vl = 0.4f; |
12f2025e | 0:115e12879ffb | 120 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 121 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 122 | wait(1); |
12f2025e | 0:115e12879ffb | 123 | } |
12f2025e | 0:115e12879ffb | 124 | |
12f2025e | 0:115e12879ffb | 125 | /* if(in3 == 0 && in4 == 0) |
12f2025e | 0:115e12879ffb | 126 | { |
12f2025e | 0:115e12879ffb | 127 | while(in1 == 1) |
12f2025e | 0:115e12879ffb | 128 | { |
12f2025e | 0:115e12879ffb | 129 | if(in1 == 1)//黒の時光る 1:白 0:黒 |
12f2025e | 0:115e12879ffb | 130 | led1 = 0;//1:光る 0:光らない |
12f2025e | 0:115e12879ffb | 131 | else |
12f2025e | 0:115e12879ffb | 132 | led1 = 1; |
12f2025e | 0:115e12879ffb | 133 | |
12f2025e | 0:115e12879ffb | 134 | if(in2 == 1) |
12f2025e | 0:115e12879ffb | 135 | led2 = 0; |
12f2025e | 0:115e12879ffb | 136 | else |
12f2025e | 0:115e12879ffb | 137 | led2 = 1; |
12f2025e | 0:115e12879ffb | 138 | |
12f2025e | 0:115e12879ffb | 139 | if(in3 == 1) |
12f2025e | 0:115e12879ffb | 140 | led3 = 0; |
12f2025e | 0:115e12879ffb | 141 | else |
12f2025e | 0:115e12879ffb | 142 | led3 = 1; |
12f2025e | 0:115e12879ffb | 143 | |
12f2025e | 0:115e12879ffb | 144 | if(in4 == 1) |
12f2025e | 0:115e12879ffb | 145 | led4 = 0; |
12f2025e | 0:115e12879ffb | 146 | else |
12f2025e | 0:115e12879ffb | 147 | led4 = 1; |
12f2025e | 0:115e12879ffb | 148 | |
12f2025e | 0:115e12879ffb | 149 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 150 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 151 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 152 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 153 | if(in1 == 0 && in2 == 1 && in3 == 0 && in4 == 0) |
12f2025e | 0:115e12879ffb | 154 | { |
12f2025e | 0:115e12879ffb | 155 | if(lift_count == 0) |
12f2025e | 0:115e12879ffb | 156 | { |
12f2025e | 0:115e12879ffb | 157 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 158 | vc = 0.5f; |
12f2025e | 0:115e12879ffb | 159 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 160 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 161 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 162 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 163 | wait(0.5); |
12f2025e | 0:115e12879ffb | 164 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 165 | vc = 0.0f; |
12f2025e | 0:115e12879ffb | 166 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 167 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 168 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 169 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 170 | wait(1.0); |
12f2025e | 0:115e12879ffb | 171 | lift_count = 1; |
12f2025e | 0:115e12879ffb | 172 | break; |
12f2025e | 0:115e12879ffb | 173 | } |
12f2025e | 0:115e12879ffb | 174 | else |
12f2025e | 0:115e12879ffb | 175 | { |
12f2025e | 0:115e12879ffb | 176 | cmotor = 2; |
12f2025e | 0:115e12879ffb | 177 | vc = 0.5f; |
12f2025e | 0:115e12879ffb | 178 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 179 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 180 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 181 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 182 | wait(0.5); |
12f2025e | 0:115e12879ffb | 183 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 184 | vc = 0.0f; |
12f2025e | 0:115e12879ffb | 185 | lmotor = 2; |
12f2025e | 0:115e12879ffb | 186 | vl = 1.0f; |
12f2025e | 0:115e12879ffb | 187 | rmotor = 2; |
12f2025e | 0:115e12879ffb | 188 | vr = 1.0f; |
12f2025e | 0:115e12879ffb | 189 | wait(2); |
12f2025e | 0:115e12879ffb | 190 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 191 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 192 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 193 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 194 | wait(5); |
12f2025e | 0:115e12879ffb | 195 | lift_count = 0; |
12f2025e | 0:115e12879ffb | 196 | break; |
12f2025e | 0:115e12879ffb | 197 | } |
12f2025e | 0:115e12879ffb | 198 | } |
12f2025e | 0:115e12879ffb | 199 | } |
12f2025e | 0:115e12879ffb | 200 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 201 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 202 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 203 | vr = 0.4f; |
12f2025e | 0:115e12879ffb | 204 | wait(1); |
12f2025e | 0:115e12879ffb | 205 | } |
12f2025e | 0:115e12879ffb | 206 | */ |
12f2025e | 0:115e12879ffb | 207 | /////////////////////// |
12f2025e | 0:115e12879ffb | 208 | if(in2 == 0 && in3 == 0) |
12f2025e | 0:115e12879ffb | 209 | { |
12f2025e | 0:115e12879ffb | 210 | lmotor = 0; |
12f2025e | 0:115e12879ffb | 211 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 212 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 213 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 214 | } |
12f2025e | 0:115e12879ffb | 215 | else if(in2 == 0 && in3 == 1) |
12f2025e | 0:115e12879ffb | 216 | { |
12f2025e | 0:115e12879ffb | 217 | lmotor = 2; |
12f2025e | 0:115e12879ffb | 218 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 219 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 220 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 221 | } |
12f2025e | 0:115e12879ffb | 222 | else if(in2 == 1 && in3 == 0) |
12f2025e | 0:115e12879ffb | 223 | { |
12f2025e | 0:115e12879ffb | 224 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 225 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 226 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 227 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 228 | } |
12f2025e | 0:115e12879ffb | 229 | else |
12f2025e | 0:115e12879ffb | 230 | { |
12f2025e | 0:115e12879ffb | 231 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 232 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 233 | rmotor = 0; |
12f2025e | 0:115e12879ffb | 234 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 235 | } |
12f2025e | 0:115e12879ffb | 236 | |
12f2025e | 0:115e12879ffb | 237 | if(in1 == 0 && in2 == 1 && in3 == 0 && in4 == 0) |
12f2025e | 0:115e12879ffb | 238 | { |
12f2025e | 0:115e12879ffb | 239 | if(lift_count == 0) |
12f2025e | 0:115e12879ffb | 240 | { |
12f2025e | 0:115e12879ffb | 241 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 242 | vc = 0.5f; |
12f2025e | 0:115e12879ffb | 243 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 244 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 245 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 246 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 247 | wait(0.5); |
12f2025e | 0:115e12879ffb | 248 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 249 | vc = 0.0f; |
12f2025e | 0:115e12879ffb | 250 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 251 | vl = 0.1f; |
12f2025e | 0:115e12879ffb | 252 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 253 | vr = 0.1f; |
12f2025e | 0:115e12879ffb | 254 | wait(1.0); |
12f2025e | 0:115e12879ffb | 255 | lift_count = 1; |
12f2025e | 0:115e12879ffb | 256 | } |
12f2025e | 0:115e12879ffb | 257 | else |
12f2025e | 0:115e12879ffb | 258 | { |
12f2025e | 0:115e12879ffb | 259 | cmotor = 2; |
12f2025e | 0:115e12879ffb | 260 | vc = 0.5f; |
12f2025e | 0:115e12879ffb | 261 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 262 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 263 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 264 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 265 | wait(0.5); |
12f2025e | 0:115e12879ffb | 266 | cmotor = 1; |
12f2025e | 0:115e12879ffb | 267 | vc = 0.0f; |
12f2025e | 0:115e12879ffb | 268 | lmotor = 2; |
12f2025e | 0:115e12879ffb | 269 | vl = 1.0f; |
12f2025e | 0:115e12879ffb | 270 | rmotor = 2; |
12f2025e | 0:115e12879ffb | 271 | vr = 1.0f; |
12f2025e | 0:115e12879ffb | 272 | wait(2); |
12f2025e | 0:115e12879ffb | 273 | lmotor = 1; |
12f2025e | 0:115e12879ffb | 274 | vl = 0.0f; |
12f2025e | 0:115e12879ffb | 275 | rmotor = 1; |
12f2025e | 0:115e12879ffb | 276 | vr = 0.0f; |
12f2025e | 0:115e12879ffb | 277 | wait(5); |
12f2025e | 0:115e12879ffb | 278 | lift_count = 0; |
12f2025e | 0:115e12879ffb | 279 | } |
12f2025e | 0:115e12879ffb | 280 | } |
12f2025e | 0:115e12879ffb | 281 | |
12f2025e | 0:115e12879ffb | 282 | } |
12f2025e | 0:115e12879ffb | 283 | } |