fc2ブログ

773mbar

2024年03月 ≪  123456789101112131415161718192021222324252627282930 ≫ 2024年05月
TOPIntel Galileo ≫ Intel Galileoでprintfを使う

Intel Galileoでprintfを使う

Galileoのスケッチは他のarduinoとは違ってLinuxのひとつのプロセスとして動く。

ってことは当然の事ながら、printfとかで標準出力に何か出す事もできる。

ところが、main()関数で、stdoutとstderrは、それぞれ /tmp/log.txt と /tmp/log_er.txt に出力するよう設定されている。デバッグ時にはこれが簡単に確認できたら便利かもしれない。

ってことで、コンソールに設定してみる。

void setup() {
  stdout = freopen("/dev/console", "w", stdout);
  stderr = freopen("/dev/console", "w", stderr);

  printf("TEST\n");
}

これでコンソールに「TEST」と出力される。

当たり前だけど便利かも。

arduinoだったらSerial.print()を同様なデバッグに使うことができるが、fprintfに相当する機能を使いたかったらsprintfで一旦バッファに書き出す必用があった。しかしGalileoならfprintfが使える。

シリアルを接続していないのであれば、上記/dev/console の部分を /dev/ttyGS0 にすれば、IDEのシリアルモニタに出力される。当たり前だけど便利。


スポンサーサイト



Intel Galileo | Comments(-) | Trackbacks(-)