Paparazzi UAS  v4.0.4_stable-3-gf39211a
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
imu_chimu.h File Reference
#include "paparazzi.h"
+ Include dependency graph for imu_chimu.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  CHIMU_Euler
 
struct  CHIMU_Vector
 
struct  CHIMU_Quaternion
 
struct  CHIMU_attitude_data
 
struct  CHIMU_sensor_data
 
struct  CHIMU_PARSER_DATA
 

Macros

#define CHIMU_STX   0xae
 
#define CHIMU_BROADCAST   0xaa
 
#define MSG00_PING   0x00
 
#define MSG01_BIAS   0x01
 
#define MSG02_DACMODE   0x02
 
#define MSG03_CALACC   0x03
 
#define MSG04_CALMAG   0x04
 
#define MSG05_CALRATE   0x05
 
#define MSG06_CONFIGCLR   0x06
 
#define MSG07_CONFIGSET   0x07
 
#define MSG08_SAVEGYROBIAS   0x08
 
#define MSG09_ESTIMATOR   0x09
 
#define MSG0A_SFCHECK   0x0A
 
#define MSG0B_CENTRIP   0x0B
 
#define MSG0C_INITGYROS   0x0C
 
#define MSG0D_DEVICEID   0x0D
 
#define MSG0E_REFVECTOR   0x0E
 
#define MSG0F_RESET   0x0F
 
#define MSG10_UARTSETTINGS   0x10
 
#define MSG11_SERIALNUMBER   0x11
 
#define CHIMU_Msg_0_Ping   0
 
#define CHIMU_Msg_1_IMU_Raw   1
 
#define CHIMU_Msg_2_IMU_FP   2
 
#define CHIMU_Msg_3_IMU_Attitude   3
 
#define CHIMU_Msg_4_BiasSF   4
 
#define CHIMU_Msg_5_BIT   5
 
#define CHIMU_Msg_6_MagCal   6
 
#define CHIMU_Msg_7_GyroBias   7
 
#define CHIMU_Msg_8_TempCal   8
 
#define CHIMU_Msg_9_DAC_Offsets   9
 
#define CHIMU_Msg_10_Res   10
 
#define CHIMU_Msg_11_Res   11
 
#define CHIMU_Msg_12_Res   12
 
#define CHIMU_Msg_13_Res   13
 
#define CHIMU_Msg_14_RefVector   14
 
#define CHIMU_Msg_15_SFCheck   15
 
#define FloatSwap(X)   (X)
 
#define FALSE   (1==0)
 
#define TRUE   (1==1)
 
#define CHIMU_RX_BUFFERSIZE   128
 

Functions

void CHIMU_Init (CHIMU_PARSER_DATA *pstData)
 
unsigned char CHIMU_Parse (unsigned char btData, unsigned char bInputType, CHIMU_PARSER_DATA *pstData)
 
unsigned char CHIMU_ProcessMessage (unsigned char *pMsgID, unsigned char *pPayloadData, CHIMU_PARSER_DATA *pstData)
 
void CHIMU_Checksum (unsigned char *data, unsigned char buflen)
 

Macro Definition Documentation

#define CHIMU_BROADCAST   0xaa

Definition at line 48 of file imu_chimu.h.

Referenced by ins_init().

#define CHIMU_Msg_0_Ping   0

Definition at line 71 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_10_Res   10

Definition at line 81 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_11_Res   11

Definition at line 82 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_12_Res   12

Definition at line 83 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_13_Res   13

Definition at line 84 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_14_RefVector   14

Definition at line 85 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_15_SFCheck   15

Definition at line 86 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_1_IMU_Raw   1

Definition at line 72 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_2_IMU_FP   2

Definition at line 73 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_3_IMU_Attitude   3

Definition at line 74 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage(), and parse_ins_msg().

#define CHIMU_Msg_4_BiasSF   4

Definition at line 75 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_5_BIT   5

Definition at line 76 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_6_MagCal   6

Definition at line 77 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_7_GyroBias   7

Definition at line 78 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_8_TempCal   8

Definition at line 79 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_Msg_9_DAC_Offsets   9

Definition at line 80 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage().

#define CHIMU_RX_BUFFERSIZE   128

Definition at line 155 of file imu_chimu.h.

Referenced by CHIMU_Init(), and CHIMU_Parse().

#define CHIMU_STX   0xae

Definition at line 47 of file imu_chimu.h.

Referenced by ins_init().

#define FALSE   (1==0)

Definition at line 141 of file imu_chimu.h.

