Official reference client implementation for Cumulocity SmartREST on u-blox C027.
Dependencies: C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed
Fork of MbedSmartRestMain by
io/DeviceIO.cpp@72:c5709ae7b193, 2015-02-16 (annotated)
- Committer:
- xinlei
- Date:
- Mon Feb 16 13:15:52 2015 +0000
- Revision:
- 72:c5709ae7b193
- Parent:
- 65:a62dbef2f924
- Child:
- 74:ca3001991fdc
logging: incorporation of dedicated logging module.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
vwochnik | 65:a62dbef2f924 | 1 | #include "DeviceIO.h" |
xinlei | 72:c5709ae7b193 | 2 | #include "logging.h" |
vwochnik | 65:a62dbef2f924 | 3 | |
vwochnik | 65:a62dbef2f924 | 4 | #define DEF "\033[39m" |
vwochnik | 65:a62dbef2f924 | 5 | #define GRE "\033[32m" |
vwochnik | 65:a62dbef2f924 | 6 | #define CYA "\033[36m" |
vwochnik | 65:a62dbef2f924 | 7 | |
vwochnik | 65:a62dbef2f924 | 8 | DeviceIO::DeviceIO(GPSI2C& gps) : |
vwochnik | 65:a62dbef2f924 | 9 | _resetButton(D4), // fire button on arduino app shield |
vwochnik | 65:a62dbef2f924 | 10 | _analog1(A0), |
vwochnik | 65:a62dbef2f924 | 11 | _analog2(A1), |
vwochnik | 65:a62dbef2f924 | 12 | _speaker(D6), |
vwochnik | 65:a62dbef2f924 | 13 | _temperatureSensor(SDA,SCL), |
vwochnik | 65:a62dbef2f924 | 14 | _accelerometer(SDA,SCL), |
vwochnik | 65:a62dbef2f924 | 15 | _lcd(D11, D13, D12, D7, D10), |
vwochnik | 65:a62dbef2f924 | 16 | _gpsTracker(gps), |
vwochnik | 65:a62dbef2f924 | 17 | _deviceFeedback(_speaker) |
vwochnik | 65:a62dbef2f924 | 18 | { |
vwochnik | 65:a62dbef2f924 | 19 | } |
vwochnik | 65:a62dbef2f924 | 20 | |
vwochnik | 65:a62dbef2f924 | 21 | bool DeviceIO::resetButtonPressed() |
vwochnik | 65:a62dbef2f924 | 22 | { |
vwochnik | 65:a62dbef2f924 | 23 | return _resetButton; |
vwochnik | 65:a62dbef2f924 | 24 | } |
vwochnik | 65:a62dbef2f924 | 25 | |
vwochnik | 65:a62dbef2f924 | 26 | GPSTracker& DeviceIO::gpsTracker() |
vwochnik | 65:a62dbef2f924 | 27 | { |
vwochnik | 65:a62dbef2f924 | 28 | return _gpsTracker; |
vwochnik | 65:a62dbef2f924 | 29 | } |
vwochnik | 65:a62dbef2f924 | 30 | |
vwochnik | 65:a62dbef2f924 | 31 | DeviceFeedback& DeviceIO::deviceFeedback() |
vwochnik | 65:a62dbef2f924 | 32 | { |
vwochnik | 65:a62dbef2f924 | 33 | return _deviceFeedback; |
vwochnik | 65:a62dbef2f924 | 34 | } |
vwochnik | 65:a62dbef2f924 | 35 | |
vwochnik | 65:a62dbef2f924 | 36 | AnalogIn& DeviceIO::analog1() |
vwochnik | 65:a62dbef2f924 | 37 | { |
vwochnik | 65:a62dbef2f924 | 38 | return _analog1; |
vwochnik | 65:a62dbef2f924 | 39 | } |
vwochnik | 65:a62dbef2f924 | 40 | |
vwochnik | 65:a62dbef2f924 | 41 | AnalogIn& DeviceIO::analog2() |
vwochnik | 65:a62dbef2f924 | 42 | { |
vwochnik | 65:a62dbef2f924 | 43 | return _analog2; |
vwochnik | 65:a62dbef2f924 | 44 | } |
vwochnik | 65:a62dbef2f924 | 45 | LM75B& DeviceIO::temperatureSensor() |
vwochnik | 65:a62dbef2f924 | 46 | { |
vwochnik | 65:a62dbef2f924 | 47 | return _temperatureSensor; |
vwochnik | 65:a62dbef2f924 | 48 | } |
vwochnik | 65:a62dbef2f924 | 49 | |
vwochnik | 65:a62dbef2f924 | 50 | MMA7660& DeviceIO::accelerometer() |
vwochnik | 65:a62dbef2f924 | 51 | { |
vwochnik | 65:a62dbef2f924 | 52 | return _accelerometer; |
vwochnik | 65:a62dbef2f924 | 53 | } |
vwochnik | 65:a62dbef2f924 | 54 | |
vwochnik | 65:a62dbef2f924 | 55 | void DeviceIO::lcdPrint(const char *line1, const char *line2, const char *line3) |
vwochnik | 65:a62dbef2f924 | 56 | { |
xinlei | 72:c5709ae7b193 | 57 | aInfo(GRE "io::lcdPrint" DEF "\r\n"); |
vwochnik | 65:a62dbef2f924 | 58 | _lcd.cls(); |
vwochnik | 65:a62dbef2f924 | 59 | _lcd.locate(0, 0); |
vwochnik | 65:a62dbef2f924 | 60 | |
vwochnik | 65:a62dbef2f924 | 61 | _lcd.printf("%s\n", line1); |
xinlei | 72:c5709ae7b193 | 62 | aInfo(GRE "> " CYA "%s\r\n" DEF, line1); |
vwochnik | 65:a62dbef2f924 | 63 | |
vwochnik | 65:a62dbef2f924 | 64 | if (line2 != NULL) { |
vwochnik | 65:a62dbef2f924 | 65 | _lcd.printf("%s\n", line2); |
xinlei | 72:c5709ae7b193 | 66 | aInfo(GRE "> " CYA "%s\r\n" DEF, line2); |
vwochnik | 65:a62dbef2f924 | 67 | |
vwochnik | 65:a62dbef2f924 | 68 | if (line3 != NULL) { |
vwochnik | 65:a62dbef2f924 | 69 | _lcd.printf("%s\n", line3); |
xinlei | 72:c5709ae7b193 | 70 | aInfo(GRE "> " CYA "%s\r\n" DEF, line3); |
vwochnik | 65:a62dbef2f924 | 71 | } |
vwochnik | 65:a62dbef2f924 | 72 | } |
vwochnik | 65:a62dbef2f924 | 73 | } |