デバッグ出力

自分みたいなてきとーな人間の場合,動かしてみてから考える,という行動をとる.よくわかってないけど,動けばいいや,っていうのと,動いていることのみが真実だ,という2つの理由.だからといって,超能力者じゃないのでソフトウェアが動いているかどうか,ハードウェアが動いているかどうかなんて見えない.Don't think! Feel!とか言われたって,感じ取れない.ということで,何が起きているかをわかりやすく表示することにした.本当は,sprintfで整形したのをUART出力しようと思ったんだけど,sprintfが無いっぽい.逆アセンブリ結果を見るとcall sprintfみたいになってるのに,何も起こらない.そもそもprintfも何も起こらないし起こし方も書いてない.仕方なくしょぼいながらに文字列だけにしようかとも思ったけど,データが見れないと困るから数値→文字変換をテーブルを引いてやることにして,出力完成.
おかげで,次に何を処理しないといけないかが見えるようになった.もちろん,どこまで進んでいるかも見えるようになった.便利.

こんな風にした.もっと良い方法あったのかな.

char table[] = {'0','1','2','3','4','5','6','7',
                '8','9','a','b','c','d','e','f'};
table[data>>4];
table[data&0xf];