Referenced by actuators_init(), actuators_set(), adc_init(), add_slot(), ads1114_init(), adxl345_init(), ahrs_align(), ahrs_init(), ahrs_update_gps(), airspeed_amsys_read_event(), airspeed_ets_init(), airspeed_ets_read_event(), ArduIMU_init(), ArduIMU_periodicGPS(), autopilot_arming_check_motors_on(), autopilot_arming_init(), autopilot_arming_set(), autopilot_check_in_flight(), autopilot_init(), autopilot_periodic(), autopilot_set_mode(), autopilot_set_motors_on(), b2_hff_init(), baro_amsys_init(), baro_amsys_read_event(), baro_bmp_init(), baro_ets_init(), baro_ets_read_event(), baro_init(), baro_MS5534A_event(), baro_MS5534A_init(), baro_MS5534A_reset(), baro_MS5534A_send(), baro_scp_event(), BitTest(), booz_drop_init(), border_line(), border_line_init(), BungeeTakeoff(), CHIMU_Parse(), CHIMU_ProcessMessage(), compute_TOD(), dc_periodic_4Hz(), deploy_sonar_buoy_init(), DetectGroundEvent(), disc_survey_init(), Drift_correction(), enose_periodic(), event_task_ap(), event_task_fbw(), exti2_irq_handler(), FlightLine(), FlightLineBlock(), FlowerNav(), formation_flight(), formation_init(), generic_com_init(), get_two_intersects(), gls(), gls_compute_TOD(), gls_init(), gps_i2c_init(), gps_impl_init(), gps_ubx_ucenter_autobaud(), gps_ubx_ucenter_configure(), gps_ubx_ucenter_periodic(), gsm_init_report(), guidance_h_run(), h_ctl_init(), hmc58xx_init(), humid_sht_init(), humid_sht_periodic(), i2c_idle(), i2c_submit(), imu_aspirin2_event(), imu_aspirin_event(), IMU_Daten_verarbeiten(), imu_impl_init(), imu_navgo_event(), imu_umarim_event(), infrared_i2c_hor_event(), infrared_i2c_init(), infrared_i2c_update(), infrared_i2c_ver_event(), init_ap(), init_poly_survey_adv(), InitializeBungeeTakeoff(), InitializeFlower(), InitializePolygonSurvey(), InitializeSkidLanding(), InitializeSpiral(), InitializeVerticalRaster(), ins_configure(), ins_event_task(), ins_init(), ins_update_baro(), ins_update_gps(), intercept_two_lines(), itg3200_init(), kill_switch_is_on(), main_event_task(), main_init(), main_periodic_task(), maxbotix_init(), mcp355x_event(), mcp355x_init(), mcu1_status_update(), nav_anemotaxis_downwind(), nav_anemotaxis_init(), nav_approaching_from(), nav_catapult_init(), nav_chemotaxis_init(), nav_compute_baseleg(), nav_cube(), nav_cube_init(), nav_detect_ground(), nav_init_stage(), nav_line(), nav_line_init(), nav_periodic_task(), nav_reset_reference(), nav_select_touch_down(), nav_survey_computefourth_corner(), nav_survey_Inc_railnumberSinceBoot(), nav_survey_losange_carto(), nav_survey_losange_carto_init(), nav_survey_rectangle(), nav_survey_rectangle_init(), nav_survey_Snapshoot(), nav_survey_StopSnapshoot(), navigation_task(), Normalize(), on_overo_link_msg_received(), overo_link_init(), parse_nmea_GPGGA(), pbn_read_event(), poly_survey_adv(), PolygonSurvey(), ppm_arch_init(), pprz_mode_update(), radio_control_impl_init(), reporting_task(), sd_card_init(), servo_switch_init(), snav_init(), SPI1_ISR(), srf08_event(), srf08_init(), start_formation(), stop_com(), stop_formation(), supervision_init(), sys_time_cancel_timer(), sys_time_check_and_ack_timer(), sys_time_init(), sys_time_register_timer(), telecommand_task(), tmp102_init(), track_event(), trig_ext_init(), trigger_ext_init(), trigger_ext_periodic(), uart_handler(), uart_periph_init(), usart_irq_handler(), vi_init(), vPoint(), windturbine_periodic(), xbee_init(), and xtend_rssi_periodic().

#define FloatSwap (   X)    (X)

Definition at line 113 of file imu_chimu.h.

Referenced by CHIMU_ProcessMessage(), and chimu_update_gps().

#define MSG00_PING   0x00

Definition at line 51 of file imu_chimu.h.

Referenced by ins_init().

#define MSG01_BIAS   0x01

Definition at line 52 of file imu_chimu.h.

#define MSG02_DACMODE   0x02

Definition at line 53 of file imu_chimu.h.

#define MSG03_CALACC   0x03

Definition at line 54 of file imu_chimu.h.

#define MSG04_CALMAG   0x04

Definition at line 55 of file imu_chimu.h.

#define MSG05_CALRATE   0x05

Definition at line 56 of file imu_chimu.h.

#define MSG06_CONFIGCLR   0x06

Definition at line 57 of file imu_chimu.h.

#define MSG07_CONFIGSET   0x07

Definition at line 58 of file imu_chimu.h.

#define MSG08_SAVEGYROBIAS   0x08

Definition at line 59 of file imu_chimu.h.

#define MSG09_ESTIMATOR   0x09

Definition at line 60 of file imu_chimu.h.

Referenced by ins_init().

#define MSG0A_SFCHECK   0x0A

Definition at line 61 of file imu_chimu.h.

#define MSG0B_CENTRIP   0x0B

Definition at line 62 of file imu_chimu.h.

