C2A_Core
gs.c ファイル

Ground station との通信の Driver [詳解]

gs.c の依存先関係図:

[ソースコード]

マクロ定義

#define GS_RX_HEADER_SIZE   (2)
 
#define GS_RX_FRAMELENGTH_TYPE_SIZE   (2)
 
#define GS_TX_STREAM   (0)
 

関数

static DS_ERR_CODE GS_load_ccsds_driver_super_init_settings_ (DriverSuper *p_super)
 CCSDS 側 Driver の DS 上での初期化設定 [詳解]
 
static DS_ERR_CODE GS_load_uart_driver_super_init_settings_ (DriverSuper *p_super)
 UART 側 Driver の DS 上での初期化設定 [詳解]
 
static void GS_load_default_driver_super_init_settings_ (DriverSuper *p_super)
 上記初期化の共通部分をまとめた関数 [詳解]
 
static DS_ERR_CODE GS_analyze_rec_data_ (DS_StreamConfig *p_stream_config, void *p_driver)
 地上からの受信データ解析関数 [詳解]
 
DS_INIT_ERR_CODE GS_init (GS_Driver *gs_driver, uint8_t uart_ch, DS_StreamRecBuffer *ccsds_rx_buffers[DS_STREAM_MAX], DS_StreamRecBuffer *uart_rx_buffers[DS_STREAM_MAX])
 Driver の初期化 [詳解]
 
DS_REC_ERR_CODE GS_rec_tctf (GS_Driver *gs_driver)
 地上から CMD を受信する. 形式は TC Transer Frame [詳解]
 
DS_CMD_ERR_CODE GS_send_vcdu (GS_Driver *gs_driver, const VCDU *vcdu)
 地上に向けて TLM を送信. 形式は VCDU [詳解]
 

変数

static uint8_t GS_rx_header_ [GS_RX_HEADER_NUM][GS_RX_HEADER_SIZE]
 
static uint8_t GS_tx_frame_ [VCDU_LEN]
 

詳解

Ground station との通信の Driver

gs.c に定義があります。

マクロ定義詳解

◆ GS_RX_FRAMELENGTH_TYPE_SIZE

#define GS_RX_FRAMELENGTH_TYPE_SIZE   (2)

gs.c20 行目に定義があります。

◆ GS_RX_HEADER_SIZE

#define GS_RX_HEADER_SIZE   (2)

gs.c19 行目に定義があります。

◆ GS_TX_STREAM

#define GS_TX_STREAM   (0)

gs.c21 行目に定義があります。

関数詳解

◆ GS_analyze_rec_data_()

static DS_ERR_CODE GS_analyze_rec_data_ ( DS_StreamConfig p_stream_config,
void *  p_driver 
)
static

地上からの受信データ解析関数

引数
[in]p_stream_configDS_StreamConfig
[in]p_driverGS_Driver
[in]

gs.c204 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ GS_init()

DS_INIT_ERR_CODE GS_init ( GS_Driver gs_driver,
uint8_t  uart_ch,
DS_StreamRecBuffer ccsds_rx_buffers[DS_STREAM_MAX],
DS_StreamRecBuffer uart_rx_buffers[DS_STREAM_MAX] 
)

Driver の初期化

引数
[in]gs_driverドライバー
[in]uart_ch有線通信時の CH
[in]ccsds_rx_buffersCCSDS 用受信バッファ
[in]uart_rx_buffersUART 用受信バッファ
戻り値
DS_INIT_ERR_CODE

gs.c59 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ GS_load_ccsds_driver_super_init_settings_()

static DS_ERR_CODE GS_load_ccsds_driver_super_init_settings_ ( DriverSuper p_super)
static

CCSDS 側 Driver の DS 上での初期化設定

引数
[in]p_superDriverSuper
戻り値
DS_ERR_CODE

gs.c127 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ GS_load_default_driver_super_init_settings_()

static void GS_load_default_driver_super_init_settings_ ( DriverSuper p_super)
static

上記初期化の共通部分をまとめた関数

引数
[in]p_superDriverSuper

gs.c143 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ GS_load_uart_driver_super_init_settings_()

static DS_ERR_CODE GS_load_uart_driver_super_init_settings_ ( DriverSuper p_super)
static

UART 側 Driver の DS 上での初期化設定

引数
[in]p_superDriverSuper
戻り値
DS_ERR_CODE

gs.c135 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ GS_rec_tctf()

DS_REC_ERR_CODE GS_rec_tctf ( GS_Driver gs_driver)

地上から CMD を受信する. 形式は TC Transer Frame

引数
[in]gs_driverドライバー
戻り値
DS_REC_ERR_CODE

gs.c166 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ GS_send_vcdu()

DS_CMD_ERR_CODE GS_send_vcdu ( GS_Driver gs_driver,
const VCDU vcdu 
)

地上に向けて TLM を送信. 形式は VCDU

覚え書き
DS_send_general_cmd が使われているが, これは DS は MOBC コンポ間を想定しているため, MOBC から見るとコンポに cmd を送信している様に見える, が 今回は MOBC から地上に TLM を送信している
TLM 送信, 形式は VCDU
引数
[in]gs_driverドライバー
[in]vcdu送信する VCDU. 場合によってはそのまま DS に渡すので, local変数ではなくstaticな変数を渡すこと
戻り値
DS_CMD_ERR_CODE: 送信結果

gs.c257 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

変数詳解

◆ GS_rx_header_

uint8_t GS_rx_header_[GS_RX_HEADER_NUM][GS_RX_HEADER_SIZE]
static

gs.c28 行目に定義があります。

◆ GS_tx_frame_

uint8_t GS_tx_frame_[VCDU_LEN]
static

gs.c29 行目に定義があります。