TRZ1104A (7) 可変引数マクロ と TeraTerm2011年05月02日 20時08分55秒

TeraTerm
printf の関係で可変引数マクロを調べていて見つけたのが「可変個引数マクロを使う」の中で述べられている以下の方法。
#if defined(DEBUG)
#define DEBUG_PRINTF(fmt, ...) \
  printf("%s:%d:%s\n", __FILE__, __LINE__, __func__); \
  debug_printf(fmt, __VA_ARGS__)
#else
#define DEBUG_PRINTF(fmt, ...)
#endif
こんなことができるなんて知らなかった。さっそく rprintf でもやってみる。
ファイル名 main.c の 61行目 関数名は main
なかなか便利そう!


もう一つ、TeraTerm の使い方
TeraTerm は DTR と RTS の制御ができないと思っていたが「マクロでIO操作すれば使えるようになります」という言葉を見つけた。というわけで以下のマクロを登録し(setdtrrts.ttl)
connect '/C=3'
setrts 0
setdtr 1
setdtr 0
µVision4 から Customize Tools Menu の Argumentsを以下のように設定することで、 TeraTerm も使えることがわかった。
/M=setdtrrts.ttl /BAUD=115200
ただし、古い TeraTerm はこのマクロに対応していないようなので新しいバージョン(Ver 4.59 以降)に入れ替える必要がある。


参照:
可変個引数マクロを使う
MARY(超小型ARMマイコン基板)用 lpcsp