AS-289R2 test program for micro:bit
Dependencies: AS289R2 microbit
Fork of microbit-hello-world by
main.cpp@1:8ffcee7d06bc, 2017-12-22 (annotated)
- Committer:
- MACRUM
- Date:
- Fri Dec 22 01:57:58 2017 +0000
- Revision:
- 1:8ffcee7d06bc
- Parent:
- 0:0041f35b0c4c
Initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
LancasterUniversity | 0:0041f35b0c4c | 1 | /* |
LancasterUniversity | 0:0041f35b0c4c | 2 | The MIT License (MIT) |
LancasterUniversity | 0:0041f35b0c4c | 3 | |
LancasterUniversity | 0:0041f35b0c4c | 4 | Copyright (c) 2016 British Broadcasting Corporation. |
LancasterUniversity | 0:0041f35b0c4c | 5 | This software is provided by Lancaster University by arrangement with the BBC. |
LancasterUniversity | 0:0041f35b0c4c | 6 | |
LancasterUniversity | 0:0041f35b0c4c | 7 | Permission is hereby granted, free of charge, to any person obtaining a |
LancasterUniversity | 0:0041f35b0c4c | 8 | copy of this software and associated documentation files (the "Software"), |
LancasterUniversity | 0:0041f35b0c4c | 9 | to deal in the Software without restriction, including without limitation |
LancasterUniversity | 0:0041f35b0c4c | 10 | the rights to use, copy, modify, merge, publish, distribute, sublicense, |
LancasterUniversity | 0:0041f35b0c4c | 11 | and/or sell copies of the Software, and to permit persons to whom the |
LancasterUniversity | 0:0041f35b0c4c | 12 | Software is furnished to do so, subject to the following conditions: |
LancasterUniversity | 0:0041f35b0c4c | 13 | |
LancasterUniversity | 0:0041f35b0c4c | 14 | The above copyright notice and this permission notice shall be included in |
LancasterUniversity | 0:0041f35b0c4c | 15 | all copies or substantial portions of the Software. |
LancasterUniversity | 0:0041f35b0c4c | 16 | |
LancasterUniversity | 0:0041f35b0c4c | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
LancasterUniversity | 0:0041f35b0c4c | 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
LancasterUniversity | 0:0041f35b0c4c | 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
LancasterUniversity | 0:0041f35b0c4c | 20 | THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
LancasterUniversity | 0:0041f35b0c4c | 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
LancasterUniversity | 0:0041f35b0c4c | 22 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
LancasterUniversity | 0:0041f35b0c4c | 23 | DEALINGS IN THE SOFTWARE. |
LancasterUniversity | 0:0041f35b0c4c | 24 | */ |
LancasterUniversity | 0:0041f35b0c4c | 25 | |
LancasterUniversity | 0:0041f35b0c4c | 26 | #include "MicroBit.h" |
MACRUM | 1:8ffcee7d06bc | 27 | #include "AS289R2.h" |
LancasterUniversity | 0:0041f35b0c4c | 28 | |
LancasterUniversity | 0:0041f35b0c4c | 29 | MicroBit uBit; |
MACRUM | 1:8ffcee7d06bc | 30 | AS289R2 tp(p16); |
MACRUM | 1:8ffcee7d06bc | 31 | |
MACRUM | 1:8ffcee7d06bc | 32 | void printTemp(MicroBitEvent) |
MACRUM | 1:8ffcee7d06bc | 33 | { |
MACRUM | 1:8ffcee7d06bc | 34 | tp.printf("温度: %d\r", uBit.thermometer.getTemperature()); |
MACRUM | 1:8ffcee7d06bc | 35 | } |
MACRUM | 1:8ffcee7d06bc | 36 | |
MACRUM | 1:8ffcee7d06bc | 37 | void printAcc(MicroBitEvent) |
MACRUM | 1:8ffcee7d06bc | 38 | { |
MACRUM | 1:8ffcee7d06bc | 39 | int x = uBit.accelerometer.getX(); |
MACRUM | 1:8ffcee7d06bc | 40 | int y = uBit.accelerometer.getY(); |
MACRUM | 1:8ffcee7d06bc | 41 | int z = uBit.accelerometer.getZ(); |
MACRUM | 1:8ffcee7d06bc | 42 | tp.printf("加速度: %+5d, %+5d, %+5d\r", x, y, z); |
MACRUM | 1:8ffcee7d06bc | 43 | } |
LancasterUniversity | 0:0041f35b0c4c | 44 | |
LancasterUniversity | 0:0041f35b0c4c | 45 | int main() |
LancasterUniversity | 0:0041f35b0c4c | 46 | { |
LancasterUniversity | 0:0041f35b0c4c | 47 | // Initialise the micro:bit runtime. |
LancasterUniversity | 0:0041f35b0c4c | 48 | uBit.init(); |
LancasterUniversity | 0:0041f35b0c4c | 49 | |
MACRUM | 1:8ffcee7d06bc | 50 | // Register event handlers for button presses (either button fires!) |
MACRUM | 1:8ffcee7d06bc | 51 | uBit.messageBus.listen(MICROBIT_ID_BUTTON_A, MICROBIT_BUTTON_EVT_CLICK, printTemp); |
MACRUM | 1:8ffcee7d06bc | 52 | uBit.messageBus.listen(MICROBIT_ID_BUTTON_B, MICROBIT_BUTTON_EVT_CLICK, printAcc); |
LancasterUniversity | 0:0041f35b0c4c | 53 | |
MACRUM | 1:8ffcee7d06bc | 54 | tp.initialize(); |
MACRUM | 1:8ffcee7d06bc | 55 | tp.putLineFeed(2); |
MACRUM | 1:8ffcee7d06bc | 56 | tp.printf("** Thermal Printer Shield **\r\r"); |
MACRUM | 1:8ffcee7d06bc | 57 | |
LancasterUniversity | 0:0041f35b0c4c | 58 | release_fiber(); |
LancasterUniversity | 0:0041f35b0c4c | 59 | } |