/** * @file telemetry.h * @brief Telemetry-frame creation, checksum finalisation, and serialisation. */ #ifndef TELEMETRY_H #define TELEMETRY_H #include #include "app_types.h" void telemetry_reset(telemetry_frame_t *frame); void telemetry_set_message_id(telemetry_frame_t *frame, uint16_t message_id); void telemetry_set_live_data(telemetry_frame_t *frame, uint16_t laser1_power, uint16_t laser2_power, uint32_t tick_10ms, uint16_t laser1_temperature, uint16_t laser2_temperature, uint16_t adc_slot_7, uint16_t adc_slot_8, uint16_t adc_slot_9, uint16_t adc_slot_10, uint16_t adc_slot_11, uint16_t adc_slot_12); void telemetry_finalize(telemetry_frame_t *frame); void telemetry_to_bytes(const telemetry_frame_t *frame, uint8_t *out_bytes); #endif /* TELEMETRY_H */