5 #ifndef TELEMETRY_FRAME_H_
6 #define TELEMETRY_FRAME_H_
11 #define TF_TLM_PAGE_SIZE (64)
12 #define TF_TLM_PAGE_MAX (4)
13 #define TF_MAX_TLMS (TF_TLM_PAGE_SIZE * TF_TLM_PAGE_MAX)
TelemetryFrame の Info 構造体
uint8_t tlm_page_no
テレメで使うページ数
void TF_copy_i16(uint8_t *ptr, int16_t data)
void TF_copy_u8(uint8_t *ptr, uint8_t data)
void TF_copy_u32(uint8_t *ptr, uint32_t data)
void TF_copy_double(uint8_t *ptr, double data)
CCP_CmdRet Cmd_TF_INIT(const CommonCmdPacket *packet)
TF_TLM_FUNC_ACK TF_generate_contents(TLM_CODE tlm_id, uint8_t *packet, uint16_t *len, uint16_t max_len)
テレメを実際に生成する関数
CCP_CmdRet Cmd_TF_SET_PAGE_FOR_TLM(const CommonCmdPacket *packet)
void TF_initialize(void)
TF の初期化
#define TF_MAX_TLMS
テレメテーブルサイズ.すなわち登録できる最大テレメ数
void TF_copy_u16(uint8_t *ptr, uint16_t data)
void TF_load_tlm_table(TF_TlmInfo tlm_table[TF_MAX_TLMS])
Tlm Tableのロード
CCP_CmdRet Cmd_TF_REGISTER_TLM(const CommonCmdPacket *packet)
void TF_copy_i8(uint8_t *ptr, int8_t data)
void TF_copy_float(uint8_t *ptr, float data)
const TelemetryFrame *const telemetry_frame
TF_TLM_FUNC_ACK
tlm_func の返り値につかう
@ TF_TLM_FUNC_ACK_NULL_PACKET
2nd OBC などのテレメを生成する時,まだ1つもそのテレメパケットを 2nd OBC から受信していない
@ TF_TLM_FUNC_ACK_TOO_SHORT_LEN
CommonTlmPacket が,生成されるテレメに比べて小さすぎる(定義されたテレメが大きすぎる)
@ TF_TLM_FUNC_ACK_UNKNOWN_ERR
その他のエラー
@ TF_TLM_FUNC_ACK_SUCCESS
成功
@ TF_TLM_FUNC_ACK_NOT_DEFINED
定義されてないテレメ
void TF_copy_i32(uint8_t *ptr, int32_t data)
TFのCoreTlmパラメタのオーバーライド用ヘッダー