|
Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
|
Files | |
| file | gnss_publish.h |
| GNSS driver backend helpers for publishing data and satellite information. | |
Data Structures | |
| struct | gnss_driver_api |
| Driver Operations GNSS driver operations More... | |
Typedefs | |
| typedef int(* | gnss_set_fix_rate_t) (const struct device *dev, uint32_t fix_interval_ms) |
| API for setting fix rate. | |
| typedef int(* | gnss_get_fix_rate_t) (const struct device *dev, uint32_t *fix_interval_ms) |
| API for getting fix rate. | |
| typedef int(* | gnss_set_navigation_mode_t) (const struct device *dev, enum gnss_navigation_mode mode) |
| API for setting navigation mode. | |
| typedef int(* | gnss_get_navigation_mode_t) (const struct device *dev, enum gnss_navigation_mode *mode) |
| API for getting navigation mode. | |
| typedef int(* | gnss_set_enabled_systems_t) (const struct device *dev, gnss_systems_t systems) |
| API for enabling systems. | |
| typedef int(* | gnss_get_enabled_systems_t) (const struct device *dev, gnss_systems_t *systems) |
| API for getting enabled systems. | |
| typedef int(* | gnss_get_supported_systems_t) (const struct device *dev, gnss_systems_t *systems) |
| API for getting enabled systems. | |
| typedef int(* | gnss_get_latest_timepulse_t) (const struct device *dev, k_ticks_t *timestamp) |
| API for getting timestamp of last PPS pulse. | |
| void | gnss_publish_data (const struct device *dev, const struct gnss_data *data) |
| Publish GNSS data to registered callbacks. | |
| void | gnss_publish_satellites (const struct device *dev, const struct gnss_satellite *satellites, uint16_t size) |
| Publish GNSS satellite information to registered callbacks. | |
This group contains the API type definitions, callback signatures, and other helpers required to implement a GNSS driver.
| typedef int(* gnss_get_enabled_systems_t) (const struct device *dev, gnss_systems_t *systems) |
#include <zephyr/drivers/gnss.h>
API for getting enabled systems.
#include <zephyr/drivers/gnss.h>
API for getting fix rate.
#include <zephyr/drivers/gnss.h>
API for getting timestamp of last PPS pulse.
| typedef int(* gnss_get_navigation_mode_t) (const struct device *dev, enum gnss_navigation_mode *mode) |
#include <zephyr/drivers/gnss.h>
API for getting navigation mode.
| typedef int(* gnss_get_supported_systems_t) (const struct device *dev, gnss_systems_t *systems) |
#include <zephyr/drivers/gnss.h>
API for getting enabled systems.
| typedef int(* gnss_set_enabled_systems_t) (const struct device *dev, gnss_systems_t systems) |
#include <zephyr/drivers/gnss.h>
API for enabling systems.
#include <zephyr/drivers/gnss.h>
API for setting fix rate.
| typedef int(* gnss_set_navigation_mode_t) (const struct device *dev, enum gnss_navigation_mode mode) |
#include <zephyr/drivers/gnss.h>
API for setting navigation mode.
#include <zephyr/drivers/gnss/gnss_publish.h>
Publish GNSS data to registered callbacks.
Invokes all callbacks registered with GNSS_DATA_CALLBACK_DEFINE() and GNSS_DT_DATA_CALLBACK_DEFINE() that match dev.
GNSS drivers should call this function whenever new navigation data is available from the receiver.
| dev | GNSS device instance publishing the data. |
| data | Navigation data, fix information, and UTC time to publish. |
| void gnss_publish_satellites | ( | const struct device * | dev, |
| const struct gnss_satellite * | satellites, | ||
| uint16_t | size ) |
#include <zephyr/drivers/gnss/gnss_publish.h>
Publish GNSS satellite information to registered callbacks.
Invokes all callbacks registered with GNSS_SATELLITES_CALLBACK_DEFINE() and GNSS_DT_SATELLITES_CALLBACK_DEFINE() that match dev.
GNSS drivers should call this function whenever updated satellite tracking information is available from the receiver.
CONFIG_GNSS_SATELLITES.| dev | GNSS device instance publishing the satellite data. |
| satellites | Array of satellite tracking data. |
| size | Number of elements in satellites. |