C2A_Core
memory_dump.h
[詳解]
1 #ifndef MEMORY_DUMP_H_
2 #define MEMORY_DUMP_H_
3 
4 #include "../System/ApplicationManager/app_info.h"
5 #include "../TlmCmd/common_cmd_packet.h"
6 
7 #define MEM_TLM_ID (0xff)
8 #define MEM_DUMP_WIDTH (CTCP_MAX_LEN - 18) // テレメパケット最大長 - ヘッダ長
9 #define MEM_MAX_SPAN (0x00800000) // 最大ダンプ幅は16MB(ADUサイズ制約)
10 
11 typedef enum
12 {
16 
17 typedef struct
18 {
19  uint32_t begin;
20  uint32_t end;
21  uint32_t adu_size;
22  uint16_t adu_seq;
23  uint8_t adu_counter;
24  uint32_t dest;
25  uint32_t rp;
26 } MemoryDump;
27 
28 extern const MemoryDump* const memory_dump;
29 
31 
32 
33 // 2018/08/24
34 // 自分の解釈をコメントとして追加
36 
37 // FIXME: CTCP 大改修が終わったら直す
38 // https://github.com/ut-issl/c2a-core/pull/217
39 #if 0
40 CCP_CmdRet Cmd_MEM_DUMP_REGION_SEQ(const CommonCmdPacket* packet);
41 // 1パケットに入り切らない場合は,最初のADU分割された最初のパケットのみダンプ
42 // もう一度送ると,その次のパケットがダンプ
43 // 最後はちゃんと止まる
44 
45 CCP_CmdRet Cmd_MEM_DUMP_REGION_RND(const CommonCmdPacket* packet);
46 // ADU分割された場合,その途中のパケットからダンプ
47 
48 CCP_CmdRet Cmd_MEM_DUMP_SINGLE(const CommonCmdPacket* packet);
49 // アドレスを指定して,ダンプ?
50 // Cmd_MEM_SET_REGION は無視?
51 #endif
52 
54 // MEMにアップリンクして書き込み
55 
57 // Cmd_MEM_COPY_REGION_SEQのコピー先を指定
58 
60 // destにrpを指定幅だけコピーしていく
61 // これもCmd_MEM_DUMP_REGION_SEQと同様に,何度も繰り返し発行して使う.
62 
63 #endif
CCP_CmdRet Cmd_MEM_SET_REGION(const CommonCmdPacket *packet)
Definition: memory_dump.c:62
CCP_CmdRet Cmd_MEM_COPY_REGION_SEQ(const CommonCmdPacket *packet)
Definition: memory_dump.c:244
CCP_CmdRet Cmd_MEM_LOAD(const CommonCmdPacket *packet)
Definition: memory_dump.c:205
const MemoryDump *const memory_dump
Definition: memory_dump.c:12
AppInfo MEM_create_app(void)
Definition: memory_dump.c:48
MEM_ACK
Definition: memory_dump.h:12
@ MEM_NO_DATA
Definition: memory_dump.h:14
@ MEM_SUCCESS
Definition: memory_dump.h:13
CCP_CmdRet Cmd_MEM_SET_DESTINATION(const CommonCmdPacket *packet)
Definition: memory_dump.c:224
コマンド返り値
Space Packet (コマンド用)
uint32_t rp
Definition: memory_dump.h:25
uint8_t adu_counter
Definition: memory_dump.h:23
uint16_t adu_seq
Definition: memory_dump.h:22
uint32_t end
Definition: memory_dump.h:20
uint32_t begin
Definition: memory_dump.h:19
uint32_t adu_size
Definition: memory_dump.h:21
uint32_t dest
Definition: memory_dump.h:24