TestRadar, dont know if wroks
Dependencies: mbed
Fork of MainMitFreq by
TestRadar.cpp@4:7ce2cdd04dd8, 2014-06-27 (annotated)
- Committer:
- abuitrag
- Date:
- Fri Jun 27 00:08:45 2014 +0000
- Revision:
- 4:7ce2cdd04dd8
- Parent:
- MainWithFreq.cpp@3:c9341431a333
threw something together really late; maybe it works? dunno;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
abuitrag | 0:b738b4b05ed8 | 1 | #include "mbed.h" |
dahooz | 2:7900c18cebd5 | 2 | |
abuitrag | 0:b738b4b05ed8 | 3 | SPI spiR(p11, p12, p13); // mosi, miso, sclk |
abuitrag | 0:b738b4b05ed8 | 4 | DigitalOut lpR(p10); |
abuitrag | 0:b738b4b05ed8 | 5 | DigitalOut bpR(p14); |
dahooz | 2:7900c18cebd5 | 6 | |
abuitrag | 0:b738b4b05ed8 | 7 | SPI spiL(p5, p6, p7); |
abuitrag | 0:b738b4b05ed8 | 8 | DigitalOut lpL(p8); |
abuitrag | 0:b738b4b05ed8 | 9 | DigitalOut bpL(p9); |
dahooz | 2:7900c18cebd5 | 10 | |
abuitrag | 0:b738b4b05ed8 | 11 | void latch() |
abuitrag | 0:b738b4b05ed8 | 12 | { |
abuitrag | 0:b738b4b05ed8 | 13 | lpR = 1; |
abuitrag | 0:b738b4b05ed8 | 14 | lpL = 1; |
abuitrag | 0:b738b4b05ed8 | 15 | lpR = 1; |
abuitrag | 0:b738b4b05ed8 | 16 | lpL = 1; |
abuitrag | 0:b738b4b05ed8 | 17 | lpR = 1; |
abuitrag | 0:b738b4b05ed8 | 18 | lpL = 1; |
abuitrag | 0:b738b4b05ed8 | 19 | lpR = 0; |
abuitrag | 0:b738b4b05ed8 | 20 | lpL = 0; |
abuitrag | 0:b738b4b05ed8 | 21 | } |
dahooz | 2:7900c18cebd5 | 22 | |
abuitrag | 0:b738b4b05ed8 | 23 | |
dahooz | 2:7900c18cebd5 | 24 | |
dahooz | 2:7900c18cebd5 | 25 | //FREQ CONTROL CONFIG |
abuitrag | 0:b738b4b05ed8 | 26 | |
abuitrag | 0:b738b4b05ed8 | 27 | Ticker tick; |
abuitrag | 0:b738b4b05ed8 | 28 | InterruptIn in(p22); |
abuitrag | 0:b738b4b05ed8 | 29 | Timer t1; |
abuitrag | 0:b738b4b05ed8 | 30 | Timer t2; |
abuitrag | 0:b738b4b05ed8 | 31 | |
abuitrag | 0:b738b4b05ed8 | 32 | //INTERRUPT FEEDBACK LED |
abuitrag | 4:7ce2cdd04dd8 | 33 | |
abuitrag | 0:b738b4b05ed8 | 34 | DigitalOut led(LED1); |
dahooz | 2:7900c18cebd5 | 35 | DigitalOut led2(LED2); |
dahooz | 2:7900c18cebd5 | 36 | DigitalOut led3(LED3); |
dahooz | 2:7900c18cebd5 | 37 | DigitalOut led4(LED4); |
abuitrag | 0:b738b4b05ed8 | 38 | |
abuitrag | 0:b738b4b05ed8 | 39 | //RUNTIME VARS |
abuitrag | 0:b738b4b05ed8 | 40 | |
dahooz | 2:7900c18cebd5 | 41 | float t_period = 0; // This is the period between interrupts in microseconds |
abuitrag | 0:b738b4b05ed8 | 42 | float t_freq = 0; |
abuitrag | 0:b738b4b05ed8 | 43 | int last = -1; |
dahooz | 2:7900c18cebd5 | 44 | float curt = 0; |
dahooz | 2:7900c18cebd5 | 45 | int f = 0; |
abuitrag | 0:b738b4b05ed8 | 46 | |
abuitrag | 0:b738b4b05ed8 | 47 | //DUMMY FUNCTION AS THERE IS NO HEADER FILE |
abuitrag | 0:b738b4b05ed8 | 48 | |
abuitrag | 0:b738b4b05ed8 | 49 | void flip(); |
abuitrag | 0:b738b4b05ed8 | 50 | void flip() |
abuitrag | 0:b738b4b05ed8 | 51 | { |
abuitrag | 0:b738b4b05ed8 | 52 | t_period = t1.read_us(); // Get time since last interrupt |
abuitrag | 0:b738b4b05ed8 | 53 | t_freq = (1/(float)t_period)*1000000; // Convert period (in us) to frequency (Hz) |
abuitrag | 0:b738b4b05ed8 | 54 | t1.reset(); // Reset timer and wait for next interrupt |
abuitrag | 0:b738b4b05ed8 | 55 | t2.reset(); |
abuitrag | 0:b738b4b05ed8 | 56 | led = !led; |
dahooz | 2:7900c18cebd5 | 57 | f++; |
dahooz | 2:7900c18cebd5 | 58 | } |
dahooz | 2:7900c18cebd5 | 59 | |
dahooz | 2:7900c18cebd5 | 60 | |
dahooz | 2:7900c18cebd5 | 61 | |
dahooz | 2:7900c18cebd5 | 62 | short radaroff[24]= {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; |
dahooz | 2:7900c18cebd5 | 63 | short radaron[24]= {0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF, |
dahooz | 2:7900c18cebd5 | 64 | 0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF,0xFFF |
dahooz | 2:7900c18cebd5 | 65 | }; |
dahooz | 2:7900c18cebd5 | 66 | short radardot[24]= {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xFFF,0,0,0,0,0,0,0,0}; |
dahooz | 2:7900c18cebd5 | 67 | |
abuitrag | 0:b738b4b05ed8 | 68 | int lookupport(int j) |
abuitrag | 0:b738b4b05ed8 | 69 | { |
dahooz | 2:7900c18cebd5 | 70 | int led, p; |
dahooz | 2:7900c18cebd5 | 71 | |
dahooz | 2:7900c18cebd5 | 72 | if(j%2 == 1) //Alle ungeradezahligen Ports |
dahooz | 2:7900c18cebd5 | 73 | //werden vom rechten Controller angesteuert |
dahooz | 2:7900c18cebd5 | 74 | //entsprechend wird "R" als "Side" zugewiesen |
abuitrag | 0:b738b4b05ed8 | 75 | { |
dahooz | 2:7900c18cebd5 | 76 | |
dahooz | 2:7900c18cebd5 | 77 | p = j/2; //Durch Division /2 bekommen wir eine "normierte Reihe" also (0,1 ,2 ... 12) |
dahooz | 2:7900c18cebd5 | 78 | |
dahooz | 2:7900c18cebd5 | 79 | if (p%2 == 0) //nochmal %2 da Ports sich abwechseln (0, 23, 1, 22... siehe Tabelle) |
dahooz | 2:7900c18cebd5 | 80 | led = 23 - (p/2); //also von "p" ausgegangen, beginnen gerade Zahlen von hinten an (Ports 23, 22, 21... 12) |
dahooz | 2:7900c18cebd5 | 81 | else |
dahooz | 2:7900c18cebd5 | 82 | led = (p/2); // ungerade Zahlen beginnen von vorne an (Port 0, 1, 2... 11) |
abuitrag | 0:b738b4b05ed8 | 83 | } |
dahooz | 2:7900c18cebd5 | 84 | |
dahooz | 2:7900c18cebd5 | 85 | else |
dahooz | 2:7900c18cebd5 | 86 | |
dahooz | 2:7900c18cebd5 | 87 | { |
abuitrag | 0:b738b4b05ed8 | 88 | p = (j-1)/2; |
dahooz | 2:7900c18cebd5 | 89 | |
abuitrag | 0:b738b4b05ed8 | 90 | if (p%2 == 0) |
dahooz | 2:7900c18cebd5 | 91 | led = 23 - (p/2); |
abuitrag | 0:b738b4b05ed8 | 92 | else |
dahooz | 2:7900c18cebd5 | 93 | led = (p/2); |
dahooz | 2:7900c18cebd5 | 94 | } |
dahooz | 2:7900c18cebd5 | 95 | return led; |
dahooz | 2:7900c18cebd5 | 96 | |
abuitrag | 0:b738b4b05ed8 | 97 | } |
dahooz | 2:7900c18cebd5 | 98 | |
abuitrag | 0:b738b4b05ed8 | 99 | //returns 1 if right Port, else 0 |
dahooz | 2:7900c18cebd5 | 100 | int lookupLR(int j) |
dahooz | 2:7900c18cebd5 | 101 | { |
dahooz | 2:7900c18cebd5 | 102 | return j % 2; |
abuitrag | 0:b738b4b05ed8 | 103 | } |
dahooz | 2:7900c18cebd5 | 104 | |
abuitrag | 0:b738b4b05ed8 | 105 | //Hier kommt die Funktion |
dahooz | 2:7900c18cebd5 | 106 | |
dahooz | 2:7900c18cebd5 | 107 | |
abuitrag | 0:b738b4b05ed8 | 108 | int main() |
dahooz | 2:7900c18cebd5 | 109 | { |
dahooz | 2:7900c18cebd5 | 110 | |
abuitrag | 0:b738b4b05ed8 | 111 | lpR = 0; |
abuitrag | 0:b738b4b05ed8 | 112 | lpL = 0; |
abuitrag | 0:b738b4b05ed8 | 113 | spiR.format(12, 0); |
abuitrag | 0:b738b4b05ed8 | 114 | spiR.frequency(30 * 1000 * 1000); |
abuitrag | 0:b738b4b05ed8 | 115 | spiL.format(12, 0); |
abuitrag | 0:b738b4b05ed8 | 116 | spiL.frequency(30 * 1000 * 1000); |
dahooz | 2:7900c18cebd5 | 117 | bpR=1; |
dahooz | 2:7900c18cebd5 | 118 | bpL = 1; |
abuitrag | 4:7ce2cdd04dd8 | 119 | /* |
dahooz | 2:7900c18cebd5 | 120 | for (int v = 0; v<5; ++v) { |
dahooz | 2:7900c18cebd5 | 121 | |
dahooz | 2:7900c18cebd5 | 122 | for(int i=47; i>=0; i--) { |
abuitrag | 0:b738b4b05ed8 | 123 | bpR=1; |
abuitrag | 0:b738b4b05ed8 | 124 | bpL = 1; |
dahooz | 2:7900c18cebd5 | 125 | for(int j = 0; j<sizeof(outp[0])/sizeof(outp[0][0]); j++) { |
dahooz | 2:7900c18cebd5 | 126 | if (lookupLR(j)) { |
abuitrag | 0:b738b4b05ed8 | 127 | actualrowR[lookupport(j)] = outp[i][j]; |
dahooz | 2:7900c18cebd5 | 128 | } else { |
abuitrag | 0:b738b4b05ed8 | 129 | actualrowL[lookupport(j)] = outp[i][j]; |
abuitrag | 0:b738b4b05ed8 | 130 | } |
abuitrag | 0:b738b4b05ed8 | 131 | } |
dahooz | 2:7900c18cebd5 | 132 | for (int k =0; k<sizeof(actualrowR)/sizeof(actualrowR[0]); ++k) { |
abuitrag | 0:b738b4b05ed8 | 133 | spiR.write(actualrowR[k]); |
abuitrag | 0:b738b4b05ed8 | 134 | } |
dahooz | 2:7900c18cebd5 | 135 | for (int k =0; k<sizeof(actualrowL)/sizeof(actualrowL[0]); ++k) { |
dahooz | 2:7900c18cebd5 | 136 | spiL.write(actualrowL[k]); |
dahooz | 2:7900c18cebd5 | 137 | } |
dahooz | 2:7900c18cebd5 | 138 | latch(); |
dahooz | 2:7900c18cebd5 | 139 | bpR=0; |
dahooz | 2:7900c18cebd5 | 140 | bpL = 0; |
dahooz | 2:7900c18cebd5 | 141 | wait(0.08); |
dahooz | 2:7900c18cebd5 | 142 | } |
dahooz | 2:7900c18cebd5 | 143 | for(int i=0; i<sizeof(outp)/sizeof(outp[0]); i++) { |
dahooz | 2:7900c18cebd5 | 144 | bpR=1; |
dahooz | 2:7900c18cebd5 | 145 | bpL = 1; |
dahooz | 2:7900c18cebd5 | 146 | for(int j = 0; j<sizeof(outp[0])/sizeof(outp[0][0]); j++) { |
dahooz | 2:7900c18cebd5 | 147 | if (lookupLR(j)) { |
dahooz | 2:7900c18cebd5 | 148 | actualrowR[lookupport(j)] = outp[i][j]; |
dahooz | 2:7900c18cebd5 | 149 | } else { |
dahooz | 2:7900c18cebd5 | 150 | actualrowL[lookupport(j)] = outp[i][j]; |
dahooz | 2:7900c18cebd5 | 151 | } |
dahooz | 2:7900c18cebd5 | 152 | } |
dahooz | 2:7900c18cebd5 | 153 | for (int k =0; k<sizeof(actualrowR)/sizeof(actualrowR[0]); ++k) { |
dahooz | 2:7900c18cebd5 | 154 | spiR.write(actualrowR[k]); |
dahooz | 2:7900c18cebd5 | 155 | } |
dahooz | 2:7900c18cebd5 | 156 | for (int k =0; k<sizeof(actualrowL)/sizeof(actualrowL[0]); ++k) { |
abuitrag | 0:b738b4b05ed8 | 157 | spiL.write(actualrowL[k]); |
abuitrag | 0:b738b4b05ed8 | 158 | } |
abuitrag | 0:b738b4b05ed8 | 159 | latch(); |
abuitrag | 0:b738b4b05ed8 | 160 | bpR=0; |
abuitrag | 0:b738b4b05ed8 | 161 | bpL = 0; |
abuitrag | 0:b738b4b05ed8 | 162 | wait(0.08); |
abuitrag | 0:b738b4b05ed8 | 163 | } |
dahooz | 2:7900c18cebd5 | 164 | |
dahooz | 2:7900c18cebd5 | 165 | } |
abuitrag | 4:7ce2cdd04dd8 | 166 | */ |
dahooz | 2:7900c18cebd5 | 167 | //****************************// |
dahooz | 2:7900c18cebd5 | 168 | //CAKE FUNCTION - YUM YUM |
dahooz | 2:7900c18cebd5 | 169 | //****************************// |
dahooz | 2:7900c18cebd5 | 170 | |
abuitrag | 4:7ce2cdd04dd8 | 171 | /* |
dahooz | 2:7900c18cebd5 | 172 | { |
dahooz | 2:7900c18cebd5 | 173 | in.mode(PullDown); // Set the pin to Pull Down mode. |
dahooz | 2:7900c18cebd5 | 174 | in.rise(&flip); // Set up the interrupt for rising edge |
dahooz | 2:7900c18cebd5 | 175 | t1.start(); // start the timer |
dahooz | 2:7900c18cebd5 | 176 | t2.start(); |
dahooz | 2:7900c18cebd5 | 177 | |
dahooz | 2:7900c18cebd5 | 178 | for(; f<500;) { //as a placeholder until we find a way to navigate between programmes |
dahooz | 2:7900c18cebd5 | 179 | |
dahooz | 2:7900c18cebd5 | 180 | if(t_period == 0) { |
dahooz | 2:7900c18cebd5 | 181 | continue; |
dahooz | 2:7900c18cebd5 | 182 | } |
dahooz | 2:7900c18cebd5 | 183 | curt = t2.read_us(); |
dahooz | 3:c9341431a333 | 184 | if (curt < t_period * 0.135 |
dahooz | 3:c9341431a333 | 185 | || (t_period/4 < curt && curt < (t_period*0.135)*3 ) |
dahooz | 3:c9341431a333 | 186 | || (t_period/2 < curt && curt < (t_period/0.135)*5 ) |
dahooz | 3:c9341431a333 | 187 | || ((t_period/4)*3 < curt && curt < (t_period/0.135)*7 ) |
dahooz | 2:7900c18cebd5 | 188 | ) { |
dahooz | 2:7900c18cebd5 | 189 | if (last != 0) { |
dahooz | 2:7900c18cebd5 | 190 | //cake empty |
dahooz | 2:7900c18cebd5 | 191 | |
dahooz | 2:7900c18cebd5 | 192 | bpL=1; |
dahooz | 2:7900c18cebd5 | 193 | bpR=1; |
dahooz | 2:7900c18cebd5 | 194 | for (int j = 0; j<48; j++) { |
dahooz | 2:7900c18cebd5 | 195 | spiR.write(0x000); |
dahooz | 2:7900c18cebd5 | 196 | spiL.write(0x000); |
dahooz | 2:7900c18cebd5 | 197 | } |
dahooz | 2:7900c18cebd5 | 198 | //for(int j=0; j<sizeof(cakeempty)/sizeof(cakeempty[0]); j++) { |
dahooz | 2:7900c18cebd5 | 199 | // spiR.write(cakeempty[j]); |
dahooz | 2:7900c18cebd5 | 200 | //spiL.write(cakeempty[j]); |
dahooz | 2:7900c18cebd5 | 201 | //} |
dahooz | 2:7900c18cebd5 | 202 | latch(); |
dahooz | 2:7900c18cebd5 | 203 | bpL=0; |
dahooz | 2:7900c18cebd5 | 204 | bpR=0; |
dahooz | 2:7900c18cebd5 | 205 | last = 0; |
dahooz | 2:7900c18cebd5 | 206 | } |
dahooz | 2:7900c18cebd5 | 207 | } else { |
dahooz | 2:7900c18cebd5 | 208 | if (last != 1) { |
dahooz | 2:7900c18cebd5 | 209 | |
dahooz | 2:7900c18cebd5 | 210 | //cake full |
dahooz | 2:7900c18cebd5 | 211 | bpL=1; |
dahooz | 2:7900c18cebd5 | 212 | bpR=1; |
dahooz | 2:7900c18cebd5 | 213 | |
dahooz | 2:7900c18cebd5 | 214 | for (int j = 0; j<48; j++) { |
dahooz | 2:7900c18cebd5 | 215 | spiR.write(0xFFF); |
dahooz | 2:7900c18cebd5 | 216 | spiL.write(0xFFF); |
dahooz | 2:7900c18cebd5 | 217 | } |
dahooz | 2:7900c18cebd5 | 218 | |
dahooz | 2:7900c18cebd5 | 219 | //for(int j=0; j<sizeof(cakefull)/sizeof(cakefull[0]); j++) { |
dahooz | 2:7900c18cebd5 | 220 | // spiR.write(cakefull[j]); |
dahooz | 2:7900c18cebd5 | 221 | //spiL.write(cakefull[j]); |
dahooz | 2:7900c18cebd5 | 222 | //} |
dahooz | 2:7900c18cebd5 | 223 | latch(); |
dahooz | 2:7900c18cebd5 | 224 | bpL=0; |
dahooz | 2:7900c18cebd5 | 225 | bpR=0; |
dahooz | 2:7900c18cebd5 | 226 | last = 1; |
abuitrag | 0:b738b4b05ed8 | 227 | } |
abuitrag | 0:b738b4b05ed8 | 228 | } |
abuitrag | 0:b738b4b05ed8 | 229 | |
abuitrag | 0:b738b4b05ed8 | 230 | } |
abuitrag | 4:7ce2cdd04dd8 | 231 | */ |
dahooz | 2:7900c18cebd5 | 232 | |
abuitrag | 0:b738b4b05ed8 | 233 | /*********************************/ |
abuitrag | 0:b738b4b05ed8 | 234 | // RADAR FUNCTION FUCK YEAH // |
abuitrag | 0:b738b4b05ed8 | 235 | /**********************************/ |
abuitrag | 4:7ce2cdd04dd8 | 236 | { |
dahooz | 2:7900c18cebd5 | 237 | in.mode(PullDown); // Set the pin to Pull Down mode. |
dahooz | 2:7900c18cebd5 | 238 | in.rise(&flip); // Set up the interrupt for rising edge |
dahooz | 2:7900c18cebd5 | 239 | t1.start(); // start the timer |
dahooz | 2:7900c18cebd5 | 240 | t2.start(); |
abuitrag | 4:7ce2cdd04dd8 | 241 | int m=0; |
abuitrag | 4:7ce2cdd04dd8 | 242 | float a; |
abuitrag | 4:7ce2cdd04dd8 | 243 | a=t_period*0.01667; |
abuitrag | 4:7ce2cdd04dd8 | 244 | for(m=0; m<500;m++) { //as a placeholder until we find a way to navigate between programmes |
abuitrag | 0:b738b4b05ed8 | 245 | |
dahooz | 2:7900c18cebd5 | 246 | if(t_period == 0) { |
dahooz | 2:7900c18cebd5 | 247 | continue; |
abuitrag | 4:7ce2cdd04dd8 | 248 | } |
abuitrag | 4:7ce2cdd04dd8 | 249 | curt = t2.read_us(); //esta es la aguja |
abuitrag | 4:7ce2cdd04dd8 | 250 | if (curt < t_period *0.25 + m*a) |
abuitrag | 4:7ce2cdd04dd8 | 251 | { |
abuitrag | 4:7ce2cdd04dd8 | 252 | if (last != 0) { |
abuitrag | 4:7ce2cdd04dd8 | 253 | //cake empty |
dahooz | 2:7900c18cebd5 | 254 | |
abuitrag | 4:7ce2cdd04dd8 | 255 | bpL=1; |
abuitrag | 4:7ce2cdd04dd8 | 256 | bpR=1; |
abuitrag | 4:7ce2cdd04dd8 | 257 | for (int j = 0; j<48; j++) { |
abuitrag | 4:7ce2cdd04dd8 | 258 | spiR.write(0x000); |
abuitrag | 4:7ce2cdd04dd8 | 259 | spiL.write(0x000); |
abuitrag | 4:7ce2cdd04dd8 | 260 | } |
abuitrag | 4:7ce2cdd04dd8 | 261 | latch(); |
abuitrag | 4:7ce2cdd04dd8 | 262 | bpL=0; |
abuitrag | 4:7ce2cdd04dd8 | 263 | bpR=0; |
abuitrag | 4:7ce2cdd04dd8 | 264 | last = 0; |
abuitrag | 4:7ce2cdd04dd8 | 265 | } |
abuitrag | 4:7ce2cdd04dd8 | 266 | } else { |
abuitrag | 4:7ce2cdd04dd8 | 267 | if (last != 1) { |
dahooz | 2:7900c18cebd5 | 268 | |
abuitrag | 4:7ce2cdd04dd8 | 269 | //cake full |
abuitrag | 4:7ce2cdd04dd8 | 270 | bpL=1; |
abuitrag | 4:7ce2cdd04dd8 | 271 | bpR=1; |
abuitrag | 4:7ce2cdd04dd8 | 272 | |
abuitrag | 4:7ce2cdd04dd8 | 273 | for (int j = 0; j<48; j++) { |
abuitrag | 4:7ce2cdd04dd8 | 274 | spiR.write(0xFFF); |
abuitrag | 4:7ce2cdd04dd8 | 275 | spiL.write(0x000); |
dahooz | 2:7900c18cebd5 | 276 | } |
dahooz | 2:7900c18cebd5 | 277 | |
abuitrag | 4:7ce2cdd04dd8 | 278 | latch(); |
abuitrag | 4:7ce2cdd04dd8 | 279 | bpL=0; |
abuitrag | 4:7ce2cdd04dd8 | 280 | bpR=0; |
abuitrag | 4:7ce2cdd04dd8 | 281 | last = 1; |
dahooz | 2:7900c18cebd5 | 282 | } |
dahooz | 2:7900c18cebd5 | 283 | } |
abuitrag | 4:7ce2cdd04dd8 | 284 | |
abuitrag | 4:7ce2cdd04dd8 | 285 | |
abuitrag | 4:7ce2cdd04dd8 | 286 | |
abuitrag | 4:7ce2cdd04dd8 | 287 | |
abuitrag | 4:7ce2cdd04dd8 | 288 | curt = t2.read_us(); //maes di aqui va el puntillo en teoria |
abuitrag | 4:7ce2cdd04dd8 | 289 | if (curt == t_period) |
abuitrag | 4:7ce2cdd04dd8 | 290 | { |
abuitrag | 4:7ce2cdd04dd8 | 291 | if (last != 0) { |
abuitrag | 4:7ce2cdd04dd8 | 292 | //cake empty |
dahooz | 2:7900c18cebd5 | 293 | |
abuitrag | 4:7ce2cdd04dd8 | 294 | bpL=1; |
abuitrag | 4:7ce2cdd04dd8 | 295 | bpR=1; |
abuitrag | 4:7ce2cdd04dd8 | 296 | for (int j = 0; j<48; j++) { |
abuitrag | 4:7ce2cdd04dd8 | 297 | spiR.write(0x000); |
abuitrag | 4:7ce2cdd04dd8 | 298 | spiL.write(0x000); |
abuitrag | 4:7ce2cdd04dd8 | 299 | } |
abuitrag | 4:7ce2cdd04dd8 | 300 | latch(); |
abuitrag | 4:7ce2cdd04dd8 | 301 | bpL=0; |
abuitrag | 4:7ce2cdd04dd8 | 302 | bpR=0; |
abuitrag | 4:7ce2cdd04dd8 | 303 | last = 0; |
abuitrag | 4:7ce2cdd04dd8 | 304 | } |
abuitrag | 4:7ce2cdd04dd8 | 305 | } else { |
abuitrag | 4:7ce2cdd04dd8 | 306 | if (last != 1) { |
dahooz | 2:7900c18cebd5 | 307 | |
abuitrag | 4:7ce2cdd04dd8 | 308 | //cake full |
abuitrag | 4:7ce2cdd04dd8 | 309 | bpL=1; |
abuitrag | 4:7ce2cdd04dd8 | 310 | bpR=1; |
dahooz | 2:7900c18cebd5 | 311 | |
abuitrag | 4:7ce2cdd04dd8 | 312 | for (int j = 0; j<48; j++) { |
abuitrag | 4:7ce2cdd04dd8 | 313 | spiR.write(radardot[j]); |
abuitrag | 4:7ce2cdd04dd8 | 314 | spiL.write(0x000); |
abuitrag | 4:7ce2cdd04dd8 | 315 | } |
abuitrag | 4:7ce2cdd04dd8 | 316 | |
abuitrag | 4:7ce2cdd04dd8 | 317 | latch(); |
abuitrag | 4:7ce2cdd04dd8 | 318 | bpL=0; |
abuitrag | 4:7ce2cdd04dd8 | 319 | bpR=0; |
abuitrag | 4:7ce2cdd04dd8 | 320 | last = 1; |
abuitrag | 4:7ce2cdd04dd8 | 321 | } |
dahooz | 2:7900c18cebd5 | 322 | } |
abuitrag | 4:7ce2cdd04dd8 | 323 | } |
abuitrag | 4:7ce2cdd04dd8 | 324 | |
dahooz | 2:7900c18cebd5 | 325 | |
abuitrag | 4:7ce2cdd04dd8 | 326 | } } |