9 #include "../Library/print.h"
10 #include "../Library/endian.h"
28 return tlm_func(packet, len, max_len);
43 Printf(
"TF: init error!!!\n");
79 ptr[0] = (uint8_t)data;
@ CCP_EXEC_ILLEGAL_PARAMETER
コマンド実行時のパラメタエラー
CCP_CmdRet CCP_make_cmd_ret_without_err_code(CCP_EXEC_STS exec_sts)
コマンド返り値である CCP_CmdRet を作成(エラーコード不使用版)
#define CCP_get_param_from_packet(packet, n, type)
CCP packet から,n番目のコマンド引数を取得する
void * ENDIAN_memcpy(void *dest, const void *src, size_t size)
エンディアンを考慮した memcpy
void Printf(const char *format,...)
TF_TLM_FUNC_ACK(* tlm_func)(uint8_t *, uint16_t *, uint16_t)
tlm packet の中身を生成する関数
TelemetryFrame の Info 構造体
TF_TlmInfo tlm_table[TF_MAX_TLMS]
テレメトリテーブル
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 の初期化
void TF_copy_u16(uint8_t *ptr, uint16_t data)
CCP_CmdRet Cmd_TF_REGISTER_TLM(const CommonCmdPacket *packet)
static void initialize_tlm_table_(void)
void TF_copy_i8(uint8_t *ptr, int8_t data)
void TF_copy_float(uint8_t *ptr, float data)
const TelemetryFrame *const telemetry_frame
void TF_copy_i32(uint8_t *ptr, int32_t data)
static TelemetryFrame telemetry_frame_
#define TF_TLM_PAGE_MAX
テレメテーブルページ数(ページネーション用)
#define TF_MAX_TLMS
テレメテーブルサイズ.すなわち登録できる最大テレメ数
void TF_load_tlm_table(TF_TlmInfo tlm_table[TF_MAX_TLMS])
Tlm Tableのロード
TF_TLM_FUNC_ACK
tlm_func の返り値につかう
@ TF_TLM_FUNC_ACK_NOT_DEFINED
定義されてないテレメ