Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of 2015robot_main by
manualMode.h@93:9cacc1763463, 2015-10-16 (annotated)
- Committer:
- unicore32
- Date:
- Fri Oct 16 06:25:58 2015 +0000
- Revision:
- 93:9cacc1763463
- Parent:
- 91:83c2e0381384
- Child:
- 101:b67d33e56b66
20151016 swingspeed??????
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| DeguNaoto | 22:3996c3f41922 | 1 | #ifndef MANUALMODE_H |
| DeguNaoto | 22:3996c3f41922 | 2 | #define MANUALMODE_H |
| DeguNaoto | 22:3996c3f41922 | 3 | |
| DeguNaoto | 57:3fbd487e055e | 4 | #ifdef IM920 |
| DeguNaoto | 52:d9e1629da852 | 5 | void manualMoveIM920() |
| DeguNaoto | 31:74e77ef0831c | 6 | { |
| DeguNaoto | 87:6b6b6611d33f | 7 | if(Y<2) { |
| DeguNaoto | 31:74e77ef0831c | 8 | Move_l(-0.4); |
| DeguNaoto | 31:74e77ef0831c | 9 | Move_r(0.4); |
| DeguNaoto | 51:cb430192b28b | 10 | } |
| DeguNaoto | 87:6b6b6611d33f | 11 | else if(Y>6) { |
| DeguNaoto | 31:74e77ef0831c | 12 | Move_l(0.4); |
| DeguNaoto | 31:74e77ef0831c | 13 | Move_r(-0.4); |
| DeguNaoto | 51:cb430192b28b | 14 | } |
| DeguNaoto | 51:cb430192b28b | 15 | else { |
| DeguNaoto | 83:e1638c58e1f1 | 16 | if(X<2) { |
| DeguNaoto | 79:7f86e18f40ef | 17 | Move_l(0.6); |
| DeguNaoto | 79:7f86e18f40ef | 18 | Move_r(0.6); |
| DeguNaoto | 83:e1638c58e1f1 | 19 | } else if(X>6) { |
| DeguNaoto | 83:e1638c58e1f1 | 20 | Move_l(-0.61); |
| DeguNaoto | 79:7f86e18f40ef | 21 | Move_r(-0.6); |
| DeguNaoto | 31:74e77ef0831c | 22 | } else { |
| DeguNaoto | 24:271da6144a02 | 23 | Move_l(0.0); |
| DeguNaoto | 24:271da6144a02 | 24 | Move_r(0.0); |
| DeguNaoto | 24:271da6144a02 | 25 | } |
| DeguNaoto | 52:d9e1629da852 | 26 | } |
| DeguNaoto | 23:5c56747bcc43 | 27 | } |
| DeguNaoto | 52:d9e1629da852 | 28 | void manualIM920() |
| DeguNaoto | 31:74e77ef0831c | 29 | { |
| DeguNaoto | 52:d9e1629da852 | 30 | if(b==7){ /*mode change*/ |
| DeguNaoto | 52:d9e1629da852 | 31 | if(edge7){ |
| DeguNaoto | 52:d9e1629da852 | 32 | edge7=0; |
| DeguNaoto | 52:d9e1629da852 | 33 | autoflag=1; |
| DeguNaoto | 52:d9e1629da852 | 34 | Indicator4=1; |
| DeguNaoto | 52:d9e1629da852 | 35 | IndicatorAuto=0; |
| DeguNaoto | 83:e1638c58e1f1 | 36 | resetState(); |
| DeguNaoto | 87:6b6b6611d33f | 37 | flaga=0; |
| DeguNaoto | 88:cbed08732872 | 38 | spcount=speed; |
| DeguNaoto | 52:d9e1629da852 | 39 | } |
| DeguNaoto | 52:d9e1629da852 | 40 | } |
| DeguNaoto | 87:6b6b6611d33f | 41 | else if(b==5){ |
| DeguNaoto | 87:6b6b6611d33f | 42 | if(edge5){ |
| DeguNaoto | 87:6b6b6611d33f | 43 | edge5=0; |
| unicore32 | 93:9cacc1763463 | 44 | interruptSwingSpeed.attach(&countSwingSpeed, 0.05); |
| unicore32 | 93:9cacc1763463 | 45 | /* |
| unicore32 | 91:83c2e0381384 | 46 | for(float i=0.0;i<swingspeed;i+=swingspeed/10.0){ |
| unicore32 | 91:83c2e0381384 | 47 | targSwingRadVelocity=i; |
| unicore32 | 91:83c2e0381384 | 48 | wait(0.05); |
| unicore32 | 91:83c2e0381384 | 49 | } |
| unicore32 | 93:9cacc1763463 | 50 | */ |
| DeguNaoto | 90:9fe39ebe721f | 51 | // targSwingRadVelocity = swingspeed; |
| unicore32 | 91:83c2e0381384 | 52 | /*for(float i=0.0;i<0.6;i+=0.01){ |
| DeguNaoto | 87:6b6b6611d33f | 53 | Motor_swing=i; |
| DeguNaoto | 87:6b6b6611d33f | 54 | wait(0.05); |
| DeguNaoto | 87:6b6b6611d33f | 55 | } |
| unicore32 | 91:83c2e0381384 | 56 | Motor_swing = 0.6;*/ |
| DeguNaoto | 60:4a75f3f3a934 | 57 | } |
| DeguNaoto | 52:d9e1629da852 | 58 | } |
| DeguNaoto | 87:6b6b6611d33f | 59 | else if(b==8){ |
| DeguNaoto | 87:6b6b6611d33f | 60 | if(edge8){ |
| DeguNaoto | 87:6b6b6611d33f | 61 | edge8=0; |
| DeguNaoto | 57:3fbd487e055e | 62 | enableShoot=1; |
| DeguNaoto | 52:d9e1629da852 | 63 | } |
| DeguNaoto | 83:e1638c58e1f1 | 64 | } |
| DeguNaoto | 87:6b6b6611d33f | 65 | else if(b==9){ |
| unicore32 | 91:83c2e0381384 | 66 | targSwingRadVelocity = 0.0; |
| unicore32 | 91:83c2e0381384 | 67 | contSwing.reset(); |
| unicore32 | 93:9cacc1763463 | 68 | interruptSwingSpeed.detach(); |
| unicore32 | 91:83c2e0381384 | 69 | // Motor_swing = 0.0; |
| DeguNaoto | 87:6b6b6611d33f | 70 | } |
| DeguNaoto | 87:6b6b6611d33f | 71 | /*else if(b==5){ |
| DeguNaoto | 74:5dd06d211b12 | 72 | sendData(1,5); |
| DeguNaoto | 74:5dd06d211b12 | 73 | } |
| DeguNaoto | 83:e1638c58e1f1 | 74 | else if(b==6){ |
| DeguNaoto | 74:5dd06d211b12 | 75 | sendData(1,4); |
| DeguNaoto | 87:6b6b6611d33f | 76 | }*/ |
| DeguNaoto | 74:5dd06d211b12 | 77 | else if(b==1){ /*L down*/ |
| DeguNaoto | 74:5dd06d211b12 | 78 | if(edge1){ |
| DeguNaoto | 74:5dd06d211b12 | 79 | edge1=0; |
| DeguNaoto | 74:5dd06d211b12 | 80 | if(stateL!=1) stateL--; |
| DeguNaoto | 74:5dd06d211b12 | 81 | sendData(4,stateL); |
| DeguNaoto | 74:5dd06d211b12 | 82 | } |
| DeguNaoto | 74:5dd06d211b12 | 83 | } |
| DeguNaoto | 74:5dd06d211b12 | 84 | else if(b==2){ /*L up*/ |
| DeguNaoto | 74:5dd06d211b12 | 85 | if(edge2){ |
| DeguNaoto | 74:5dd06d211b12 | 86 | edge2=0; |
| unicore32 | 78:abb760e0a935 | 87 | if(stateL!=92) stateL++; |
| DeguNaoto | 74:5dd06d211b12 | 88 | sendData(4,stateL); |
| DeguNaoto | 74:5dd06d211b12 | 89 | } |
| DeguNaoto | 52:d9e1629da852 | 90 | } |
| DeguNaoto | 74:5dd06d211b12 | 91 | else if(b==3){ /*R down*/ |
| DeguNaoto | 74:5dd06d211b12 | 92 | if(edge3){ |
| DeguNaoto | 74:5dd06d211b12 | 93 | edge3=0; |
| DeguNaoto | 74:5dd06d211b12 | 94 | if(stateR!=1) stateR--; |
| DeguNaoto | 74:5dd06d211b12 | 95 | sendData(5,stateR); |
| DeguNaoto | 74:5dd06d211b12 | 96 | } |
| DeguNaoto | 74:5dd06d211b12 | 97 | } |
| DeguNaoto | 74:5dd06d211b12 | 98 | else if(b==4){ /*R up*/ |
| DeguNaoto | 74:5dd06d211b12 | 99 | if(edge4){ |
| DeguNaoto | 74:5dd06d211b12 | 100 | edge4=0; |
| unicore32 | 78:abb760e0a935 | 101 | if(stateR!=92) stateR++; |
| DeguNaoto | 74:5dd06d211b12 | 102 | sendData(5,stateR); |
| DeguNaoto | 74:5dd06d211b12 | 103 | } |
| DeguNaoto | 52:d9e1629da852 | 104 | } |
| DeguNaoto | 52:d9e1629da852 | 105 | if(b!=7) edge7=1; |
| DeguNaoto | 52:d9e1629da852 | 106 | if(b!=1) edge1=1; |
| DeguNaoto | 52:d9e1629da852 | 107 | if(b!=2) edge2=1; |
| DeguNaoto | 52:d9e1629da852 | 108 | if(b!=3) edge3=1; |
| DeguNaoto | 52:d9e1629da852 | 109 | if(b!=4) edge4=1; |
| DeguNaoto | 52:d9e1629da852 | 110 | if(b!=5) edge5=1; |
| DeguNaoto | 83:e1638c58e1f1 | 111 | if(b!=8) edge8=1; |
| DeguNaoto | 83:e1638c58e1f1 | 112 | if(b!=9) edge9=1; |
| DeguNaoto | 57:3fbd487e055e | 113 | } |
| DeguNaoto | 57:3fbd487e055e | 114 | #else |
| DeguNaoto | 57:3fbd487e055e | 115 | void manualMovePS3() |
| DeguNaoto | 57:3fbd487e055e | 116 | { |
| DeguNaoto | 66:14df82661dfa | 117 | if(analog_ly>50) { |
| DeguNaoto | 57:3fbd487e055e | 118 | Move_l(-0.4); |
| DeguNaoto | 57:3fbd487e055e | 119 | Move_r(0.4); |
| DeguNaoto | 57:3fbd487e055e | 120 | } |
| DeguNaoto | 66:14df82661dfa | 121 | else if(analog_ly<-50) { |
| DeguNaoto | 57:3fbd487e055e | 122 | Move_l(0.4); |
| DeguNaoto | 57:3fbd487e055e | 123 | Move_r(-0.4); |
| DeguNaoto | 48:64d005c70df2 | 124 | } |
| DeguNaoto | 57:3fbd487e055e | 125 | else { |
| DeguNaoto | 66:14df82661dfa | 126 | if(analog_lx>50) { |
| DeguNaoto | 79:7f86e18f40ef | 127 | Move_l(0.6); |
| DeguNaoto | 79:7f86e18f40ef | 128 | Move_r(0.6); |
| DeguNaoto | 66:14df82661dfa | 129 | } else if(analog_lx<-50) { |
| DeguNaoto | 79:7f86e18f40ef | 130 | Move_l(-0.6); |
| DeguNaoto | 79:7f86e18f40ef | 131 | Move_r(-0.6); |
| DeguNaoto | 57:3fbd487e055e | 132 | } else { |
| DeguNaoto | 57:3fbd487e055e | 133 | Move_l(0.0); |
| DeguNaoto | 57:3fbd487e055e | 134 | Move_r(0.0); |
| DeguNaoto | 57:3fbd487e055e | 135 | } |
| DeguNaoto | 57:3fbd487e055e | 136 | } |
| DeguNaoto | 57:3fbd487e055e | 137 | } |
| DeguNaoto | 57:3fbd487e055e | 138 | void manualPS3(){ |
| DeguNaoto | 57:3fbd487e055e | 139 | if(circle){ /*mode change*/ |
| DeguNaoto | 57:3fbd487e055e | 140 | if(edge_circle){ |
| DeguNaoto | 57:3fbd487e055e | 141 | edge_circle=0; |
| DeguNaoto | 57:3fbd487e055e | 142 | autoflag=1; |
| DeguNaoto | 57:3fbd487e055e | 143 | Indicator4=1; |
| DeguNaoto | 57:3fbd487e055e | 144 | IndicatorAuto=0; |
| DeguNaoto | 83:e1638c58e1f1 | 145 | resetState(); |
| DeguNaoto | 57:3fbd487e055e | 146 | } |
| DeguNaoto | 57:3fbd487e055e | 147 | } |
| DeguNaoto | 57:3fbd487e055e | 148 | else if(triangle){ |
| DeguNaoto | 84:919a335ac81e | 149 | if(edge_triangle){ |
| DeguNaoto | 84:919a335ac81e | 150 | edge_triangle=0; |
| DeguNaoto | 85:dd18a2d79956 | 151 | /*if(targSwingRadVelocity == 0.0) targSwingRadVelocity = swingspeed; |
| DeguNaoto | 84:919a335ac81e | 152 | else { |
| DeguNaoto | 84:919a335ac81e | 153 | targSwingRadVelocity = 0.0; |
| DeguNaoto | 84:919a335ac81e | 154 | contSwing.reset(); |
| DeguNaoto | 85:dd18a2d79956 | 155 | }*/ |
| DeguNaoto | 85:dd18a2d79956 | 156 | targSwingRadVelocity = swingspeed; |
| DeguNaoto | 84:919a335ac81e | 157 | } |
| DeguNaoto | 66:14df82661dfa | 158 | /*for(float i=0.0;i<1.0;i+=0.01){ |
| DeguNaoto | 60:4a75f3f3a934 | 159 | Motor_swing=i; |
| DeguNaoto | 62:02a44f5bc51e | 160 | wait(0.02); |
| DeguNaoto | 60:4a75f3f3a934 | 161 | } |
| DeguNaoto | 66:14df82661dfa | 162 | Motor_swing = 1.0;*/ |
| DeguNaoto | 57:3fbd487e055e | 163 | } |
| DeguNaoto | 85:dd18a2d79956 | 164 | else if(cross){ |
| DeguNaoto | 85:dd18a2d79956 | 165 | targSwingRadVelocity = 0.0; |
| DeguNaoto | 85:dd18a2d79956 | 166 | contSwing.reset(); |
| DeguNaoto | 85:dd18a2d79956 | 167 | } |
| DeguNaoto | 57:3fbd487e055e | 168 | else if(square){ |
| DeguNaoto | 57:3fbd487e055e | 169 | if(edge_square){ |
| DeguNaoto | 46:30776358bd42 | 170 | edge_square=0; |
| DeguNaoto | 57:3fbd487e055e | 171 | enableShoot=1; |
| DeguNaoto | 29:03bb1ddbe456 | 172 | } |
| DeguNaoto | 49:9276fda93084 | 173 | } |
| DeguNaoto | 74:5dd06d211b12 | 174 | else if(left){ |
| DeguNaoto | 57:3fbd487e055e | 175 | sendData(1,5); |
| DeguNaoto | 57:3fbd487e055e | 176 | } |
| DeguNaoto | 74:5dd06d211b12 | 177 | else if(right){ |
| DeguNaoto | 57:3fbd487e055e | 178 | sendData(1,4); |
| DeguNaoto | 57:3fbd487e055e | 179 | } |
| DeguNaoto | 74:5dd06d211b12 | 180 | else if(l1){ /*L up*/ |
| DeguNaoto | 74:5dd06d211b12 | 181 | if(edge_l1){ |
| DeguNaoto | 74:5dd06d211b12 | 182 | edge_l1=0; |
| DeguNaoto | 74:5dd06d211b12 | 183 | if(stateL!=1) stateL--; |
| DeguNaoto | 74:5dd06d211b12 | 184 | sendData(4,stateL); |
| DeguNaoto | 74:5dd06d211b12 | 185 | } |
| DeguNaoto | 74:5dd06d211b12 | 186 | } |
| DeguNaoto | 74:5dd06d211b12 | 187 | else if(l2){ /*L down*/ |
| DeguNaoto | 74:5dd06d211b12 | 188 | if(edge_l2){ |
| DeguNaoto | 74:5dd06d211b12 | 189 | edge_l2=0; |
| DeguNaoto | 84:919a335ac81e | 190 | if(stateL!=MAX_VALUE) stateL++; |
| DeguNaoto | 74:5dd06d211b12 | 191 | sendData(4,stateL); |
| DeguNaoto | 74:5dd06d211b12 | 192 | } |
| DeguNaoto | 74:5dd06d211b12 | 193 | } |
| DeguNaoto | 74:5dd06d211b12 | 194 | else if(r1){ /*R up*/ |
| DeguNaoto | 74:5dd06d211b12 | 195 | if(edge_r1){ |
| DeguNaoto | 74:5dd06d211b12 | 196 | edge_r1=0; |
| DeguNaoto | 74:5dd06d211b12 | 197 | if(stateR!=1) stateR--; |
| DeguNaoto | 74:5dd06d211b12 | 198 | sendData(5,stateR); |
| DeguNaoto | 74:5dd06d211b12 | 199 | } |
| DeguNaoto | 74:5dd06d211b12 | 200 | } |
| DeguNaoto | 74:5dd06d211b12 | 201 | else if(r2){ /*R down*/ |
| DeguNaoto | 74:5dd06d211b12 | 202 | if(edge_r2){ |
| DeguNaoto | 74:5dd06d211b12 | 203 | edge_r2=0; |
| DeguNaoto | 84:919a335ac81e | 204 | if(stateR!=MAX_VALUE) stateR++; |
| DeguNaoto | 74:5dd06d211b12 | 205 | sendData(5,stateR); |
| DeguNaoto | 74:5dd06d211b12 | 206 | } |
| DeguNaoto | 74:5dd06d211b12 | 207 | } |
| DeguNaoto | 29:03bb1ddbe456 | 208 | } |
| DeguNaoto | 57:3fbd487e055e | 209 | #endif |
| DeguNaoto | 22:3996c3f41922 | 210 | #endif /*manualMode.h*/ |

