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 Vincent Wochnik

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?

UserRevisionLine numberNew 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 }