test
Dependencies: BLE_API nRF51822 mbed
Fork of KS7 by
main.cpp@4:edd6e262de9e, 2015-10-24 (annotated)
- Committer:
- akita11
- Date:
- Sat Oct 24 11:13:19 2015 +0000
- Revision:
- 4:edd6e262de9e
- Parent:
- 3:2398a9368c9b
- Child:
- 5:1730064b94bd
?????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
akita11 | 0:08c8325a21ec | 1 | #include "mbed.h" |
akita11 | 0:08c8325a21ec | 2 | #include "io.h" |
akita11 | 0:08c8325a21ec | 3 | |
akita11 | 4:edd6e262de9e | 4 | //Serial pc(P0_9, P0_8);// TX=P0_9 |
akita11 | 4:edd6e262de9e | 5 | |
akita11 | 4:edd6e262de9e | 6 | /* |
akita11 | 4:edd6e262de9e | 7 | Serial pc(P0_9, P0_8);// TX=P0_9 |
akita11 | 4:edd6e262de9e | 8 | AnalogIn vin(P0_1); |
akita11 | 4:edd6e262de9e | 9 | |
akita11 | 4:edd6e262de9e | 10 | int main() |
akita11 | 4:edd6e262de9e | 11 | { |
akita11 | 4:edd6e262de9e | 12 | pc.baud(9600); |
akita11 | 4:edd6e262de9e | 13 | while(1){ |
akita11 | 4:edd6e262de9e | 14 | pc.printf("CONFIG=%x\r\n", NRF_ADC->CONFIG); // 0x0000046a |
akita11 | 4:edd6e262de9e | 15 | // EXTREFSEL=00 (none) |
akita11 | 4:edd6e262de9e | 16 | // PSEL=00000100 (use AnalogInput2) |
akita11 | 4:edd6e262de9e | 17 | // REFSEL=11 (VDD with 1/3 prescale) |
akita11 | 4:edd6e262de9e | 18 | // INPSEL=010 (prescale=1/3) |
akita11 | 4:edd6e262de9e | 19 | // RES=10 (10bit) |
akita11 | 4:edd6e262de9e | 20 | pc.printf("%f %d\r\n", vin.read(), NRF_ADC->RESULT); |
akita11 | 4:edd6e262de9e | 21 | wait(0.1); |
akita11 | 4:edd6e262de9e | 22 | } |
akita11 | 4:edd6e262de9e | 23 | } |
akita11 | 4:edd6e262de9e | 24 | */ |
akita11 | 4:edd6e262de9e | 25 | |
akita11 | 0:08c8325a21ec | 26 | io io; |
akita11 | 0:08c8325a21ec | 27 | |
akita11 | 0:08c8325a21ec | 28 | Ticker tk; // 1s timer for switch check & weighgt measure |
akita11 | 0:08c8325a21ec | 29 | float weight; |
akita11 | 0:08c8325a21ec | 30 | uint8_t fPow = 0; |
akita11 | 0:08c8325a21ec | 31 | |
akita11 | 0:08c8325a21ec | 32 | // 1s timer for switch check & weighgt measure |
akita11 | 0:08c8325a21ec | 33 | void ticker_1s() |
akita11 | 0:08c8325a21ec | 34 | { |
akita11 | 0:08c8325a21ec | 35 | io.analog_pow(1); // turn analog power on |
akita11 | 0:08c8325a21ec | 36 | weight = io.get_weight(); // get weight [g] |
akita11 | 3:2398a9368c9b | 37 | /* |
akita11 | 0:08c8325a21ec | 38 | // check switch, and control power flag (fPower) |
akita11 | 0:08c8325a21ec | 39 | if (fPow == 0 && io.get_switch() == 1){ |
akita11 | 0:08c8325a21ec | 40 | while(io.get_switch() == 1); // wait until switch released |
akita11 | 0:08c8325a21ec | 41 | fPow = 1; |
akita11 | 0:08c8325a21ec | 42 | } |
akita11 | 0:08c8325a21ec | 43 | if (fPow == 1 && io.get_switch() == 1){ |
akita11 | 0:08c8325a21ec | 44 | while(io.get_switch() == 1); // wait until switch released |
akita11 | 0:08c8325a21ec | 45 | fPow = 0; |
akita11 | 0:08c8325a21ec | 46 | } |
akita11 | 3:2398a9368c9b | 47 | */ |
akita11 | 4:edd6e262de9e | 48 | |
akita11 | 4:edd6e262de9e | 49 | // io.display_value = (uint16_t)(io.get_weight_raw() * 9999.0); // dummy display |
akita11 | 4:edd6e262de9e | 50 | // io.display_value = (int)(io.get_x() * 9900 + io.get_y() * 99); // test: display joystick XY value |
akita11 | 4:edd6e262de9e | 51 | // io.display_value = (uint16_t)(io.get_x() * 9999.0); // dummy display |
akita11 | 4:edd6e262de9e | 52 | |
akita11 | 4:edd6e262de9e | 53 | |
akita11 | 0:08c8325a21ec | 54 | io.analog_pow(0); // turn analog power off |
akita11 | 0:08c8325a21ec | 55 | } |
akita11 | 0:08c8325a21ec | 56 | |
akita11 | 0:08c8325a21ec | 57 | int main() |
akita11 | 0:08c8325a21ec | 58 | { |
akita11 | 4:edd6e262de9e | 59 | tk.attach(&ticker_1s, 0.1); |
akita11 | 4:edd6e262de9e | 60 | // io.calibrate_weight(); // initial calibration |
akita11 | 0:08c8325a21ec | 61 | while(1){ |
akita11 | 4:edd6e262de9e | 62 | io.display(1); |
akita11 | 4:edd6e262de9e | 63 | for (int i = 0; i < 50; i++){ |
akita11 | 4:edd6e262de9e | 64 | io.display_value = (uint16_t)(io.get_weight() * 9999.0); // dummy display |
akita11 | 4:edd6e262de9e | 65 | wait(0.1); |
akita11 | 4:edd6e262de9e | 66 | } |
akita11 | 4:edd6e262de9e | 67 | io.display(0.3); |
akita11 | 4:edd6e262de9e | 68 | for (int i = 0; i < 50; i++){ |
akita11 | 4:edd6e262de9e | 69 | io.display_value = (int)(io.get_x() * 9900 + io.get_y() * 99); // test: display joystick XY value |
akita11 | 4:edd6e262de9e | 70 | wait(0.1); |
akita11 | 4:edd6e262de9e | 71 | } |
akita11 | 4:edd6e262de9e | 72 | // io.display_value = (uint16_t)(io.get_weight() * 9999.0); // dummy display |
akita11 | 4:edd6e262de9e | 73 | // wait(0.1); |
akita11 | 4:edd6e262de9e | 74 | // for (float i = 0; i < 1.0; i+=0.05){ |
akita11 | 4:edd6e262de9e | 75 | // if (i <0.5) io.display(1.0-i); |
akita11 | 4:edd6e262de9e | 76 | // else io.display(i); // change display brightneess |
akita11 | 4:edd6e262de9e | 77 | // wait(0.1); |
akita11 | 4:edd6e262de9e | 78 | // io.display_value = (uint16_t)(io.get_weight() * 9999.0); // dummy display |
akita11 | 4:edd6e262de9e | 79 | // } |
akita11 | 0:08c8325a21ec | 80 | } |
akita11 | 0:08c8325a21ec | 81 | } |
akita11 | 0:08c8325a21ec | 82 |