positioning updates

Dependents:   example-gnss

Fork of gnss by u-blox

gnss_operations.h

Committer:
bqam
Date:
2018-09-12
Revision:
17:7adca4350499
Parent:
15:cb9861f0f4d8
Child:
19:bc678f383db1

File content as of revision 17:7adca4350499:


#include "gnss.h"

#define UBX_FRAME_SIZE 8
#ifdef __cplusplus
extern "C" {
#endif

/** Enums
*/
	enum Command{
			POWER_ON,
			POWER_OFF,
			MON_VER,
			ENABLE_UBX,
			RESTART, // mbed conflict with RESET
			CUSTOMER,
			AVAILABLE_CONFIG
		};
	/** The reset modes
	*/
	enum Start{
			HOT,
			WARM,
			COLD,
			AMOUNT_MODE
		};

	/** The operation modes
	*/
	enum Powermodes{

		CONSERVATIVE_CONTINOUS,
		AGGRESSIVE_CONTINUOS,
		SEMI_CONTINOUS,
		FULL_POWER,
		FULL_POWER_BLOCK_LEVEL,
		FULL_POWER_BUILDING_LEVEL,
		AVAILABLE_OPERATION
	};


class GnssOperations : public GnssSerial{

	//GnssSerial constructor can be called here to configure different baud rate
	//Constructor not required at the moment
	//GnssOperations();

public:

	int enable_ubx_nav_pvt();
	int disable_ubx_nav_pvt();
	int enable_ubx_nav5(unsigned int acc);
	int enable_ubx_odo();
	int disable_ubx_odo();
	int enable_ubx_nav_odo();
	int disable_ubx_nav_odo();
	int enable_ubx_batch_feature();
	int disable_ubx_batch_feature();
	int cfg_batch_feature(tUBX_CFG_BATCH *obj);
	int cfg_power_mode(Powermodes power_mode);
	int start_mode(int start_mode);

	void send_to_gnss(char);
	void power_on_gnss();

};
#ifdef __cplusplus
}
#endif