C2A_Core
print.c
[詳解]
1 
5 // こいつもBootLoaderに配置するので,リプロ可能領域のものをincludeしないこと!!
6 
7 // printはHW依存性が強いため,ヘッダーはcoreにおき,オーバーライドする
8 // ビルド対象にて選択する
10 
11 #include <stdio.h>
12 #include <stdarg.h>
13 
14 #include "../Settings/sils_define.h"
15 
16 // バッファサイズよりでかい文字列が来ると死ぬ
17 static char PRINT_buffer_[512];
18 
19 #ifndef SILS_FW
20 
22 
23 void Printf(const char* format, ...)
24 {
25  va_list argptr;
26 
27  WDT_clear_wdt(); // 2019/03/10 追加
28 
29  va_start(argptr, format);
30  vsprintf(PRINT_buffer_, format, argptr);
31 
32  tt_printf("%s", PRINT_buffer_);
33  // Printf_org("%s", PRINT_buffer_); // LVTTL UART ch1での出力.邪魔なので初期化とともに無効化 (2019-04-09)
34  va_end(argptr);
35 
36  WDT_clear_wdt(); // 2019/03/10 追加
37 }
38 
39 #else
40 
41 void Printf(const char* format, ...)
42 {
43 #ifdef SHOW_DEBUG_PRINT_ON_SILS
44  va_list args;
45  va_start(args, format);
46  vsprintf(PRINT_buffer_, format, args);
47 
48  printf("%s", PRINT_buffer_);
49  fflush(stdout);
50 
51  va_end(args);
52 #else
53  // なにも表示しない
54 #endif
55 }
56 
57 #endif
HW 依存 Print, つまり ログ情報のフォーマット出力(デバッグ出力)
void Printf(const char *format,...)
Definition: print.c:9
static char PRINT_buffer_[512]
Definition: print.c:17
void WDT_clear_wdt(void)
WDTのクリア
watchdog timer