Grenade Drone Controller
Dependencies: mbed
Functions/Functions.cpp@0:4194aba3f887, 2018-07-16 (annotated)
- Committer:
- halusis
- Date:
- Mon Jul 16 06:49:15 2018 +0000
- Revision:
- 0:4194aba3f887
- Child:
- 1:903bcc4d9628
1st Complete Ver
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
halusis | 0:4194aba3f887 | 1 | #include "Functions.h" |
halusis | 0:4194aba3f887 | 2 | #include "PinAssign.h" |
halusis | 0:4194aba3f887 | 3 | #include "GlobalVars.h" |
halusis | 0:4194aba3f887 | 4 | |
halusis | 0:4194aba3f887 | 5 | Timeout pwm_7; |
halusis | 0:4194aba3f887 | 6 | Timeout pwm_8; |
halusis | 0:4194aba3f887 | 7 | float pwm_t7; |
halusis | 0:4194aba3f887 | 8 | float pwm_t8; |
halusis | 0:4194aba3f887 | 9 | void pwmout7(void) {pwm7 = 0;} |
halusis | 0:4194aba3f887 | 10 | void pwmout8(void) {pwm8 = 0;} |
halusis | 0:4194aba3f887 | 11 | |
halusis | 0:4194aba3f887 | 12 | void Proc(void) |
halusis | 0:4194aba3f887 | 13 | { |
halusis | 0:4194aba3f887 | 14 | if(RcvBit&0x80) var1=OPENPWM; |
halusis | 0:4194aba3f887 | 15 | if(RcvBit&0x40) var2=OPENPWM; |
halusis | 0:4194aba3f887 | 16 | if(RcvBit&0x20) var3=OPENPWM; |
halusis | 0:4194aba3f887 | 17 | if(RcvBit&0x10) var4=OPENPWM; |
halusis | 0:4194aba3f887 | 18 | if(RcvBit&0x08) var5=OPENPWM; |
halusis | 0:4194aba3f887 | 19 | if(RcvBit&0x04) var6=OPENPWM; |
halusis | 0:4194aba3f887 | 20 | if(RcvBit&0x02) var7=OPENPWM; |
halusis | 0:4194aba3f887 | 21 | if(RcvBit&0x01) var8=OPENPWM; |
halusis | 0:4194aba3f887 | 22 | } |
halusis | 0:4194aba3f887 | 23 | void RcvProc(void) |
halusis | 0:4194aba3f887 | 24 | { |
halusis | 0:4194aba3f887 | 25 | unsigned char buf; |
halusis | 0:4194aba3f887 | 26 | |
halusis | 0:4194aba3f887 | 27 | buf=Switch.getc(); |
halusis | 0:4194aba3f887 | 28 | |
halusis | 0:4194aba3f887 | 29 | if((RcvCnt==1||RcvCnt==2)&&buf==0xfe) RcvCnt++; |
halusis | 0:4194aba3f887 | 30 | else if(RcvCnt==3){RcvBit=buf; RcvCnt++;} |
halusis | 0:4194aba3f887 | 31 | else if(RcvCnt==4&&RcvBit==buf) RcvCnt++; |
halusis | 0:4194aba3f887 | 32 | else if(RcvCnt==5&&buf==0xff) RcvCnt++; |
halusis | 0:4194aba3f887 | 33 | else if(RcvCnt==6&&buf==0xff) {RcvCnt=1; Proc();} |
halusis | 0:4194aba3f887 | 34 | else RcvCnt=1; |
halusis | 0:4194aba3f887 | 35 | } |
halusis | 0:4194aba3f887 | 36 | void SndPWM(void) |
halusis | 0:4194aba3f887 | 37 | { |
halusis | 0:4194aba3f887 | 38 | pwm_t7 = (float)var7*0.000001; |
halusis | 0:4194aba3f887 | 39 | pwm_t8 = (float)var8*0.000001; |
halusis | 0:4194aba3f887 | 40 | |
halusis | 0:4194aba3f887 | 41 | pwm1.pulsewidth_us(var1); |
halusis | 0:4194aba3f887 | 42 | pwm2.pulsewidth_us(var2); |
halusis | 0:4194aba3f887 | 43 | pwm3.pulsewidth_us(var3); |
halusis | 0:4194aba3f887 | 44 | pwm4.pulsewidth_us(var4); |
halusis | 0:4194aba3f887 | 45 | pwm5.pulsewidth_us(var5); |
halusis | 0:4194aba3f887 | 46 | pwm6.pulsewidth_us(var6); |
halusis | 0:4194aba3f887 | 47 | |
halusis | 0:4194aba3f887 | 48 | pwm7 = 1; |
halusis | 0:4194aba3f887 | 49 | pwm_7.attach(&pwmout7, pwm_t7); |
halusis | 0:4194aba3f887 | 50 | pwm8 = 1; |
halusis | 0:4194aba3f887 | 51 | pwm_8.attach(&pwmout8, pwm_t8); |
halusis | 0:4194aba3f887 | 52 | } |
halusis | 0:4194aba3f887 | 53 | void InitPWM(void) |
halusis | 0:4194aba3f887 | 54 | { |
halusis | 0:4194aba3f887 | 55 | var1=CLOSEPWM; |
halusis | 0:4194aba3f887 | 56 | var2=CLOSEPWM; |
halusis | 0:4194aba3f887 | 57 | var3=CLOSEPWM; |
halusis | 0:4194aba3f887 | 58 | var4=CLOSEPWM; |
halusis | 0:4194aba3f887 | 59 | var5=CLOSEPWM; |
halusis | 0:4194aba3f887 | 60 | var6=CLOSEPWM; |
halusis | 0:4194aba3f887 | 61 | var7=CLOSEPWM; |
halusis | 0:4194aba3f887 | 62 | var8=CLOSEPWM; |
halusis | 0:4194aba3f887 | 63 | } |