Release candidate version. The pointer in GAS Pressure display is changed to a triangle.

Dependencies:   UniGraphic mbed vt100

Please note, at 2-Mar-2018 the current version of mbed-lib has a defect in Ticker.
https://os.mbed.com/forum/bugs-suggestions/topic/29287/

So, mbed lib version 157 is intentionally being used.
Please do not update mbed library until the problem in the above URL is fixed.

In this version, format of GAS Pressure Display has been changed.
/media/uploads/Rhyme/low.jpg

/media/uploads/Rhyme/good.jpg

/media/uploads/Rhyme/high.jpg

moto

Committer:
Rhyme
Date:
Fri Mar 02 07:56:09 2018 +0000
Revision:
0:774324cbc5a6
Release candidate version. GAS Pressure pointer is now a triangle.; Some source file clean-up was done.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Rhyme 0:774324cbc5a6 1 /**
Rhyme 0:774324cbc5a6 2 * Copyright 2015 Afero, Inc.
Rhyme 0:774324cbc5a6 3 *
Rhyme 0:774324cbc5a6 4 * Licensed under the Apache License, Version 2.0 (the "License");
Rhyme 0:774324cbc5a6 5 * you may not use this file except in compliance with the License.
Rhyme 0:774324cbc5a6 6 * You may obtain a copy of the License at
Rhyme 0:774324cbc5a6 7 *
Rhyme 0:774324cbc5a6 8 * http://www.apache.org/licenses/LICENSE-2.0
Rhyme 0:774324cbc5a6 9 *
Rhyme 0:774324cbc5a6 10 * Unless required by applicable law or agreed to in writing, software
Rhyme 0:774324cbc5a6 11 * distributed under the License is distributed on an "AS IS" BASIS,
Rhyme 0:774324cbc5a6 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Rhyme 0:774324cbc5a6 13 * See the License for the specific language governing permissions and
Rhyme 0:774324cbc5a6 14 * limitations under the License.
Rhyme 0:774324cbc5a6 15 */
Rhyme 0:774324cbc5a6 16
Rhyme 0:774324cbc5a6 17 #ifndef COMMAND_H__
Rhyme 0:774324cbc5a6 18 #define COMMAND_H__
Rhyme 0:774324cbc5a6 19
Rhyme 0:774324cbc5a6 20 #include "mbed.h" //wsugi
Rhyme 0:774324cbc5a6 21 #include <string> //wsugi
Rhyme 0:774324cbc5a6 22
Rhyme 0:774324cbc5a6 23 using namespace std; //wsugi
Rhyme 0:774324cbc5a6 24
Rhyme 0:774324cbc5a6 25 #define SPI_CMD_MAX_LEN 256
Rhyme 0:774324cbc5a6 26
Rhyme 0:774324cbc5a6 27 #define UPDATE_REASON_UNKNOWN 0
Rhyme 0:774324cbc5a6 28 #define UPDATE_REASON_LOCAL_UPDATE 1
Rhyme 0:774324cbc5a6 29 #define UPDATE_REASON_SERVICE_SET 2
Rhyme 0:774324cbc5a6 30 #define UPDATE_REASON_MCU_SET 3
Rhyme 0:774324cbc5a6 31 #define UPDATE_REASON_RELINK 4
Rhyme 0:774324cbc5a6 32 #define UPDATE_REASON_REBOOT 5
Rhyme 0:774324cbc5a6 33
Rhyme 0:774324cbc5a6 34 class Command {
Rhyme 0:774324cbc5a6 35 public:
Rhyme 0:774324cbc5a6 36 Command(uint16_t len, uint8_t *bytes);
Rhyme 0:774324cbc5a6 37
Rhyme 0:774324cbc5a6 38 Command(uint8_t requestId, const char *str);
Rhyme 0:774324cbc5a6 39
Rhyme 0:774324cbc5a6 40 Command(uint8_t requestId, uint8_t cmd, uint16_t attrId);
Rhyme 0:774324cbc5a6 41
Rhyme 0:774324cbc5a6 42 Command(uint8_t requestId, uint8_t cmd, uint16_t attrId, uint16_t valueLen, uint8_t *value);
Rhyme 0:774324cbc5a6 43
Rhyme 0:774324cbc5a6 44 Command(uint8_t requestId, uint8_t cmd, uint16_t attrId, uint8_t status, uint8_t reason, uint16_t valueLen,
Rhyme 0:774324cbc5a6 45 uint8_t *value);
Rhyme 0:774324cbc5a6 46
Rhyme 0:774324cbc5a6 47 Command();
Rhyme 0:774324cbc5a6 48
Rhyme 0:774324cbc5a6 49 ~Command();
Rhyme 0:774324cbc5a6 50
Rhyme 0:774324cbc5a6 51 uint8_t getCommand();
Rhyme 0:774324cbc5a6 52
Rhyme 0:774324cbc5a6 53 uint8_t getReqId();
Rhyme 0:774324cbc5a6 54
Rhyme 0:774324cbc5a6 55 uint16_t getAttrId();
Rhyme 0:774324cbc5a6 56
Rhyme 0:774324cbc5a6 57 uint16_t getValueLen();
Rhyme 0:774324cbc5a6 58
Rhyme 0:774324cbc5a6 59 void getValue(uint8_t *value);
Rhyme 0:774324cbc5a6 60
Rhyme 0:774324cbc5a6 61 uint8_t *getValueP();
Rhyme 0:774324cbc5a6 62
Rhyme 0:774324cbc5a6 63 uint16_t getSize();
Rhyme 0:774324cbc5a6 64
Rhyme 0:774324cbc5a6 65 uint16_t getBytes(uint8_t *bytes);
Rhyme 0:774324cbc5a6 66
Rhyme 0:774324cbc5a6 67 bool isValid();
Rhyme 0:774324cbc5a6 68
Rhyme 0:774324cbc5a6 69 void dump();
Rhyme 0:774324cbc5a6 70
Rhyme 0:774324cbc5a6 71 void dumpBytes();
Rhyme 0:774324cbc5a6 72
Rhyme 0:774324cbc5a6 73 private:
Rhyme 0:774324cbc5a6 74 uint8_t getVal(char c);
Rhyme 0:774324cbc5a6 75 int strToValue(char *valueStr, uint8_t *value);
Rhyme 0:774324cbc5a6 76
Rhyme 0:774324cbc5a6 77 uint8_t strToCmd(char *cmdStr);
Rhyme 0:774324cbc5a6 78
Rhyme 0:774324cbc5a6 79 uint16_t strToAttrId(char *attrIdStr);
Rhyme 0:774324cbc5a6 80
Rhyme 0:774324cbc5a6 81 uint16_t _len;
Rhyme 0:774324cbc5a6 82 uint8_t _cmd;
Rhyme 0:774324cbc5a6 83 uint8_t _requestId;
Rhyme 0:774324cbc5a6 84 uint16_t _attrId;
Rhyme 0:774324cbc5a6 85 uint8_t _status;
Rhyme 0:774324cbc5a6 86 uint8_t _reason;
Rhyme 0:774324cbc5a6 87 uint16_t _valueLen;
Rhyme 0:774324cbc5a6 88 uint8_t *_value;
Rhyme 0:774324cbc5a6 89
Rhyme 0:774324cbc5a6 90 char _printBuf[256];
Rhyme 0:774324cbc5a6 91
Rhyme 0:774324cbc5a6 92 };
Rhyme 0:774324cbc5a6 93
Rhyme 0:774324cbc5a6 94 #endif // COMMAND_H__