Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CTCPをCCPとTCPに分離 #209

Merged
merged 9 commits into from
Jan 25, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Applications/anomaly_handler.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include <src_user/Library/VT100.h>
#include "../System/TimeManager/time_manager.h"
#include "../Library/endian_memcpy.h"
#include "../TlmCmd/common_tlm_cmd_packet_util.h"
#include "../TlmCmd/common_cmd_packet_util.h"
#include "timeline_command_dispatcher.h"
// #include "../anomaly_group.h"
// #include "../../TlmCmd/block_command_definitions.h"
Expand Down
6 changes: 3 additions & 3 deletions Applications/divided_cmd_utility.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
*/
#include "divided_cmd_utility.h"
#include "../TlmCmd/packet_handler.h"
#include "../TlmCmd/common_tlm_cmd_packet_util.h"
#include "../TlmCmd/common_cmd_packet_util.h"
#include "../System/TimeManager/time_manager.h"
#include "../System/EventManager/event_logger.h"

Expand Down Expand Up @@ -205,14 +205,14 @@ DCU_STATUS DCU_check_in(CMD_CODE cmd_code, uint16_t* exec_counter)
DCU_ACK DCU_register_next(CMD_CODE cmd_code, const uint8_t* param, uint16_t len)
{
uint8_t idx;
CTCP_UTIL_ACK ret;
CCP_UTIL_ACK ret;

DCU_move_to_front_in_log_(cmd_code);
idx = divided_cmd_utility_.exec_log_order[0];
divided_cmd_utility_.exec_logs[idx].status = DCU_STATUS_PROGRESS;

ret = CCP_form_rtc(&DCU_packet_, cmd_code, param, len);
if (ret != CTCP_UTIL_ACK_OK) return DCU_ACK_ERR;
if (ret != CCP_UTIL_ACK_OK) return DCU_ACK_ERR;
if (PH_analyze_packet(&DCU_packet_) != PH_REGISTERED)
{
return DCU_ACK_ERR;
Expand Down
2 changes: 1 addition & 1 deletion Applications/memory_dump.c
Original file line number Diff line number Diff line change
Expand Up @@ -375,7 +375,7 @@ static void MEM_setup_header_(TCP* packet,
uint8_t* data;

// TCPacketヘッダを設定
TCP_TLM_setup_primary_hdr(packet, TCP_APID_DUMP_TLM, (uint16_t)(data_len + 12));
TCP_TLM_setup_primary_hdr(packet, APID_DUMP_TLM, (uint16_t)(data_len + 12));
TCP_TLM_set_ti(packet, (uint32_t)( TMGR_get_master_total_cycle() ));
TCP_TLM_set_category(packet, category); // パラメータによる指定
TCP_TLM_set_packet_id(packet, (uint8_t)MEM_TLM_ID);
Expand Down
14 changes: 7 additions & 7 deletions Applications/telemetry_manager.c
Original file line number Diff line number Diff line change
Expand Up @@ -317,19 +317,19 @@ static TLM_MGR_ERR_CODE TLM_MGR_register_generate_tlm_(TLM_MGR_RegisterInfo* reg
bct_id_t bc_id = telemetry_manager_.bc_info[bc_info_idx].bc_id;
uint8_t bc_cmd_pos = register_info->tlm_register_pointer_to_bc_cmd_idx;
BCT_Pos bc_register_pos;
CTCP_UTIL_ACK ctcp_util_ack;
CCP_UTIL_ACK ccp_util_ack;
BCT_ACK bct_ack;

if (bc_cmd_pos >= TLM_MGR_MAX_TLM_NUM_PER_BC) return TLM_MGR_ERR_CODE_CMD_FULL;

BCT_make_pos(&bc_register_pos, bc_id, bc_cmd_pos);

ctcp_util_ack = CCP_form_tlc(&TLM_MGR_packet_,
(cycle_t)bc_cmd_pos,
Cmd_CODE_GENERATE_TLM,
param,
CA_get_cmd_param_min_len(Cmd_CODE_GENERATE_TLM));
if (ctcp_util_ack != CTCP_UTIL_ACK_OK) return TLM_MGR_ERR_CODE_OTHER_ERR;
ccp_util_ack = CCP_form_tlc(&TLM_MGR_packet_,
(cycle_t)bc_cmd_pos,
Cmd_CODE_GENERATE_TLM,
param,
CA_get_cmd_param_min_len(Cmd_CODE_GENERATE_TLM));
if (ccp_util_ack != CCP_UTIL_ACK_OK) return TLM_MGR_ERR_CODE_OTHER_ERR;

// すでに NOP で埋められており,かつ activate 済なので,直接 BCT にコマンドを挿入できる.
bct_ack = BCT_overwrite_cmd(&bc_register_pos, &TLM_MGR_packet_);
Expand Down
2 changes: 1 addition & 1 deletion Applications/telemetry_manager.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

#include "../System/ApplicationManager/app_info.h"
#include "../TlmCmd/common_tlm_cmd_packet.h"
#include "../TlmCmd/common_tlm_cmd_packet_util.h"
#include "../TlmCmd/common_cmd_packet_util.h"
#include "../TlmCmd/block_command_table.h"


Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ set(C2A_SRCS
TlmCmd/block_command_executor.c
TlmCmd/command_analyze.c
TlmCmd/command_dispatcher.c
TlmCmd/common_tlm_cmd_packet_util.c
TlmCmd/common_cmd_packet_util.c
TlmCmd/packet_handler.c
TlmCmd/packet_list.c
TlmCmd/telemetry_frame.c
Expand Down
30 changes: 30 additions & 0 deletions Docs/Core/communication.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Communication

## 概要
通信関連,ネットワーク関連などをまとめる.

## C2A 内部を流れるパケットについて
C2A 内部を流れるパケットは以下の 3 つである.
- `CommonTlmCmdPacket`
- CTCP
- テレコマを区別しないパケット
- CCSDS で規定される Space Packet に相当する
- `CommonTlmPacket`
- CTP
- CTCP のうち,テレメトリパケットに限定したもの
- `CommonCmdPacket`
- CCP
- CTCP のうち,コマンドパケットに限定したもの

これらのパケットは,すべてユーザー定義であるが, C2A 標準を,ここ (TBA) で定義する.
基本的にはこれを用いることを想定している.

FIXME: 2022/01/24現在
現在, CTCP 大改修中 (https://github.com/ut-issl/c2a-core/issues/205) であり,現時点では,すべてのパケットの実体は TCP である.
近いうちに整備される予定.

## C2A 標準 Space Packet 定義
TBA

## CCSDS 準拠状況
TBA
1 change: 1 addition & 0 deletions Docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ C2A に関する説明の棲み分けは,次のようになっています.
1. How to add a application
1. Core Layer
1. Overview
1. [Communication](./Core/communication.md)
1. [Tips](./Core/tips.md)
1. Driver
1. [Overview](./Driver/overview.md)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ static GS_VALIDATE_ERR GS_check_tcs_headers_(const TCS* tc_segment)

static GS_VALIDATE_ERR GS_check_tcp_headers_(const TCP* tc_packet)
{
TCP_APID apid;
APID apid;

if (TCP_get_ver(tc_packet) != TCP_VER_1) return GS_VALIDATE_ERR_TCP_VER;
if (TCP_get_2nd_hdr_flag(tc_packet) != TCP_2ND_HDR_PRESENT)
Expand All @@ -127,11 +127,11 @@ static GS_VALIDATE_ERR GS_check_tcp_headers_(const TCP* tc_packet)
}

apid = TCP_get_apid(tc_packet);
if ( !( apid == TCP_APID_MOBC_CMD
|| apid == TCP_APID_AOBC_CMD
|| apid == TCP_APID_TOBC_CMD ) )
if ( !( apid == APID_MOBC_CMD
|| apid == APID_AOBC_CMD
|| apid == APID_TOBC_CMD ) )
{
return GS_VALIDATE_ERR_TCP_APID;
return GS_VALIDATE_ERR_APID;
}

return GS_VALIDATE_ERR_OK;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ typedef enum
GS_VALIDATE_ERR_TCS_SEQ_FLAG,
GS_VALIDATE_ERR_TCP_VER,
GS_VALIDATE_ERR_TCP_2ND_HDR_FLAG,
GS_VALIDATE_ERR_TCP_APID,
GS_VALIDATE_ERR_APID,
GS_VALIDATE_ERR_TCP_TYPE_IS_NOT_CMD,
GS_VALIDATE_ERR_TCP_SEQ_IS_NOT_SINGLE,
GS_VALIDATE_ERR_FECW_MISSMATCH,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include "../../../TlmCmd/block_command_definitions.h"
#include <src_core/Applications/timeline_command_dispatcher.h>
#include <src_core/Library/endian_memcpy.h>
#include <src_core/TlmCmd/common_tlm_cmd_packet_util.h>
#include <src_core/TlmCmd/common_cmd_packet_util.h>
#include "../../../Settings/AnomalyLogger/anomaly_group.h"
#include "../mode_definitions.h"

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
/**
* @file
* @brief CCSDS の APID を定義する
* @note common_tlm_cmd_packet.h などから include されることを前提
*/
#ifndef APID_DEFINE_H_
#define APID_DEFINE_H_

#undef TCP_MAX_LEN

#define TCP_MAX_LEN (432u)

/**
* @enum APID
* @brief Application Process ID
* @note 11bit
*/
typedef enum
{
APID_MOBC_CMD = 0x210, // 01000010000b:
APID_AOBC_CMD = 0x211, // 01000010001b:
APID_TOBC_CMD = 0x212, // 01000010010b:
APID_TCAL_TLM = 0x410, // 10000010000b: APID for TIME CARIBLATION TLM
APID_MIS_TLM = 0x510, // 10100010000b: APID for MIS TLM
APID_DUMP_TLM = 0x710, // 11100010000b: APID for DUMP TLM
APID_FILL_PKT = 0x7ff, // 11111111111b: APID for FILL PACKET
APID_UNKNOWN
} APID;


#endif
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,25 @@

#define TCP_MAX_LEN (432u)

// FIXME: #206 を実装する際は,これは params.h ではなく define.h で定義すべき
/**
* @enum TCP_APID
* @brief Application Process ID
* @note GSTOS の蓄積データの拡張子につく数字
* @note 11bit
* @note CTCP_DEST_ID として typedef する
*/
typedef enum
{
TCP_APID_MOBC_CMD = 0x210, // 01000010000b:
TCP_APID_AOBC_CMD = 0x211, // 01000010001b:
TCP_APID_TOBC_CMD = 0x212, // 01000010010b:
TCP_APID_TCAL_TLM = 0x410, // 10000010000b: APID for TIME CARIBLATION TLM
TCP_APID_MIS_TLM = 0x510, // 10100010000b: APID for MIS TLM
TCP_APID_DUMP_TLM = 0x710, // 11100010000b: APID for DUMP TLM
TCP_APID_FILL_PKT = 0x7ff, // 11111111111b: APID for FILL PACKET
TCP_APID_UNKNOWN
} TCP_APID;
// // FIXME: #206 を実装する際は,これは params.h ではなく define.h で定義すべき
// /**
// * @enum TCP_APID
// * @brief Application Process ID
// * @note GSTOS の蓄積データの拡張子につく数字
// * @note 11bit
// * @note CTCP_DEST_ID として typedef する
// */
// typedef enum
// {
// TCP_APID_MOBC_CMD = 0x210, // 01000010000b:
// TCP_APID_AOBC_CMD = 0x211, // 01000010001b:
// TCP_APID_TOBC_CMD = 0x212, // 01000010010b:
// TCP_APID_TCAL_TLM = 0x410, // 10000010000b: APID for TIME CARIBLATION TLM
// TCP_APID_MIS_TLM = 0x510, // 10100010000b: APID for MIS TLM
// TCP_APID_DUMP_TLM = 0x710, // 11100010000b: APID for DUMP TLM
// TCP_APID_FILL_PKT = 0x7ff, // 11111111111b: APID for FILL PACKET
// TCP_APID_UNKNOWN
// } TCP_APID;

/**
* @enum TCP_CMD_DEST_TYPE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Comment,TLM Entry,Onboard Software Info.,,Extraction Info.,,,,Conversion Info.,,
,CCSDS_AD_REC_STATUS,uint8_t,(uint8_t)gs_driver->info[0].ad_rec_status,PACKET,=F27+INT((G27+H27)/8),=MOD((G27+H27)@@8),=IF(OR(EXACT(C28@@"uint8_t")@@EXACT(C28@@"int8_t"))@@8@@IF(OR(EXACT(C28@@"uint16_t")@@EXACT(C28@@"int16_t"))@@16@@IF(OR(EXACT(C28@@"uint32_t")@@EXACT(C28@@"int32_t")@@EXACT(C28@@"float"))@@32@@IF(EXACT(C28@@"double")@@64)))),STATUS,,,,,,,0=OK:G@@1=ERROR:R,,
,CCSDS_BC_REC_STATUS,uint8_t,(uint8_t)gs_driver->info[0].bc_rec_status,PACKET,=F28+INT((G28+H28)/8),=MOD((G28+H28)@@8),=IF(OR(EXACT(C29@@"uint8_t")@@EXACT(C29@@"int8_t"))@@8@@IF(OR(EXACT(C29@@"uint16_t")@@EXACT(C29@@"int16_t"))@@16@@IF(OR(EXACT(C29@@"uint32_t")@@EXACT(C29@@"int32_t")@@EXACT(C29@@"float"))@@32@@IF(EXACT(C29@@"double")@@64)))),STATUS,,,,,,,0=OK:G@@1=ERROR:R,,
,CCSDS_BD_REC_STATUS,uint8_t,(uint8_t)gs_driver->info[0].bd_rec_status,PACKET,=F29+INT((G29+H29)/8),=MOD((G29+H29)@@8),=IF(OR(EXACT(C30@@"uint8_t")@@EXACT(C30@@"int8_t"))@@8@@IF(OR(EXACT(C30@@"uint16_t")@@EXACT(C30@@"int16_t"))@@16@@IF(OR(EXACT(C30@@"uint32_t")@@EXACT(C30@@"int32_t")@@EXACT(C30@@"float"))@@32@@IF(EXACT(C30@@"double")@@64)))),STATUS,,,,,,,0=OK:G@@1=ERROR:R,,
,CCSDS_TCFRAME_VALIDATE_STATUS,uint8_t,(uint8_t)(gs_driver->info[0].tc_frame_validate_status),PACKET,=F30+INT((G30+H30)/8),=MOD((G30+H30)@@8),=IF(OR(EXACT(C31@@"uint8_t")@@EXACT(C31@@"int8_t"))@@8@@IF(OR(EXACT(C31@@"uint16_t")@@EXACT(C31@@"int16_t"))@@16@@IF(OR(EXACT(C31@@"uint32_t")@@EXACT(C31@@"int32_t")@@EXACT(C31@@"float"))@@32@@IF(EXACT(C31@@"double")@@64)))),STATUS,,,,,,,0=SUCCESS:G@@ 1=TCF_VER:R@@ 2=TCF_SCID:R@@ 3=TCF_VCID:R@@ 4=TCF_TYPE:R@@ 5=LOCKOUT:R@@ 6=TCF_SEQ_FLAG:R@@ 7=TCP_VER:R@@ 8=TCP_2ND_HDR_FLAG:R@@ 9=TCP_APID:R@@ 10=TCP_TYPE_IS_NOT_CMD:R@@ 11=TCP_SEQ_IS_NOTE_SINGLE:R@@ 12=FECW_MISSMATCH:R@@ 13=FARM1_PWA:R@@ 14=FARM1_NWA:R@@ 15=FARM1_LOCKOUT_AREA:R@@ 16=FARM1_SAME_NUMBER:R@@ 17=INVALID_BC_CMD:R,,
,CCSDS_TCFRAME_VALIDATE_STATUS,uint8_t,(uint8_t)(gs_driver->info[0].tc_frame_validate_status),PACKET,=F30+INT((G30+H30)/8),=MOD((G30+H30)@@8),=IF(OR(EXACT(C31@@"uint8_t")@@EXACT(C31@@"int8_t"))@@8@@IF(OR(EXACT(C31@@"uint16_t")@@EXACT(C31@@"int16_t"))@@16@@IF(OR(EXACT(C31@@"uint32_t")@@EXACT(C31@@"int32_t")@@EXACT(C31@@"float"))@@32@@IF(EXACT(C31@@"double")@@64)))),STATUS,,,,,,,0=SUCCESS:G@@ 1=TCF_VER:R@@ 2=TCF_SCID:R@@ 3=TCF_VCID:R@@ 4=TCF_TYPE:R@@ 5=LOCKOUT:R@@ 6=TCF_SEQ_FLAG:R@@ 7=TCP_VER:R@@ 8=TCP_2ND_HDR_FLAG:R@@ 9=APID:R@@ 10=TCP_TYPE_IS_NOT_CMD:R@@ 11=TCP_SEQ_IS_NOTE_SINGLE:R@@ 12=FECW_MISSMATCH:R@@ 13=FARM1_PWA:R@@ 14=FARM1_NWA:R@@ 15=FARM1_LOCKOUT_AREA:R@@ 16=FARM1_SAME_NUMBER:R@@ 17=INVALID_BC_CMD:R,,
,CCSDS_RET_FROM_IF_RX,int32_t,(int32_t)gs_driver->info[0].ret_from_if_rx,PACKET,=F31+INT((G31+H31)/8),=MOD((G31+H31)@@8),=IF(OR(EXACT(C32@@"uint8_t")@@EXACT(C32@@"int8_t"))@@8@@IF(OR(EXACT(C32@@"uint16_t")@@EXACT(C32@@"int16_t"))@@16@@IF(OR(EXACT(C32@@"uint32_t")@@EXACT(C32@@"int32_t")@@EXACT(C32@@"float"))@@32@@IF(EXACT(C32@@"double")@@64)))),NONE,,,,,,,,,
,CCSDS_LAST_REC_TIME,uint32_t,(uint32_t)gs_driver->info[0].last_rec_time,PACKET,=F32+INT((G32+H32)/8),=MOD((G32+H32)@@8),=IF(OR(EXACT(C33@@"uint8_t")@@EXACT(C33@@"int8_t"))@@8@@IF(OR(EXACT(C33@@"uint16_t")@@EXACT(C33@@"int16_t"))@@16@@IF(OR(EXACT(C33@@"uint32_t")@@EXACT(C33@@"int32_t")@@EXACT(C33@@"float"))@@32@@IF(EXACT(C33@@"double")@@64)))),NONE,,,,,,,,,
,CCSDS_CMD_ACK,uint8_t,(uint8_t)gs_driver->info[0].cmd_ack,PACKET,=F33+INT((G33+H33)/8),=MOD((G33+H33)@@8),=IF(OR(EXACT(C34@@"uint8_t")@@EXACT(C34@@"int8_t"))@@8@@IF(OR(EXACT(C34@@"uint16_t")@@EXACT(C34@@"int16_t"))@@16@@IF(OR(EXACT(C34@@"uint32_t")@@EXACT(C34@@"int32_t")@@EXACT(C34@@"float"))@@32@@IF(EXACT(C34@@"double")@@64)))),STATUS,,,,,,,0=SUCCESS:G@@ 1=RT_ACPT:G@@ 2=RT_FWD:G@@ 3=LENGTH:R@@ 4=CRC:R@@ 5=TO_ID:R@@ 6=TC_DISC:R@@ 7=CM_TYPE:R@@ 8=LST_FUL:R@@ 9=TL_ACPT:G@@ 10=TL_PAST:R@@ 11=TL_EXST:R@@ 12=TL_NEXE:R@@ 13=TL_NFND:R@@ 14=BL_ACPT:G@@ 15=BL_BLK#:R@@ 16=BL_CMD#:R@@ 17=BL_ISOR:R@@ 18=BL_INAC:R@@ 19=BL_COMB:R@@ 20=TLM_DST:R@@ 21=UNKNOWN:R,,
Expand All @@ -41,7 +41,7 @@ Comment,TLM Entry,Onboard Software Info.,,Extraction Info.,,,,Conversion Info.,,
,UART_AD_REC_STATUS,uint8_t,(uint8_t)gs_driver->info[1].ad_rec_status,PACKET,=F40+INT((G40+H40)/8),=MOD((G40+H40)@@8),=IF(OR(EXACT(C41@@"uint8_t")@@EXACT(C41@@"int8_t"))@@8@@IF(OR(EXACT(C41@@"uint16_t")@@EXACT(C41@@"int16_t"))@@16@@IF(OR(EXACT(C41@@"uint32_t")@@EXACT(C41@@"int32_t")@@EXACT(C41@@"float"))@@32@@IF(EXACT(C41@@"double")@@64)))),STATUS,,,,,,,0=OK:G@@1=ERROR:R,,
,UART_BC_REC_STATUS,uint8_t,(uint8_t)gs_driver->info[1].bc_rec_status,PACKET,=F41+INT((G41+H41)/8),=MOD((G41+H41)@@8),=IF(OR(EXACT(C42@@"uint8_t")@@EXACT(C42@@"int8_t"))@@8@@IF(OR(EXACT(C42@@"uint16_t")@@EXACT(C42@@"int16_t"))@@16@@IF(OR(EXACT(C42@@"uint32_t")@@EXACT(C42@@"int32_t")@@EXACT(C42@@"float"))@@32@@IF(EXACT(C42@@"double")@@64)))),STATUS,,,,,,,0=OK:G@@1=ERROR:R,,
,UART_BD_REC_STATUS,uint8_t,(uint8_t)gs_driver->info[1].bd_rec_status,PACKET,=F42+INT((G42+H42)/8),=MOD((G42+H42)@@8),=IF(OR(EXACT(C43@@"uint8_t")@@EXACT(C43@@"int8_t"))@@8@@IF(OR(EXACT(C43@@"uint16_t")@@EXACT(C43@@"int16_t"))@@16@@IF(OR(EXACT(C43@@"uint32_t")@@EXACT(C43@@"int32_t")@@EXACT(C43@@"float"))@@32@@IF(EXACT(C43@@"double")@@64)))),STATUS,,,,,,,0=OK:G@@1=ERROR:R,,
,UART_TCFRAME_VALIDATE_STATUS,uint8_t,(uint8_t)(gs_driver->info[1].tc_frame_validate_status),PACKET,=F43+INT((G43+H43)/8),=MOD((G43+H43)@@8),=IF(OR(EXACT(C44@@"uint8_t")@@EXACT(C44@@"int8_t"))@@8@@IF(OR(EXACT(C44@@"uint16_t")@@EXACT(C44@@"int16_t"))@@16@@IF(OR(EXACT(C44@@"uint32_t")@@EXACT(C44@@"int32_t")@@EXACT(C44@@"float"))@@32@@IF(EXACT(C44@@"double")@@64)))),STATUS,,,,,,,0=SUCCESS:G@@ 1=TCF_VER:R@@ 2=TCF_SCID:R@@ 3=TCF_VCID:R@@ 4=TCF_TYPE:R@@ 5=LOCKOUT:R@@ 6=TCF_SEQ_FLAG:R@@ 7=TCP_VER:R@@ 8=TCP_2ND_HDR_FLAG:R@@ 9=TCP_APID:R@@ 10=TCP_TYPE_IS_NOT_CMD:R@@ 11=TCP_SEQ_IS_NOTE_SINGLE:R@@ 12=FECW_MISSMATCH:R@@ 13=FARM1_PWA:R@@ 14=FARM1_NWA:R@@ 15=FARM1_LOCKOUT_AREA:R@@ 16=FARM1_SAME_NUMBER:R@@ 17=INVALID_BC_CMD:R,,
,UART_TCFRAME_VALIDATE_STATUS,uint8_t,(uint8_t)(gs_driver->info[1].tc_frame_validate_status),PACKET,=F43+INT((G43+H43)/8),=MOD((G43+H43)@@8),=IF(OR(EXACT(C44@@"uint8_t")@@EXACT(C44@@"int8_t"))@@8@@IF(OR(EXACT(C44@@"uint16_t")@@EXACT(C44@@"int16_t"))@@16@@IF(OR(EXACT(C44@@"uint32_t")@@EXACT(C44@@"int32_t")@@EXACT(C44@@"float"))@@32@@IF(EXACT(C44@@"double")@@64)))),STATUS,,,,,,,0=SUCCESS:G@@ 1=TCF_VER:R@@ 2=TCF_SCID:R@@ 3=TCF_VCID:R@@ 4=TCF_TYPE:R@@ 5=LOCKOUT:R@@ 6=TCF_SEQ_FLAG:R@@ 7=TCP_VER:R@@ 8=TCP_2ND_HDR_FLAG:R@@ 9=APID:R@@ 10=TCP_TYPE_IS_NOT_CMD:R@@ 11=TCP_SEQ_IS_NOTE_SINGLE:R@@ 12=FECW_MISSMATCH:R@@ 13=FARM1_PWA:R@@ 14=FARM1_NWA:R@@ 15=FARM1_LOCKOUT_AREA:R@@ 16=FARM1_SAME_NUMBER:R@@ 17=INVALID_BC_CMD:R,,
,UART_RET_FROM_IF_RX,int32_t,(int32_t)gs_driver->info[1].ret_from_if_rx,PACKET,=F44+INT((G44+H44)/8),=MOD((G44+H44)@@8),=IF(OR(EXACT(C45@@"uint8_t")@@EXACT(C45@@"int8_t"))@@8@@IF(OR(EXACT(C45@@"uint16_t")@@EXACT(C45@@"int16_t"))@@16@@IF(OR(EXACT(C45@@"uint32_t")@@EXACT(C45@@"int32_t")@@EXACT(C45@@"float"))@@32@@IF(EXACT(C45@@"double")@@64)))),NONE,,,,,,,,,
,UART_LAST_REC_TIME,uint32_t,(uint32_t)gs_driver->info[1].last_rec_time,PACKET,=F45+INT((G45+H45)/8),=MOD((G45+H45)@@8),=IF(OR(EXACT(C46@@"uint8_t")@@EXACT(C46@@"int8_t"))@@8@@IF(OR(EXACT(C46@@"uint16_t")@@EXACT(C46@@"int16_t"))@@16@@IF(OR(EXACT(C46@@"uint32_t")@@EXACT(C46@@"int32_t")@@EXACT(C46@@"float"))@@32@@IF(EXACT(C46@@"double")@@64)))),NONE,,,,,,,,,
,UART_CMD_ACK,uint8_t,(uint8_t)gs_driver->info[1].cmd_ack,PACKET,=F46+INT((G46+H46)/8),=MOD((G46+H46)@@8),=IF(OR(EXACT(C47@@"uint8_t")@@EXACT(C47@@"int8_t"))@@8@@IF(OR(EXACT(C47@@"uint16_t")@@EXACT(C47@@"int16_t"))@@16@@IF(OR(EXACT(C47@@"uint32_t")@@EXACT(C47@@"int32_t")@@EXACT(C47@@"float"))@@32@@IF(EXACT(C47@@"double")@@64)))),STATUS,,,,,,,0=SUCCESS:G@@ 1=RT_ACPT:G@@ 2=RT_FWD:G@@ 3=LENGTH:R@@ 4=CRC:R@@ 5=TO_ID:R@@ 6=TC_DISC:R@@ 7=CM_TYPE:R@@ 8=LST_FUL:R@@ 9=TL_ACPT:G@@ 10=TL_PAST:R@@ 11=TL_EXST:R@@ 12=TL_NEXE:R@@ 13=TL_NFND:R@@ 14=BL_ACPT:G@@ 15=BL_BLK#:R@@ 16=BL_CMD#:R@@ 17=BL_ISOR:R@@ 18=BL_INAC:R@@ 19=BL_COMB:R@@ 20=TLM_DST:R@@ 21=UNKNOWN:R,,
Expand Down
Loading