Convert the pwm signal generated by reciever into a signal used by H-bridge

Dependencies:   PwmIn mbed

Committer:
fy17y2w
Date:
Mon May 06 21:24:22 2019 +0000
Revision:
0:c66e5ca3bad6
N/A

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fy17y2w 0:c66e5ca3bad6 1 #include "mbed.h"
fy17y2w 0:c66e5ca3bad6 2 #include "PwmIn.h"
fy17y2w 0:c66e5ca3bad6 3
fy17y2w 0:c66e5ca3bad6 4
fy17y2w 0:c66e5ca3bad6 5 Timer t;
fy17y2w 0:c66e5ca3bad6 6 PwmOut white_up(PC_8),white_down(PC_9),gray_up(PC_6),gray_down(PB_8);
fy17y2w 0:c66e5ca3bad6 7 PwmIn lin(A0),rin(A1);
fy17y2w 0:c66e5ca3bad6 8 int main()
fy17y2w 0:c66e5ca3bad6 9 {
fy17y2w 0:c66e5ca3bad6 10 white_up.period_ms(2.5);
fy17y2w 0:c66e5ca3bad6 11 white_down.period_ms(2.5);
fy17y2w 0:c66e5ca3bad6 12 gray_up.period_ms(2.5);
fy17y2w 0:c66e5ca3bad6 13 gray_down.period_ms(2.5);
fy17y2w 0:c66e5ca3bad6 14 while(1){
fy17y2w 0:c66e5ca3bad6 15 if(lin.dutycycle()<0.59 ){
fy17y2w 0:c66e5ca3bad6 16 gray_down.write(-(lin.dutycycle()-0.59)*4.34);
fy17y2w 0:c66e5ca3bad6 17 wait_ms(10);
fy17y2w 0:c66e5ca3bad6 18 }
fy17y2w 0:c66e5ca3bad6 19 else if(lin.dutycycle()>0.61){
fy17y2w 0:c66e5ca3bad6 20 white_down.write((lin.dutycycle()-0.61)*4.54 );
fy17y2w 0:c66e5ca3bad6 21 wait_ms(10);
fy17y2w 0:c66e5ca3bad6 22 }
fy17y2w 0:c66e5ca3bad6 23 else{
fy17y2w 0:c66e5ca3bad6 24 white_down.write(0);
fy17y2w 0:c66e5ca3bad6 25 gray_down.write(0);
fy17y2w 0:c66e5ca3bad6 26 wait_ms(10);
fy17y2w 0:c66e5ca3bad6 27 }
fy17y2w 0:c66e5ca3bad6 28 if(rin.dutycycle()< 0.59){
fy17y2w 0:c66e5ca3bad6 29 gray_up.write(-(rin.dutycycle()-0.59)*4.34 );
fy17y2w 0:c66e5ca3bad6 30 wait_ms(10);
fy17y2w 0:c66e5ca3bad6 31 }
fy17y2w 0:c66e5ca3bad6 32 else if(rin.dutycycle()>0.61){
fy17y2w 0:c66e5ca3bad6 33 white_up.write((rin.dutycycle()-0.61)*4.34 );
fy17y2w 0:c66e5ca3bad6 34 wait_ms(10);
fy17y2w 0:c66e5ca3bad6 35 }
fy17y2w 0:c66e5ca3bad6 36 else{
fy17y2w 0:c66e5ca3bad6 37 white_up.write(0);
fy17y2w 0:c66e5ca3bad6 38 gray_up.write(0);
fy17y2w 0:c66e5ca3bad6 39 wait_ms(10);
fy17y2w 0:c66e5ca3bad6 40 }
fy17y2w 0:c66e5ca3bad6 41 }
fy17y2w 0:c66e5ca3bad6 42
fy17y2w 0:c66e5ca3bad6 43
fy17y2w 0:c66e5ca3bad6 44
fy17y2w 0:c66e5ca3bad6 45
fy17y2w 0:c66e5ca3bad6 46 }