/******************************************************************************* * モジュール名称 :API関数プロトタイプ宣言 * * モジュールラベル :dpu_api.h * * タスク区分 :ヘッダ * * 機能 :API関数プロトタイプ宣言を行う * * 使用上の注意 :特になし * * * * 改訂日・改訂者 :2011/06/07 笠羽 FM対応 * *******************************************************************************/ #ifndef _DPU_API_H_ #define _DPU_API_H_ // ****************** // *** 各種構造体 *** // ****************** // 3.2.2 *** BLOCK情報構造体 *** typedef struct M_T_BLOCK_INFO { unsigned int ui_createTime; // BLOCK生成時刻 LSB=31.25ms int i_replyNum; // リプライ数 char c_invalidFlg; // 異常フラグ unsigned int ui_blockIndex; // BLOCKインデックス } M_T_BLOCK_INFO; // 3.2.3 *** 衛星時刻構造体 *** !!revised!! typedef struct M_T_TIME_INFO { unsigned int ui_currentTime; // 衛星時刻 LSB=1.953ms unsigned int ui_currentTime2; // 衛星時刻 LSB=31.25ms !!new!! unsigned int ui_sunpulseTime; // SUNPULSE受信時刻 LSB=1.953ms } M_T_TIME_INFO; // 3.2.4 *** CCSDSヘッダ情報構造体 *** typedef struct M_T_CCSDS_HDR_INFO { unsigned short us_APID; /* APID */ unsigned char uc_Category; /* Category */ unsigned char uc_PktId; /* PacketIdentifier */ } M_T_CCSDS_HDR_INFO; /* // 3.2.5 *** 圧縮パラメタ情報構造体 *** [total: 1534 Bytes] typedef struct M_T_COMP_PARAM { unsigned char uc_bit; // ビット精度 1 B unsigned short us_QTable[8][8]; // 量子化テーブルデータ 128 B unsigned char uc_DCT_num; // DCハフマンデータ数 1 B unsigned short us_DCT_size[16]; // DCハフマンテーブル符号長 32 B unsigned short us_DCT_code[16]; // DCハフマンテーブル符号語 32 B unsigned short us_ACT_num; // ACハフマンデータ数 2 B unsigned short us_ACT_size[256]; // ACハフマンテーブル符号長 512 B unsigned short us_ACT_code[256]; // ACハフマンテーブル符号語 512 B unsigned short us_reStartIntvl; // リスタートインターバル 2 B unsigned char uc_marker_QT; // マーカ挿入フラグ 量子化テーブル 1 B unsigned char uc_marker_HT; // マーカ挿入フラグ ハフマンテーブル 1 B unsigned char uc_marker_comment; // マーカ挿入フラグ コメント 1 B unsigned char uc_markerDCT_Lnum; // マーカ用DC符号語数のデータ数 1 B unsigned char uc_markerDCT_L[16]; // マーカ用DC符号語数 16 B unsigned char uc_markerDCT_Vnum; // マーカ用DC符号化要素データ数 1 B unsigned char uc_markerDCT_V[16]; // マーカ用DC符号化要素 16 B unsigned char uc_markerACT_Lnum; // マーカ用AC符号語数のデータ数 1 B unsigned char uc_markerACT_L[16]; // マーカ用AC符号語数 16 B unsigned short us_markerACT_Vnum; // マーカ用AC符号化要素データ数 2 B unsigned char uc_markerACT_V[256]; // マーカ用AC符号化要素 256 B } M_T_COMP_PARAM; // 3.2.6 *** 圧縮コメント情報構造体 *** typedef struct M_T_COMP_COMMENT { unsigned short us_comment_num; // コメントデータ数 unsigned char uc_comment_data[256]; // コメントデータ } M_T_COMP_COMMENT; */ // 3.2.7 ***_DPU動作情報構造体_*** !!revised!! typedef struct M_T_DPU_INFO { unsigned char uc_dpuID; // DPU識別番号 unsigned char uc_rdnMode; // 冗長モード unsigned char uc_tlmFreeCount; // テレメトリ編集要求空数 !!new!! unsigned char uc_compFreeCount; // 圧縮要求空数 !!new!! unsigned char uc_ureqSts; // ユーザリクエスト状態 !!new!! } M_T_DPU_INFO; // 3.2.8 *** M_T_DPU_ERROR_INFO *** !!new!! typedef struct M_T_DPU_ERROR_INFO { unsigned int ui_SDRAM2bitErrCnt; // DS2BITエラー回数 unsigned int ui_SDRAM2bitErrAddr; // DS2BITエラーアドレス } M_T_DPU_ERROR_INFO; // G5.1 ***_冗長IFレジスタ構造体_*** typedef struct M_T_RDN_IF_STATUS { unsigned short us_sendReq; // コマンドパケット送信要求 unsigned short us_recvSts; // パケット受信ステータス unsigned short us_readCmdCount; // Readコマンド受信個数 unsigned short us_writeCmdCount; // Writeコマンド受信個数 unsigned short us_readRplyCount; // Readリプライ受信個数 unsigned short us_writeRplyCount; // Writeリプライ受信個数 unsigned int ui_writeCmdCargoAddr; // WriteCmdCargoアドレス unsigned int ui_readRplyCargoAddr; // ReadReplyCargoアドレス unsigned short us_rplySts; // リプライステータス unsigned short us_rmapErrSts; // RMAPエラーステータス unsigned short us_otherErrSts; // Otherエラースステータス unsigned short us_reserve1; // 予約1 unsigned short us_reserve2; // 予約2 unsigned short us_reserve3; // 予約3 } M_T_RDN_IF_STATUS; /* ==== DEBUG用 ======= ======= DEBUG用 ======= ======= DEBUG用 ======= // ---- SPECIAL ---- typedef struct M_T_WATCHDOG_TIMER{ // _ソフトウォッチドッグタイマ構造体型 char c_wdtEnable; // _ソフトウォッチドッグタイマEna int i_wdtCounter; // _ソフトウォッチドッグタイマカウンタ } M_T_WATCHDOG_TIMER; extern M_T_WATCHDOG_TIMER M_Gt_swWDT[16]; // _ソフトウォッチドッグタイマ ======= DEBUG用 ======= ======= DEBUG用 ======= ======= DEBUG用 ======= */ #endif /* _DPU_API_H_ */