31 lines
1.1 KiB
C
31 lines
1.1 KiB
C
/**
|
|
* @file telemetry.h
|
|
* @brief Telemetry-frame creation, checksum finalisation, and serialisation.
|
|
*/
|
|
|
|
#ifndef TELEMETRY_H
|
|
#define TELEMETRY_H
|
|
|
|
#include <stdint.h>
|
|
|
|
#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 */
|