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.
Fork of gnss by
gnss_operations.h
00001 00002 #include "gnss.h" 00003 00004 #define UBX_FRAME_SIZE 8 00005 #ifdef __cplusplus 00006 extern "C" { 00007 #endif 00008 00009 /** Enums 00010 */ 00011 enum Command{ 00012 POWER_ON, 00013 POWER_OFF, 00014 MON_VER, 00015 ENABLE_UBX, 00016 RESTART, // mbed conflict with RESET 00017 CUSTOMER, 00018 AVAILABLE_CONFIG 00019 }; 00020 /** The reset modes 00021 */ 00022 enum Start{ 00023 HOT, 00024 COLD, 00025 WARM, 00026 MAX_MODE 00027 }; 00028 00029 /** The operation modes 00030 */ 00031 enum Powermodes{ 00032 00033 CONSERVATIVE_CONTINOUS, 00034 AGGRESSIVE_CONTINUOS, 00035 SEMI_CONTINOUS, 00036 FULL_POWER, 00037 FULL_POWER_BLOCK_LEVEL, 00038 FULL_POWER_BUILDING_LEVEL, 00039 AVAILABLE_OPERATION 00040 }; 00041 00042 00043 class GnssOperations : public GnssSerial{ 00044 00045 //GnssSerial constructor can be called here to configure different baud rate 00046 //Constructor not required at the moment 00047 //GnssOperations(); 00048 00049 public: 00050 00051 /** Enable GNSS receiver UBX-NAV-PVT messages 00052 * Navigation Position Velocity Time Solution 00053 * @param void 00054 * @return int 1: Successful 00055 * 0: Failure 00056 */ 00057 int enable_ubx_nav_pvt(); 00058 00059 /** Enable GNSS receiver UBX-STATUS messages 00060 * Receiver Navigation Status 00061 * @param void 00062 * @return int 1: Successful 00063 * 0: Failure 00064 */ 00065 int enable_ubx_nav_status(); 00066 00067 /** Enable GNSS receiver UBX-NAV-SAT messages 00068 * Satellite Information 00069 * @param void 00070 * @return int 1: Successful 00071 * 0: Failure 00072 */ 00073 int enable_ubx_nav_sat(); 00074 00075 /** Enable GNSS receiver UBX-NAV-SOL messages 00076 * Navigation Solution Information 00077 * @param void 00078 * @return int 1: Successful 00079 * 0: Failure 00080 */ 00081 int enable_ubx_nav_sol(); 00082 00083 /** Disable GNSS receiver UBX-NAV-PVT messages 00084 * @param void 00085 * @return int 1: Successful 00086 * 0: Failure 00087 */ 00088 int disable_ubx_nav_pvt(); 00089 00090 /** Enable GNSS receiver UBX-NAV5 messages 00091 * Navigation Engine Settings 00092 * @param uint acc Defines positioning accuracy 00093 * @return int 1: Successful 00094 * 0: Failure 00095 */ 00096 int enable_ubx_nav5(unsigned int acc); 00097 00098 /** Enable GNSS receiver UBX-NAVX5 messages 00099 * Navigation Engine Settings 00100 * @return int 1: Successful 00101 * 0: Failure 00102 */ 00103 int enable_ubx_navx5(); 00104 00105 /** Enable GNSS receiver UBX-CFG-ODO messages 00106 * Odometer, Low-speed COG Engine Settings 00107 * @param void 00108 * @return int 1: Successful 00109 * 0: Failure 00110 */ 00111 int enable_ubx_odo(); 00112 00113 /** Disable GNSS receiver UBX-CFG-ODO messages 00114 * @param void 00115 * @return int 1: Successful 00116 * 0: Failure 00117 */ 00118 int disable_ubx_odo(); 00119 00120 /** Enable GNSS receiver UBX-NAV-ODO messages 00121 * Odometer, Low-speed COG Engine Settings 00122 * @param void 00123 * @return int 1: Successful 00124 * 0: Failure 00125 */ 00126 int enable_ubx_nav_odo(); 00127 00128 /** Disable GNSS receiver UBX-NAV-ODO messages 00129 * Odometer, Low-speed COG Engine Settings 00130 * @param void 00131 * @return int 1: Successful 00132 * 0: Failure 00133 */ 00134 int disable_ubx_nav_odo(); 00135 00136 /** Enable GNSS receiver UBX-LOG-BATCH messages 00137 * Batched data 00138 * @param void 00139 * @return int 1: Successful 00140 * 0: Failure 00141 */ 00142 int enable_ubx_batch_feature(); 00143 00144 /** Disable GNSS receiver UBX-LOG-BATCH messages 00145 * Batched data 00146 * @param void 00147 * @return int 1: Successful 00148 * 0: Failure 00149 */ 00150 int disable_ubx_batch_feature(); 00151 00152 /** Configure GNSS receiver batching feature 00153 * Get/Set data batching configuration 00154 * @param tUBX_CFG_BATCH 00155 * @return int 1: Successful 00156 * 0: Failure 00157 */ 00158 int cfg_batch_feature(tUBX_CFG_BATCH *obj); 00159 00160 /** Configure GNSS receiver power mode 00161 * Power mode setup 00162 * @param Powermodes SEMI_CONTINOUS 00163 * AGGRESSIVE_CONTINUOS 00164 * CONSERVATIVE_CONTINOUS 00165 * FULL_POWER 00166 * FULL_POWER_BLOCK_LEVEL 00167 * minimumAcqTime boolean 00168 * 00169 * @return int 1: Successful 00170 * 0: Failure 00171 */ 00172 int cfg_power_mode(Powermodes power_mode, bool minimumAcqTime); 00173 00174 /** Method to poll the GNSS configuration 00175 * @param void 00176 * @return bool true: Successful 00177 * false: Failure 00178 */ 00179 bool verify_gnss_mode(); 00180 00181 /** Configure GNSS startup mode 00182 * Power mode setup 00183 * @param start_mode 0: Hot Start 00184 * 1: Warm Start 00185 * 2: Cold Start 00186 * 00187 * @return int 1: Successful 00188 * 0: Failure 00189 */ 00190 int start_mode(int start_mode); 00191 00192 /** Send char to GNSS receiver 00193 * @param char 00194 * @return void 00195 */ 00196 void send_to_gnss(char); 00197 00198 /** Power On GNSS receiver 00199 * 00200 * @return void 00201 */ 00202 void power_on_gnss(); 00203 00204 }; 00205 #ifdef __cplusplus 00206 } 00207 #endif
Generated on Tue Jul 12 2022 21:37:24 by
