Repo
kjana00@gmail.com
2012-03-01 00:52:14
今朝は雨。朝ごはんはパンとサラダとソーセージ。雨と言っても傘がいる程では、と言っていられたのは京橋までで、でも向こうでもどうしても傘がいるかと言うと首をひねるところで。面倒臭いからあんまり傘さしたくないんだけどな。
遊んでみようかというところにサブマイコンのプログラム引き取らないかなんていう話があって、それでどうしようというところに担当の人が来てお話。ハードウェア担当の人の危機感と大体の進行を言ってどんなもんでしょうと聞いたらそんな感じで出来るはずって言うんで結局現状のままで行くことに。……本当に大丈夫なんだろうか。まあいいか……
話のついでにサブマイコンとのやり取りで決まってなかったところをえいやで決めてしまったんで、決まるまでと保留していた辺りのコードをいじってみる。まあこの辺の GPIO 使うよね、やっぱりっていう。系統選択制限の方についてはこっちで勝手に切る場合があり得るんで立ち下がりを拾う方向。エラーの方は、他のエラーとは別に見つつ同じ条件にするためにスイッチ状態を別に見るという格好に。他のエラーと同じ枠組みに入れようとすると、サブマイコンから通知されたエラーをサブマイコンに通知するという間抜けなことになるもんだから。
こういうのをどこに突っ込もうかと考えると、今までの状態遷移関数に一枚ラッパーを噛ませてそこに入れるのが妥当かなとちょっと構造をいじるとか、同じように GPIO 使って通知してもらってるスイッチの状態を見るポートも合わせてちゃんとした名前付けておこうといじるとか、名前的に今までと論理が逆になるからといじるとか。ん、とりあえず、こんなものか。
エラーのキャンセルも非同期に通知してるけど、サブマイコンとしてはあんまりキャンセルの方は真面目に考えてなくて、むしろ他と同じリクエスト-レスポンスの枠組みに入っててくれた方が嬉しいというのでインターフェースを追加してみる。細々とエラー全部についてわかる必要もなくて、適当にカテゴリ分けしてそれぞれでエラーが起こってるかどうかぐらいを返して欲しいなという要望で、どうしようかなと。結局、エラー設定をまとめてるマクロでカテゴリも設定してやって、後で各カテゴリに対するエラーが一つでもあったら 1 を返すなんていう関数を使ってリクエストへの応答を組み立てることにしてみた。これぐらいの数だったらリニアサーチで全然、問題無いはず。100 も無いんだから。
そろそろ帰ろうかというところでこれにプログラム焼いてと基板を持って来られて、焼こうとしたら電源が入らないのが発覚して……で小一時間帰るのが遅れたり。挙句、動かしてみたら何かが故障する音がしたとかいうとしょんぼりするよ……まあともかく、帰る。今日はずいぶんあったかいんだけど、9℃ だから実は昨日と全然変わらないんだよね……湿度のせい? で、晩ごはんはカレー。深い意味も無く白菜と大根とか加えてみてもカレーはカレー。さすが、もっと愉快な具材でもカレーだっただけのことはある。
後は WWW 見てゲームしてで。さくっと勝ったけど分析してみると真っ赤だったり、ブロードソードの技能は入門者までしか上がらないのが発覚したり。武装が弱過ぎるな……