Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
sys_time_arch.h File Reference

linux timing functions More...

#include "std.h"
#include <unistd.h>
+ Include dependency graph for sys_time_arch.h:

Go to the source code of this file.

Functions

uint32_t get_sys_time_usec (void)
 Get the time in microseconds since startup. More...
 
uint32_t get_sys_time_usec100 (void)
 Get the time in microseconds since startup. More...
 
uint32_t get_sys_time_msec (void)
 Get the time in milliseconds since startup. More...
 
static void sys_time_usleep (uint32_t us)
 
static unsigned int sys_time_elapsed_us (struct timespec *prev, struct timespec *now)
 elapsed time in microsecs between two timespecs More...
 

Detailed Description

linux timing functions

Definition in file sys_time_arch.h.

Function Documentation

◆ get_sys_time_msec()

◆ get_sys_time_usec()

uint32_t get_sys_time_usec ( void  )

Get the time in microseconds since startup.

WARNING: overflows after 71min34seconds!

Returns
current system time as uint32_t

WARNING: overflows after 70min!

Returns
microseconds since startup as uint32_t

Definition at line 71 of file sys_time_arch.c.

References cpu_counter, sys_time::nb_sec, sys_time::nb_sec_rem, startup_time, and STM32_SYSCLK.

Referenced by ahrs_aligner_run(), ahrs_vectornav_event(), apogee_baro_event(), ardrone_baro_event(), baro_amsys_read_event(), baro_bmp280_event(), baro_bmp3_event(), baro_bmp_event(), baro_ets_read_event(), baro_event(), baro_hca_read_event(), baro_mpl3115_read_event(), baro_MS5534A_event(), baro_ms5611_event(), baro_scp_event(), baro_sim_periodic(), bf_micros(), cloud_sensor_callback(), cloud_sim_detect(), decode_optical_flow_msg(), ekf_aw_get_health(), gps_cb(), gps_datalink_publish(), gps_feed_value(), gps_intermcu_parse_IMCU_REMOTE_GPS(), gps_mtk_msg(), gps_piksi_publish(), gps_sim_publish(), gps_sirf_msg(), gps_skytraq_msg(), gps_ubx_msg(), gps_udp_parse(), handle_ins_msg(), hott_periodic_event(), imu_apogee_event(), imu_aspirin2_event(), imu_aspirin_event(), imu_aspirin_i2c_event(), imu_bebop_event(), imu_bmi088_event(), imu_cube_event(), imu_disco_event(), imu_heater_run(), imu_mpu9250_event(), imu_mpu_hmc_event(), imu_mpu_i2c_event(), imu_mpu_spi_event(), imu_nps_event(), imu_px4_event(), imu_px4fmu_event(), ins_alt_float_update_baro(), ins_alt_float_update_gps(), ins_ekf2_parse_EXTERNAL_POSE(), ins_ext_pose_msg_update(), invensense2_config(), invensense2_parse_data(), invensense3_config(), invensense3_parse_fifo_data(), invensense3_parse_reg_data(), laser_range_array_parse_msg(), lidar_lite_periodic(), lidar_sf11_periodic(), lidar_vl53l5cx_periodic(), lisa_l_baro_event(), LWC_callback(), mag_hmc58xx_module_event(), mag_ist8310_module_event(), mag_lis3mdl_module_event(), mag_pitot_parse_msg(), mag_qmc5883l_module_event(), mag_rm3100_module_event(), main(), mateksys3901l0x_parse(), mavlink_send_gps_global_origin(), mavlink_send_gps_raw_int(), meteo_stick_event(), navdata_publish_imu(), navdata_update(), nmea_gps_msg(), nps_autopilot_run_step(), opticflow_module_run(), opticflow_pmw3901_event(), pose_periodic(), px4flow_i2c_frame_cb(), range_msg_callback(), range_sensor_uavcan_cb(), readRegister_nonblocking(), send_filter_status(), sensors_hitl_event(), sensors_hitl_parse_HITL_AIR_DATA(), sensors_hitl_parse_HITL_GPS(), sonar_adc_read(), sonar_bebop_read(), sonar_pwm_read(), sonar_vl53l1x_publish(), stereocam_parse_msg(), sts3032_event(), superbitrf_event(), superbitrf_receive_packet_cb(), teraranger_event(), tfmini_i2c_periodic(), tfmini_parse(), v4l2_capture_thread(), and video_thread_function().

◆ get_sys_time_usec100()

uint32_t get_sys_time_usec100 ( void  )

Get the time in microseconds since startup.

WARNING: overflows after 7000 minutes!

Returns
current system time as uint32_t

Get the time in microseconds since startup.

WARNING: overflows after 7000min!

Returns
100microseconds since startup as uint32_t

Get the time in microseconds since startup.

Get the time in microseconds divided by 100 since startup.

WARNING: overflows after 7000 minutes!

Returns
current system time as uint32_t

Definition at line 87 of file sys_time_arch.c.

References cpu_counter, sys_time::nb_sec, sys_time::nb_sec_rem, startup_time, and STM32_SYSCLK.

Referenced by pprzlog_tp_init().

+ Here is the caller graph for this function:

◆ sys_time_elapsed_us()

static unsigned int sys_time_elapsed_us ( struct timespec *  prev,
struct timespec *  now 
)
inlinestatic

elapsed time in microsecs between two timespecs

Definition at line 60 of file sys_time_arch.h.

◆ sys_time_usleep()

static void sys_time_usleep ( uint32_t  us)
inlinestatic

Definition at line 54 of file sys_time_arch.h.