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.
main.cpp@0:4b741d1ca320, 2015-12-13 (annotated)
- Committer:
- BAC
- Date:
- Sun Dec 13 13:56:06 2015 +0000
- Revision:
- 0:4b741d1ca320
bac
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
BAC | 0:4b741d1ca320 | 1 | #include "mbed.h" |
BAC | 0:4b741d1ca320 | 2 | |
BAC | 0:4b741d1ca320 | 3 | AnalogIn F1p(PA_0); |
BAC | 0:4b741d1ca320 | 4 | AnalogIn F1n(PA_1); |
BAC | 0:4b741d1ca320 | 5 | AnalogIn F2p(PA_4); |
BAC | 0:4b741d1ca320 | 6 | AnalogIn F2n(PB_0); |
BAC | 0:4b741d1ca320 | 7 | AnalogIn F3p(PC_1); |
BAC | 0:4b741d1ca320 | 8 | AnalogIn F3n(PC_0); |
BAC | 0:4b741d1ca320 | 9 | |
BAC | 0:4b741d1ca320 | 10 | DigitalOut myled(PA_5); |
BAC | 0:4b741d1ca320 | 11 | PwmOut M1(PA_6); |
BAC | 0:4b741d1ca320 | 12 | PwmOut M2(PA_7); |
BAC | 0:4b741d1ca320 | 13 | PwmOut M3(PB_6); |
BAC | 0:4b741d1ca320 | 14 | |
BAC | 0:4b741d1ca320 | 15 | Serial UART(SERIAL_TX, SERIAL_RX); |
BAC | 0:4b741d1ca320 | 16 | |
BAC | 0:4b741d1ca320 | 17 | int main() { |
BAC | 0:4b741d1ca320 | 18 | float w1 = 1025, w2 = 620, w3 = 1365; |
BAC | 0:4b741d1ca320 | 19 | int i; |
BAC | 0:4b741d1ca320 | 20 | float fb1 = 0, fb2 = 0, fb3 = 0; |
BAC | 0:4b741d1ca320 | 21 | char c; |
BAC | 0:4b741d1ca320 | 22 | M1.period_ms(20); |
BAC | 0:4b741d1ca320 | 23 | M2.period_ms(20); |
BAC | 0:4b741d1ca320 | 24 | M3.period_ms(20); |
BAC | 0:4b741d1ca320 | 25 | |
BAC | 0:4b741d1ca320 | 26 | M1.pulsewidth_us(1900); |
BAC | 0:4b741d1ca320 | 27 | M2.pulsewidth_us(600); |
BAC | 0:4b741d1ca320 | 28 | M3.pulsewidth_us(2000); |
BAC | 0:4b741d1ca320 | 29 | wait(2.0f); |
BAC | 0:4b741d1ca320 | 30 | |
BAC | 0:4b741d1ca320 | 31 | M1.pulsewidth_us(1047); |
BAC | 0:4b741d1ca320 | 32 | M2.pulsewidth_us(600); |
BAC | 0:4b741d1ca320 | 33 | M3.pulsewidth_us(2000); |
BAC | 0:4b741d1ca320 | 34 | wait(2.0f); |
BAC | 0:4b741d1ca320 | 35 | |
BAC | 0:4b741d1ca320 | 36 | M1.pulsewidth_us(1047); |
BAC | 0:4b741d1ca320 | 37 | M2.pulsewidth_us(600); |
BAC | 0:4b741d1ca320 | 38 | M3.pulsewidth_us(1402); |
BAC | 0:4b741d1ca320 | 39 | wait(2.0f); |
BAC | 0:4b741d1ca320 | 40 | |
BAC | 0:4b741d1ca320 | 41 | M1.pulsewidth_us(1053); |
BAC | 0:4b741d1ca320 | 42 | M2.pulsewidth_us(591); |
BAC | 0:4b741d1ca320 | 43 | M3.pulsewidth_us(1374); |
BAC | 0:4b741d1ca320 | 44 | wait(2.0f); |
BAC | 0:4b741d1ca320 | 45 | |
BAC | 0:4b741d1ca320 | 46 | w1 = 1053; |
BAC | 0:4b741d1ca320 | 47 | w2 = 591; |
BAC | 0:4b741d1ca320 | 48 | w3 = 1347; |
BAC | 0:4b741d1ca320 | 49 | |
BAC | 0:4b741d1ca320 | 50 | //============================================= |
BAC | 0:4b741d1ca320 | 51 | |
BAC | 0:4b741d1ca320 | 52 | /* |
BAC | 0:4b741d1ca320 | 53 | M1.pulsewidth_us(1000); |
BAC | 0:4b741d1ca320 | 54 | M2.pulsewidth_us(626); |
BAC | 0:4b741d1ca320 | 55 | M3.pulsewidth_us(1369); |
BAC | 0:4b741d1ca320 | 56 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 57 | |
BAC | 0:4b741d1ca320 | 58 | M1.pulsewidth_us(990); |
BAC | 0:4b741d1ca320 | 59 | M2.pulsewidth_us(640); |
BAC | 0:4b741d1ca320 | 60 | M3.pulsewidth_us(1377); |
BAC | 0:4b741d1ca320 | 61 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 62 | |
BAC | 0:4b741d1ca320 | 63 | M1.pulsewidth_us(980); |
BAC | 0:4b741d1ca320 | 64 | M2.pulsewidth_us(664); |
BAC | 0:4b741d1ca320 | 65 | M3.pulsewidth_us(1379); |
BAC | 0:4b741d1ca320 | 66 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 67 | |
BAC | 0:4b741d1ca320 | 68 | M1.pulsewidth_us(970); |
BAC | 0:4b741d1ca320 | 69 | M2.pulsewidth_us(688); |
BAC | 0:4b741d1ca320 | 70 | M3.pulsewidth_us(1391); |
BAC | 0:4b741d1ca320 | 71 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 72 | |
BAC | 0:4b741d1ca320 | 73 | M1.pulsewidth_us(960); |
BAC | 0:4b741d1ca320 | 74 | M2.pulsewidth_us(694); |
BAC | 0:4b741d1ca320 | 75 | M3.pulsewidth_us(1397); |
BAC | 0:4b741d1ca320 | 76 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 77 | |
BAC | 0:4b741d1ca320 | 78 | M1.pulsewidth_us(950); |
BAC | 0:4b741d1ca320 | 79 | M2.pulsewidth_us(724); |
BAC | 0:4b741d1ca320 | 80 | M3.pulsewidth_us(1401); |
BAC | 0:4b741d1ca320 | 81 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 82 | |
BAC | 0:4b741d1ca320 | 83 | M1.pulsewidth_us(940); |
BAC | 0:4b741d1ca320 | 84 | M2.pulsewidth_us(752); |
BAC | 0:4b741d1ca320 | 85 | M3.pulsewidth_us(1415); |
BAC | 0:4b741d1ca320 | 86 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 87 | |
BAC | 0:4b741d1ca320 | 88 | M1.pulsewidth_us(930); |
BAC | 0:4b741d1ca320 | 89 | M2.pulsewidth_us(762); |
BAC | 0:4b741d1ca320 | 90 | M3.pulsewidth_us(1424); |
BAC | 0:4b741d1ca320 | 91 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 92 | |
BAC | 0:4b741d1ca320 | 93 | M1.pulsewidth_us(927); |
BAC | 0:4b741d1ca320 | 94 | M2.pulsewidth_us(766); |
BAC | 0:4b741d1ca320 | 95 | M3.pulsewidth_us(1428); |
BAC | 0:4b741d1ca320 | 96 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 97 | |
BAC | 0:4b741d1ca320 | 98 | M1.pulsewidth_us(921); |
BAC | 0:4b741d1ca320 | 99 | M2.pulsewidth_us(778); |
BAC | 0:4b741d1ca320 | 100 | M3.pulsewidth_us(1434); |
BAC | 0:4b741d1ca320 | 101 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 102 | |
BAC | 0:4b741d1ca320 | 103 | M1.pulsewidth_us(913); |
BAC | 0:4b741d1ca320 | 104 | M2.pulsewidth_us(794); |
BAC | 0:4b741d1ca320 | 105 | M3.pulsewidth_us(1442); |
BAC | 0:4b741d1ca320 | 106 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 107 | |
BAC | 0:4b741d1ca320 | 108 | M1.pulsewidth_us(901); |
BAC | 0:4b741d1ca320 | 109 | M2.pulsewidth_us(826); |
BAC | 0:4b741d1ca320 | 110 | M3.pulsewidth_us(1458); |
BAC | 0:4b741d1ca320 | 111 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 112 | */ |
BAC | 0:4b741d1ca320 | 113 | /* |
BAC | 0:4b741d1ca320 | 114 | M1.pulsewidth_us(970); |
BAC | 0:4b741d1ca320 | 115 | wait(1.0f); |
BAC | 0:4b741d1ca320 | 116 | M2.pulsewidth_us(680); |
BAC | 0:4b741d1ca320 | 117 | M3.pulsewidth_us(1349); |
BAC | 0:4b741d1ca320 | 118 | wait(1.0f);*/ |
BAC | 0:4b741d1ca320 | 119 | |
BAC | 0:4b741d1ca320 | 120 | |
BAC | 0:4b741d1ca320 | 121 | UART.baud(9600); // Set BuadRate |
BAC | 0:4b741d1ca320 | 122 | printf("PW1 = %f us,PW2 = %f us,PW3 = %f us \n\r",w1,w2,w3); |
BAC | 0:4b741d1ca320 | 123 | while(1) { |
BAC | 0:4b741d1ca320 | 124 | c = UART.getc(); |
BAC | 0:4b741d1ca320 | 125 | if(c == '1') |
BAC | 0:4b741d1ca320 | 126 | { |
BAC | 0:4b741d1ca320 | 127 | w1 = w1 + 2; |
BAC | 0:4b741d1ca320 | 128 | } |
BAC | 0:4b741d1ca320 | 129 | else if(c == '2') |
BAC | 0:4b741d1ca320 | 130 | { |
BAC | 0:4b741d1ca320 | 131 | w1 = w1 - 2; |
BAC | 0:4b741d1ca320 | 132 | } |
BAC | 0:4b741d1ca320 | 133 | else if(c == '3') |
BAC | 0:4b741d1ca320 | 134 | { |
BAC | 0:4b741d1ca320 | 135 | w2 = w2 + 2; |
BAC | 0:4b741d1ca320 | 136 | } |
BAC | 0:4b741d1ca320 | 137 | else if(c == '4') |
BAC | 0:4b741d1ca320 | 138 | { |
BAC | 0:4b741d1ca320 | 139 | w2 = w2 - 2; |
BAC | 0:4b741d1ca320 | 140 | } |
BAC | 0:4b741d1ca320 | 141 | else if(c == '5') |
BAC | 0:4b741d1ca320 | 142 | { |
BAC | 0:4b741d1ca320 | 143 | w3 = w3 + 2; |
BAC | 0:4b741d1ca320 | 144 | } |
BAC | 0:4b741d1ca320 | 145 | else if(c == '6') |
BAC | 0:4b741d1ca320 | 146 | { |
BAC | 0:4b741d1ca320 | 147 | w3 = w3 - 2; |
BAC | 0:4b741d1ca320 | 148 | } |
BAC | 0:4b741d1ca320 | 149 | |
BAC | 0:4b741d1ca320 | 150 | printf("PW1 = %f us,PW2 = %f us,PW3 = %f us \n\r",w1,w2,w3); |
BAC | 0:4b741d1ca320 | 151 | M1.pulsewidth_us(w1); |
BAC | 0:4b741d1ca320 | 152 | M2.pulsewidth_us(w2); |
BAC | 0:4b741d1ca320 | 153 | M3.pulsewidth_us(w3); |
BAC | 0:4b741d1ca320 | 154 | |
BAC | 0:4b741d1ca320 | 155 | for(i=0;i<=9;i++) |
BAC | 0:4b741d1ca320 | 156 | { |
BAC | 0:4b741d1ca320 | 157 | fb1 = fb1 + ((F1p-F1n)*3.3f); |
BAC | 0:4b741d1ca320 | 158 | fb2 = fb2 + ((F2p-F2n)*3.3f); |
BAC | 0:4b741d1ca320 | 159 | fb3 = fb3 + ((F3p-F3n)*3.3f); |
BAC | 0:4b741d1ca320 | 160 | } |
BAC | 0:4b741d1ca320 | 161 | printf("FB1 = %f V, FB2 = %f V, FB3 = %f V\r\r\n",(fb1/10),(fb2/10),(fb3/10)); |
BAC | 0:4b741d1ca320 | 162 | fb1 = 0; |
BAC | 0:4b741d1ca320 | 163 | fb2 = 0; |
BAC | 0:4b741d1ca320 | 164 | fb3 = 0; |
BAC | 0:4b741d1ca320 | 165 | myled = !myled; |
BAC | 0:4b741d1ca320 | 166 | } |
BAC | 0:4b741d1ca320 | 167 | } |