Gas Pressure Display Updated Power control for Pressure sensor added

Dependencies:   UniGraphic mbed vt100

Committer:
Rhyme
Date:
Fri Feb 16 08:27:50 2018 +0000
Revision:
0:37c8ecde13c2
control PSE530 power via PTC5 (pse530_en)

Who changed what in which revision?

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