TYBLE16 on os5 sample programs
Dependencies: BME280 TextLCD nRF51_Vdd
Fork of TYBLE16_mbedlized_os5_BASE by
Please refer following notebook.
/users/kenjiArai/notebook/tyble16-module-as-mbed-os-5-board-mbedlization/
2_EddyStoneBeacon/Eddystone/TLMFrame.h@1:9011c83e4178, 2018-04-14 (annotated)
- Committer:
- kenjiArai
- Date:
- Sat Apr 14 04:56:34 2018 +0000
- Revision:
- 1:9011c83e4178
added samples
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kenjiArai | 1:9011c83e4178 | 1 | /* mbed Microcontroller Library |
kenjiArai | 1:9011c83e4178 | 2 | * Copyright (c) 2006-2015 ARM Limited |
kenjiArai | 1:9011c83e4178 | 3 | * |
kenjiArai | 1:9011c83e4178 | 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
kenjiArai | 1:9011c83e4178 | 5 | * you may not use this file except in compliance with the License. |
kenjiArai | 1:9011c83e4178 | 6 | * You may obtain a copy of the License at |
kenjiArai | 1:9011c83e4178 | 7 | * |
kenjiArai | 1:9011c83e4178 | 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
kenjiArai | 1:9011c83e4178 | 9 | * |
kenjiArai | 1:9011c83e4178 | 10 | * Unless required by applicable law or agreed to in writing, software |
kenjiArai | 1:9011c83e4178 | 11 | * distributed under the License is distributed on an "AS IS" BASIS, |
kenjiArai | 1:9011c83e4178 | 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
kenjiArai | 1:9011c83e4178 | 13 | * See the License for the specific language governing permissions and |
kenjiArai | 1:9011c83e4178 | 14 | * limitations under the License. |
kenjiArai | 1:9011c83e4178 | 15 | */ |
kenjiArai | 1:9011c83e4178 | 16 | |
kenjiArai | 1:9011c83e4178 | 17 | #ifndef __TLMFRAME_H__ |
kenjiArai | 1:9011c83e4178 | 18 | #define __TLMFRAME_H__ |
kenjiArai | 1:9011c83e4178 | 19 | |
kenjiArai | 1:9011c83e4178 | 20 | #include "EddystoneTypes.h" |
kenjiArai | 1:9011c83e4178 | 21 | |
kenjiArai | 1:9011c83e4178 | 22 | class TLMFrame |
kenjiArai | 1:9011c83e4178 | 23 | { |
kenjiArai | 1:9011c83e4178 | 24 | public: |
kenjiArai | 1:9011c83e4178 | 25 | TLMFrame(uint8_t tlmVersionIn = 0, |
kenjiArai | 1:9011c83e4178 | 26 | uint16_t tlmBatteryVoltageIn = 0, |
kenjiArai | 1:9011c83e4178 | 27 | uint16_t tlmBeaconTemperatureIn = 0x8000, |
kenjiArai | 1:9011c83e4178 | 28 | uint32_t tlmPduCountIn = 0, |
kenjiArai | 1:9011c83e4178 | 29 | uint32_t tlmTimeSinceBootIn = 0); |
kenjiArai | 1:9011c83e4178 | 30 | |
kenjiArai | 1:9011c83e4178 | 31 | void setTLMData(uint8_t tlmVersionIn = 0); |
kenjiArai | 1:9011c83e4178 | 32 | |
kenjiArai | 1:9011c83e4178 | 33 | void constructTLMFrame(uint8_t *rawFrame); |
kenjiArai | 1:9011c83e4178 | 34 | |
kenjiArai | 1:9011c83e4178 | 35 | size_t getRawFrameSize(void) const; |
kenjiArai | 1:9011c83e4178 | 36 | |
kenjiArai | 1:9011c83e4178 | 37 | void updateTimeSinceBoot(uint32_t nowInMillis); |
kenjiArai | 1:9011c83e4178 | 38 | |
kenjiArai | 1:9011c83e4178 | 39 | void updateBatteryVoltage(uint16_t tlmBatteryVoltageIn); |
kenjiArai | 1:9011c83e4178 | 40 | |
kenjiArai | 1:9011c83e4178 | 41 | void updateBeaconTemperature(uint16_t tlmBeaconTemperatureIn); |
kenjiArai | 1:9011c83e4178 | 42 | |
kenjiArai | 1:9011c83e4178 | 43 | void updatePduCount(void); |
kenjiArai | 1:9011c83e4178 | 44 | |
kenjiArai | 1:9011c83e4178 | 45 | uint16_t getBatteryVoltage(void) const; |
kenjiArai | 1:9011c83e4178 | 46 | |
kenjiArai | 1:9011c83e4178 | 47 | uint16_t getBeaconTemperature(void) const; |
kenjiArai | 1:9011c83e4178 | 48 | |
kenjiArai | 1:9011c83e4178 | 49 | uint8_t getTLMVersion(void) const; |
kenjiArai | 1:9011c83e4178 | 50 | |
kenjiArai | 1:9011c83e4178 | 51 | private: |
kenjiArai | 1:9011c83e4178 | 52 | static const uint8_t FRAME_TYPE_TLM = 0x20; |
kenjiArai | 1:9011c83e4178 | 53 | static const uint8_t FRAME_SIZE_TLM = 14; |
kenjiArai | 1:9011c83e4178 | 54 | |
kenjiArai | 1:9011c83e4178 | 55 | uint8_t tlmVersion; |
kenjiArai | 1:9011c83e4178 | 56 | uint32_t lastTimeSinceBootRead; |
kenjiArai | 1:9011c83e4178 | 57 | uint16_t tlmBatteryVoltage; |
kenjiArai | 1:9011c83e4178 | 58 | uint16_t tlmBeaconTemperature; |
kenjiArai | 1:9011c83e4178 | 59 | uint32_t tlmPduCount; |
kenjiArai | 1:9011c83e4178 | 60 | uint32_t tlmTimeSinceBoot; |
kenjiArai | 1:9011c83e4178 | 61 | }; |
kenjiArai | 1:9011c83e4178 | 62 | |
kenjiArai | 1:9011c83e4178 | 63 | #endif /* __TLMFRAME_H__ */ |