This class provides an API to communicate with a u-blox GNSS chip. The files here were originally part of the C027_Support library (https://developer.mbed.org/teams/ublox/code/C027_Support/ at revision 138:dafbbf31bf76) but have been separated out, primarily for use on the u-blox C030 board where the cellular interace portion of the C027_Support library will instead be provided through the new mbed Cellular API.
Dependents: example-ublox-at-cellular-interface-ext example-low-power-sleep example-C030-out-of-box-demo example-C030-out-of-box-demo ... more
gnss_operations.h@12:a04f7eeece23, 2018-05-31 (annotated)
- Committer:
- Bilal Qamar
- Date:
- Thu May 31 10:59:11 2018 +0500
- Revision:
- 12:a04f7eeece23
- Child:
- 14:4b22bd505b93
GNSS Operations class added
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Bilal Qamar |
12:a04f7eeece23 | 1 | |
Bilal Qamar |
12:a04f7eeece23 | 2 | #include "gnss.h" |
Bilal Qamar |
12:a04f7eeece23 | 3 | |
Bilal Qamar |
12:a04f7eeece23 | 4 | #define UBX_FRAME_SIZE 8 |
Bilal Qamar |
12:a04f7eeece23 | 5 | #ifdef __cplusplus |
Bilal Qamar |
12:a04f7eeece23 | 6 | extern "C" { |
Bilal Qamar |
12:a04f7eeece23 | 7 | #endif |
Bilal Qamar |
12:a04f7eeece23 | 8 | |
Bilal Qamar |
12:a04f7eeece23 | 9 | /** Enums |
Bilal Qamar |
12:a04f7eeece23 | 10 | */ |
Bilal Qamar |
12:a04f7eeece23 | 11 | enum Command{ |
Bilal Qamar |
12:a04f7eeece23 | 12 | POWER_ON, |
Bilal Qamar |
12:a04f7eeece23 | 13 | POWER_OFF, |
Bilal Qamar |
12:a04f7eeece23 | 14 | MON_VER, |
Bilal Qamar |
12:a04f7eeece23 | 15 | ENABLE_UBX, |
Bilal Qamar |
12:a04f7eeece23 | 16 | RESTART, // mbed conflict with RESET |
Bilal Qamar |
12:a04f7eeece23 | 17 | CUSTOMER, |
Bilal Qamar |
12:a04f7eeece23 | 18 | AVAILABLE_CONFIG |
Bilal Qamar |
12:a04f7eeece23 | 19 | }; |
Bilal Qamar |
12:a04f7eeece23 | 20 | /** The reset modes |
Bilal Qamar |
12:a04f7eeece23 | 21 | */ |
Bilal Qamar |
12:a04f7eeece23 | 22 | enum Start{ |
Bilal Qamar |
12:a04f7eeece23 | 23 | HOT, |
Bilal Qamar |
12:a04f7eeece23 | 24 | WARM, |
Bilal Qamar |
12:a04f7eeece23 | 25 | COLD, |
Bilal Qamar |
12:a04f7eeece23 | 26 | AMOUNT_MODE |
Bilal Qamar |
12:a04f7eeece23 | 27 | }; |
Bilal Qamar |
12:a04f7eeece23 | 28 | |
Bilal Qamar |
12:a04f7eeece23 | 29 | /** The operation modes |
Bilal Qamar |
12:a04f7eeece23 | 30 | */ |
Bilal Qamar |
12:a04f7eeece23 | 31 | enum Powermodes{ |
Bilal Qamar |
12:a04f7eeece23 | 32 | SEMI_CONTINOUS, |
Bilal Qamar |
12:a04f7eeece23 | 33 | AGGRESSIVE_CONTINUOS, |
Bilal Qamar |
12:a04f7eeece23 | 34 | CONSERVATIVE_CONTINOUS, |
Bilal Qamar |
12:a04f7eeece23 | 35 | FULL_POWER, |
Bilal Qamar |
12:a04f7eeece23 | 36 | AVAILABLE_OPERATION |
Bilal Qamar |
12:a04f7eeece23 | 37 | }; |
Bilal Qamar |
12:a04f7eeece23 | 38 | |
Bilal Qamar |
12:a04f7eeece23 | 39 | class GnssOperations : public GnssSerial{ |
Bilal Qamar |
12:a04f7eeece23 | 40 | |
Bilal Qamar |
12:a04f7eeece23 | 41 | //GnssSerial constructor can be called here to configure different baud rate |
Bilal Qamar |
12:a04f7eeece23 | 42 | //Constructor not required at the moment |
Bilal Qamar |
12:a04f7eeece23 | 43 | //GnssOperations(); |
Bilal Qamar |
12:a04f7eeece23 | 44 | |
Bilal Qamar |
12:a04f7eeece23 | 45 | public: |
Bilal Qamar |
12:a04f7eeece23 | 46 | |
Bilal Qamar |
12:a04f7eeece23 | 47 | int enable_ubx_nav_pvt(); |
Bilal Qamar |
12:a04f7eeece23 | 48 | int disable_ubx_nav_pvt(); |
Bilal Qamar |
12:a04f7eeece23 | 49 | int enable_ubx_nav5(unsigned int acc); |
Bilal Qamar |
12:a04f7eeece23 | 50 | int enable_ubx_odo(); |
Bilal Qamar |
12:a04f7eeece23 | 51 | int disable_ubx_odo(); |
Bilal Qamar |
12:a04f7eeece23 | 52 | int enable_ubx_nav_odo(); |
Bilal Qamar |
12:a04f7eeece23 | 53 | int disable_ubx_nav_odo(); |
Bilal Qamar |
12:a04f7eeece23 | 54 | int enable_ubx_batch_feature(); |
Bilal Qamar |
12:a04f7eeece23 | 55 | int disable_ubx_batch_feature(); |
Bilal Qamar |
12:a04f7eeece23 | 56 | int cfg_batch_feature(tUBX_CFG_BATCH *obj); |
Bilal Qamar |
12:a04f7eeece23 | 57 | int cfg_power_mode(int power_mode); |
Bilal Qamar |
12:a04f7eeece23 | 58 | int start_mode(int start_mode); |
Bilal Qamar |
12:a04f7eeece23 | 59 | |
Bilal Qamar |
12:a04f7eeece23 | 60 | }; |
Bilal Qamar |
12:a04f7eeece23 | 61 | #ifdef __cplusplus |
Bilal Qamar |
12:a04f7eeece23 | 62 | } |
Bilal Qamar |
12:a04f7eeece23 | 63 | #endif |