12 #include "../Applications/timeline_command_dispatcher_id_define.h"
16 #include "../Library/endian.h"
18 #define BCL_PARAM_MAX_LENGTH BCT_CMD_MAX_LENGTH
61 void BCL_safe_load_tl(
bct_id_t pos,
void (*BCL_load_func)(
void))
66 void BCL_safe_load_sl(
bct_id_t pos,
void (*BCL_load_func)(
void))
86 #if SIZE_OF_BCT_ID_T == 1
88 #elif SIZE_OF_BCT_ID_T == 2
90 #elif SIZE_OF_BCT_ID_T == 4
93 #error Illegal value for SIZE_OF_BCT_ID_T
102 #if SIZE_OF_BCT_ID_T == 1
104 #elif SIZE_OF_BCT_ID_T == 2
106 #elif SIZE_OF_BCT_ID_T == 4
109 #error Illegal value for SIZE_OF_BCT_ID_T
118 #if SIZE_OF_BCT_ID_T == 1
120 #elif SIZE_OF_BCT_ID_T == 2
122 #elif SIZE_OF_BCT_ID_T == 4
125 #error Illegal value for SIZE_OF_BCT_ID_T
138 #if SIZE_OF_BCT_ID_T == 1
140 #elif SIZE_OF_BCT_ID_T == 2
142 #elif SIZE_OF_BCT_ID_T == 4
145 #error Illegal value for SIZE_OF_BCT_ID_T
APID
Application Process ID
BCT_ACK BCE_activate_block(void)
block_command_table->pos の BC を activate する
void BCL_tool_register_rotate(cycle_t ti, bct_id_t bct_id)
ブロックコマンドの最後にローテーターの実行コマンドを追加する
static void BCL_register_cmd_to_other_obc_(cycle_t ti, APID apid, CMD_CODE cmd_id)
#define BCL_PARAM_MAX_LENGTH
void BCL_tool_prepare_param_uint32(uint32_t val)
コマンド登録前にコマンドの引数としてuint32のパラメータを追加する
void BCL_tool_register_cmd_to_other_obc(cycle_t ti, APID apid, CMD_CODE cmd_id)
ブロックコマンドの最後に他の OBC のコマンドを追加する
static void BCL_register_cmd_(cycle_t ti, CMD_CODE cmd_id)
void BCL_load_bc(bct_id_t pos, void(*BCL_load_func)(void))
指定されたブロックコマンドIDへの登録を安全に行うためのwrapper関数
void BCL_tool_register_deploy(cycle_t ti, bct_id_t bct_id, TLCD_ID tlcd_id)
ブロックコマンドの最後にブロックコマンドの展開コマンドを追加する
void BCL_tool_prepare_param_uint16(uint16_t val)
コマンド登録前にコマンドの引数としてuint16のパラメータを追加する
void BCL_tool_register_limit_combine(cycle_t ti, bct_id_t bct_id, step_t limit_step)
ブロックコマンドの最後にタイムリミットコンバイナーの実行コマンドを追加する
void BCL_tool_prepare_param_int32(int32_t val)
コマンド登録前にコマンドの引数としてint32のパラメータを追加する
static BlockCommandLoader block_command_loader_
void BCL_tool_register_app(cycle_t ti, AR_APP_ID app_id)
ブロックコマンドの最後にアプリの実行コマンドを追加する
void BCL_tool_prepare_param_float(float val)
コマンド登録前にコマンドの引数としてfloatのパラメータを追加する
void BCL_tool_prepare_param_int64(int64_t val)
コマンド登録前にコマンドの引数としてint64のパラメータを追加する
static void BCL_register_app_(cycle_t ti, AR_APP_ID app_id)
void BCL_tool_register_combine(cycle_t ti, bct_id_t bct_id)
ブロックコマンドの最後にコンバイナーの実行コマンドを追加する
void BCL_tool_prepare_param_int16(int16_t val)
コマンド登録前にコマンドの引数としてint16のパラメータを追加する
void BCL_tool_prepare_param_uint8(uint8_t val)
コマンド登録前にコマンドの引数としてuint8のパラメータを追加する
void BCL_tool_prepare_param_int8(int8_t val)
コマンド登録前にコマンドの引数としてint8のパラメータを追加する
void BCL_tool_register_cmd(cycle_t ti, CMD_CODE cmd_id)
ブロックコマンドの最後にコマンドを追加する
static void BCL_clear_info_(void)
void BCL_tool_prepare_param_uint64(uint64_t val)
コマンド登録前にコマンドの引数としてuint64のパラメータを追加する
void BCL_tool_prepare_param_double(double val)
コマンド登録前にコマンドの引数としてdoubleのパラメータを追加する
BCT_ACK BCT_clear_block(const bct_id_t block)
指定された block の BCT を初期化する
void BCT_restore_pos(void)
pos を pos_stored から復旧
void BCT_store_pos(void)
pos を pos_stored に保存
BCT_ACK BCT_register_cmd(const CommonCmdPacket *packet)
Cmd を block_command_table->pos に登録する
#define BCT_MAX_BLOCKS
BCのIDの最大数
@ Cmd_CODE_TLCD_DEPLOY_BLOCK
@ Cmd_CODE_BCE_COMBINE_BLOCK
@ Cmd_CODE_BCE_ROTATE_BLOCK
@ Cmd_CODE_BCE_TIMELIMIT_COMBINE_BLOCK
CCP_UTIL_ACK CCP_form_tlc(CommonCmdPacket *packet, cycle_t ti, CMD_CODE cmd_id, const uint8_t *param, uint16_t len)
Timeline command を生成
CCP_UTIL_ACK CCP_form_tlc_to_other_obc(CommonCmdPacket *packet, cycle_t ti, APID apid, CMD_CODE cmd_id, const uint8_t *param, uint16_t len)
他の OBC のコマンドを TL として生成
void CCP_form_app_cmd(CommonCmdPacket *packet, cycle_t ti, AR_APP_ID id)
App 実行 TL コマンドを生成
void * ENDIAN_memcpy(void *dest, const void *src, size_t size)
エンディアンを考慮した memcpy
ブロックコマンド登録中の情報を一時保存するためのバッファ
int param_idx
params配列の中で次にパラメータを登録する予定のindex
CommonCmdPacket packet
登録中のコマンドを一時保存するためのバッファ
uint8_t params[BCL_PARAM_MAX_LENGTH]
TLCD_ID
TimeLineを選ぶときに統一的に使うコード