AresENSEA-CDF2020
/
AresCDFMainCode_us2
Test
Flag.cpp@26:4670968fbc63, 2020-10-28 (annotated)
- Committer:
- g0dd4
- Date:
- Wed Oct 28 23:05:19 2020 +0000
- Revision:
- 26:4670968fbc63
- Parent:
- 20:7d206773f39e
Ajout OFFSET;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Nanaud | 20:7d206773f39e | 1 | #include "pins.h" |
Nanaud | 20:7d206773f39e | 2 | |
Nanaud | 20:7d206773f39e | 3 | PwmOut servo(FLAGPIN); |
Nanaud | 20:7d206773f39e | 4 | Timeout response; |
Nanaud | 20:7d206773f39e | 5 | |
Nanaud | 20:7d206773f39e | 6 | |
Nanaud | 20:7d206773f39e | 7 | void FlagGOTO(int pos) |
Nanaud | 20:7d206773f39e | 8 | { |
Nanaud | 20:7d206773f39e | 9 | servo = (pos*(0.05f)/90)+0.075f; |
Nanaud | 20:7d206773f39e | 10 | } |
Nanaud | 20:7d206773f39e | 11 | |
Nanaud | 20:7d206773f39e | 12 | void FlagFROMGOTO(int posinit, int posfin, int pas) |
Nanaud | 20:7d206773f39e | 13 | { |
Nanaud | 20:7d206773f39e | 14 | int dir = ((posfin - posinit)/abs(posfin - posinit)); |
Nanaud | 20:7d206773f39e | 15 | for(int pos = posinit; pos != posfin; pos = pos + (pas*dir)) { |
Nanaud | 20:7d206773f39e | 16 | FlagGOTO(pos); |
Nanaud | 20:7d206773f39e | 17 | wait_ms(FLAGDELAY2POS); |
Nanaud | 20:7d206773f39e | 18 | } |
Nanaud | 20:7d206773f39e | 19 | } |
Nanaud | 20:7d206773f39e | 20 | |
Nanaud | 20:7d206773f39e | 21 | void FlagCCW(void) |
Nanaud | 20:7d206773f39e | 22 | { |
Nanaud | 20:7d206773f39e | 23 | FlagGOTO(90); |
Nanaud | 20:7d206773f39e | 24 | //servo = 0.125f; |
Nanaud | 20:7d206773f39e | 25 | } |
Nanaud | 20:7d206773f39e | 26 | |
Nanaud | 20:7d206773f39e | 27 | void FlagMid(void) |
Nanaud | 20:7d206773f39e | 28 | { |
Nanaud | 20:7d206773f39e | 29 | FlagGOTO(0); |
Nanaud | 20:7d206773f39e | 30 | //servo = 0.075f; |
Nanaud | 20:7d206773f39e | 31 | } |
Nanaud | 20:7d206773f39e | 32 | |
Nanaud | 20:7d206773f39e | 33 | void FlagCW(void) |
Nanaud | 20:7d206773f39e | 34 | { |
Nanaud | 20:7d206773f39e | 35 | FlagGOTO(-90); |
Nanaud | 20:7d206773f39e | 36 | //servo = 0.024f; |
Nanaud | 20:7d206773f39e | 37 | } |
Nanaud | 20:7d206773f39e | 38 | |
Nanaud | 20:7d206773f39e | 39 | void FlagUpToInit() |
Nanaud | 20:7d206773f39e | 40 | { |
Nanaud | 20:7d206773f39e | 41 | FlagFROMGOTO(0, 90, 1); |
Nanaud | 20:7d206773f39e | 42 | } |
Nanaud | 20:7d206773f39e | 43 | |
Nanaud | 20:7d206773f39e | 44 | void FlagInitToUp() |
Nanaud | 20:7d206773f39e | 45 | { |
Nanaud | 20:7d206773f39e | 46 | FlagFROMGOTO(90, 0, 1); |
Nanaud | 20:7d206773f39e | 47 | } |
Nanaud | 20:7d206773f39e | 48 | |
Nanaud | 20:7d206773f39e | 49 | void Detonateur(float time) |
Nanaud | 20:7d206773f39e | 50 | { |
Nanaud | 20:7d206773f39e | 51 | response.attach(&FlagInitToUp, time); |
Nanaud | 20:7d206773f39e | 52 | } |