#define MSG0C_INITGYROS   0x0C

Definition at line 63 of file imu_chimu.h.

#define MSG0D_DEVICEID   0x0D

Definition at line 64 of file imu_chimu.h.

#define MSG0E_REFVECTOR   0x0E

Definition at line 65 of file imu_chimu.h.

#define MSG0F_RESET   0x0F

Definition at line 66 of file imu_chimu.h.

#define MSG10_UARTSETTINGS   0x10

Definition at line 67 of file imu_chimu.h.

Referenced by ins_init().

#define MSG11_SERIALNUMBER   0x11

Definition at line 68 of file imu_chimu.h.

#define TRUE   (1==1)

Definition at line 144 of file imu_chimu.h.

Referenced by actuators_init(), actuators_set(), adxl345_event(), adxl345_send_config(), ahrs_align(), ahrs_init(), ahrs_realign_heading(), ahrs_update_gps(), airspeed_amsys_init(), airspeed_amsys_read_event(), airspeed_ets_init(), airspeed_ets_read_event(), ArduIMU_periodic(), ArduIMU_periodicGPS(), aspirin2_subsystem_event(), attitude_loop(), autopilot_arming_check_motors_on(), autopilot_arming_set(), autopilot_check_in_flight(), autopilot_init(), autopilot_set_motors_on(), b2_hff_update_gps(), baro_amsys_init(), baro_amsys_read_event(), baro_amsys_read_periodic(), baro_bmp_event(), baro_bmp_init(), baro_ets_init(), baro_ets_read_event(), baro_ets_read_periodic(), baro_feed_value(), baro_MS5534A_event_task(), baro_periodic(), baro_scp_event(), BitTest(), booz_drop_periodic(), border_line(), BungeeTakeoff(), CHIMU_ProcessMessage(), dc_circle(), DetectGroundEvent(), disc_survey(), dl_parse_msg(), dma1_c4_irq_handler(), Drift_correction(), enose_init(), enose_set_heat(), exti15_10_irq_handler(), exti2_irq_handler(), exti9_5_irq_handler(), FlightLine(), FlightLineBlock(), FlowerNav(), formation_flight(), get_two_intersects(), gls(), gls_init(), gps_feed_value(), gps_i2c_init(), gps_impl_init(), gps_mtk_parse(), gps_skytraq_parse(), gps_ubx_parse(), gps_ubx_ucenter_autobaud(), gps_ubx_ucenter_configure(), guidance_h_run(), hmc5843_idle_task(), hmc5843_periodic(), hmc58xx_event(), hmc58xx_send_config(), humid_sht_periodic(), i2c_idle(), i2c_submit(), imu_feed_gyro_accel(), imu_feed_mag(), imu_navgo_event(), imu_periodic(), imu_umarim_event(), infrared_i2c_hor_event(), infrared_i2c_ver_event(), InitializeBungeeTakeoff(), InitializePolygonSurvey(), ins_configure(), ins_init(), ins_update_baro(), ins_update_gps(), intercept_two_lines(), itg3200_event(), itg3200_send_config(), main_event_task(), main_on_baro_abs(), main_on_baro_diff(), maxbotix_read(), mcp355x_event(), monitor_task(), nav_anemotaxis(), nav_approaching_from(), nav_approaching_xy(), nav_catapult(), nav_catapult_init(), nav_chemotaxis(), nav_circle_XY(), nav_detect_ground(), nav_line(), nav_reset_alt(), nav_reset_reference(), nav_route_xy(), nav_survey_losange_carto(), nav_survey_rectangle(), nav_survey_Snapshoot_Continu(), navigation_task(), nmea_parse_char(), Normalize(), on_rc_message(), on_vane_msg(), parse_cam_buffer(), parse_ins_buffer(), parse_nmea_GPGGA(), parse_pprz(), parse_rc_3ch_datalink(), parse_rc_4ch_datalink(), parse_xbee(), pbn_init(), pbn_read_event(), poly_survey_adv(), PolygonSurvey(), potential_task(), pprz_parse_payload(), ppzuavimu_module_event(), provide_attitude(), provide_attitude_and_rates(), provide_rates(), reporting_task(), servo_switch_periodic(), sim_use_gps_pos(), SkidLanding(), SPI1_ISR(), SpiralNav(), srf08_read(), srf08_receive(), start_com(), sys_tick_handler(), sys_tick_irq_handler(), sys_time_check_and_ack_timer(), sys_time_register_timer(), telecommand_task(), tmp102_event(), tmp102_periodic(), track_event(), track_init(), TRIG_ISR(), trigger_ext_periodic(), uart_transmit(), VerticalRaster(), vi_init(), vi_periodic(), vPoint(), windturbine_periodic(), and xbee_parse_payload().

Function Documentation

void CHIMU_Checksum ( unsigned char *  data,
unsigned char  buflen 
)

Definition at line 83 of file imu_chimu.c.

References UpdateCRC().

Referenced by chimu_update_gps(), and ins_init().

+ Here is the call graph for this function:

+ Here is the caller graph for this function: