Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: NCP5623B GpsParser ISL29011 libmDot-mbed5 MTS-Serial MMA845x DOGS102 MPL3115A2
Mode/ModeGps.h@7:a31236c2e75c, 2016-11-04 (annotated)
- Committer:
- Mike Fiore
- Date:
- Fri Nov 04 17:27:05 2016 -0500
- Revision:
- 7:a31236c2e75c
update from git revision 2.1.2
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Mike Fiore |
7:a31236c2e75c | 1 | /* Copyright (c) <2016> <MultiTech Systems>, MIT License |
| Mike Fiore |
7:a31236c2e75c | 2 | * |
| Mike Fiore |
7:a31236c2e75c | 3 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this software |
| Mike Fiore |
7:a31236c2e75c | 4 | * and associated documentation files (the "Software"), to deal in the Software without restriction, |
| Mike Fiore |
7:a31236c2e75c | 5 | * including without limitation the rights to use, copy, modify, merge, publish, distribute, |
| Mike Fiore |
7:a31236c2e75c | 6 | * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is |
| Mike Fiore |
7:a31236c2e75c | 7 | * furnished to do so, subject to the following conditions: |
| Mike Fiore |
7:a31236c2e75c | 8 | * |
| Mike Fiore |
7:a31236c2e75c | 9 | * The above copyright notice and this permission notice shall be included in all copies or |
| Mike Fiore |
7:a31236c2e75c | 10 | * substantial portions of the Software. |
| Mike Fiore |
7:a31236c2e75c | 11 | * |
| Mike Fiore |
7:a31236c2e75c | 12 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING |
| Mike Fiore |
7:a31236c2e75c | 13 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
| Mike Fiore |
7:a31236c2e75c | 14 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, |
| Mike Fiore |
7:a31236c2e75c | 15 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
| Mike Fiore |
7:a31236c2e75c | 16 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| Mike Fiore |
7:a31236c2e75c | 17 | */ |
| Mike Fiore |
7:a31236c2e75c | 18 | |
| Mike Fiore |
7:a31236c2e75c | 19 | #ifndef __MODEGPS_H__ |
| Mike Fiore |
7:a31236c2e75c | 20 | #define __MODEGPS_H__ |
| Mike Fiore |
7:a31236c2e75c | 21 | |
| Mike Fiore |
7:a31236c2e75c | 22 | #include "Mode.h" |
| Mike Fiore |
7:a31236c2e75c | 23 | #include "ModeJoin.h" |
| Mike Fiore |
7:a31236c2e75c | 24 | #include "LayoutHelp.h" |
| Mike Fiore |
7:a31236c2e75c | 25 | #include "LayoutSurveyGps.h" |
| Mike Fiore |
7:a31236c2e75c | 26 | |
| Mike Fiore |
7:a31236c2e75c | 27 | class ModeGps : public Mode{ |
| Mike Fiore |
7:a31236c2e75c | 28 | public: |
| Mike Fiore |
7:a31236c2e75c | 29 | ModeGps(DOGS102* lcd, ButtonHandler* buttons, mDot* dot, LoRaHandler* lora, GPSPARSER* gps, SensorHandler* sensors, ModeJoin* join); |
| Mike Fiore |
7:a31236c2e75c | 30 | ~ModeGps(); |
| Mike Fiore |
7:a31236c2e75c | 31 | bool start(); |
| Mike Fiore |
7:a31236c2e75c | 32 | |
| Mike Fiore |
7:a31236c2e75c | 33 | private: |
| Mike Fiore |
7:a31236c2e75c | 34 | enum {DATA_RATE, |
| Mike Fiore |
7:a31236c2e75c | 35 | FSB, |
| Mike Fiore |
7:a31236c2e75c | 36 | PADDING, |
| Mike Fiore |
7:a31236c2e75c | 37 | POWER, |
| Mike Fiore |
7:a31236c2e75c | 38 | INTERVAL |
| Mike Fiore |
7:a31236c2e75c | 39 | }; |
| Mike Fiore |
7:a31236c2e75c | 40 | enum {BAND_CHANGE, |
| Mike Fiore |
7:a31236c2e75c | 41 | SENDING, |
| Mike Fiore |
7:a31236c2e75c | 42 | PARAMETERS |
| Mike Fiore |
7:a31236c2e75c | 43 | }; |
| Mike Fiore |
7:a31236c2e75c | 44 | |
| Mike Fiore |
7:a31236c2e75c | 45 | LayoutHelp _help; |
| Mike Fiore |
7:a31236c2e75c | 46 | LayoutSurveyGps _sem; |
| Mike Fiore |
7:a31236c2e75c | 47 | LayoutJoin _sem_join; |
| Mike Fiore |
7:a31236c2e75c | 48 | |
| Mike Fiore |
7:a31236c2e75c | 49 | ModeJoin* _join; |
| Mike Fiore |
7:a31236c2e75c | 50 | |
| Mike Fiore |
7:a31236c2e75c | 51 | Timer _send_timer, _button_timer; |
| Mike Fiore |
7:a31236c2e75c | 52 | |
| Mike Fiore |
7:a31236c2e75c | 53 | float _temp_C; |
| Mike Fiore |
7:a31236c2e75c | 54 | std::vector<uint8_t> _send_data; |
| Mike Fiore |
7:a31236c2e75c | 55 | uint8_t _parameter, _padding, _interval, _max_padding; |
| Mike Fiore |
7:a31236c2e75c | 56 | bool _drAll, _link_check, _GPS; |
| Mike Fiore |
7:a31236c2e75c | 57 | string _Sw1, _Sw2; |
| Mike Fiore |
7:a31236c2e75c | 58 | |
| Mike Fiore |
7:a31236c2e75c | 59 | struct tm _time; |
| Mike Fiore |
7:a31236c2e75c | 60 | mDot::snr_stats _snr; |
| Mike Fiore |
7:a31236c2e75c | 61 | mDot::rssi_stats _rssi; |
| Mike Fiore |
7:a31236c2e75c | 62 | GPSPARSER::latitude _latitude; |
| Mike Fiore |
7:a31236c2e75c | 63 | GPSPARSER::longitude _longitude; |
| Mike Fiore |
7:a31236c2e75c | 64 | |
| Mike Fiore |
7:a31236c2e75c | 65 | void init(); |
| Mike Fiore |
7:a31236c2e75c | 66 | void send(); |
| Mike Fiore |
7:a31236c2e75c | 67 | void setBand(); |
| Mike Fiore |
7:a31236c2e75c | 68 | void sendData(); |
| Mike Fiore |
7:a31236c2e75c | 69 | void formatData(); |
| Mike Fiore |
7:a31236c2e75c | 70 | void drIncrement(); |
| Mike Fiore |
7:a31236c2e75c | 71 | void updateScreen(); |
| Mike Fiore |
7:a31236c2e75c | 72 | void editParameter(); |
| Mike Fiore |
7:a31236c2e75c | 73 | void changeDataRate(); |
| Mike Fiore |
7:a31236c2e75c | 74 | void changeParameter(); |
| Mike Fiore |
7:a31236c2e75c | 75 | string intToString(int num); |
| Mike Fiore |
7:a31236c2e75c | 76 | }; |
| Mike Fiore |
7:a31236c2e75c | 77 | #endif |