マイコンのプログラムでデータバスを排他制御する必要がありそうなので、やり方を考えてみた。排他と言っても別にマルチスレッドがあるわけではなく、メインループとタイマー割り込みの間でIOポートへのアクセスが混ざらないようにすれば良い。
 ミューテックスのようなものを作ってアクセスをロックするというのも一法だけど、今回はプログラム容量も処理速度も十分ではないので、一番単純な割り込みを一時的に禁止する方法を取ることにした。
 メインループでデータバスを使う直前にタイマー割り込みを禁止して、データバスを使い終わったら割り込みを許可する。タイマー以外の割り込み要因ではデータバスの使用が重複することは無いはずなので、これで排他できたはず。
 残りの時間はテスト用のコードの間違いを修正したり、動作チェック用の資料を作ったり。でも今日やる予定だったテストは中止になってしまった。別棟で開発中の回路は配線がスパゲッティ状態で、下手にいじると断線しそうだからだとか。まあロジックアレイは後から融通が効くからなんとかなるとは思うけど。

 帰りに家電量販店に寄ってソフトバンクのカウンターでHTC-Desireの予約について尋いてみたけど、まだ資料も何も届いていないので何も分からないとのこと。なんだか末端は置いてけぼりになっているみたいなのは、さすが孫さんの個人商店といったところ。
 でも、明日(もう今日か)から全国で予約受付開始と言ってしまってる以上、朝には全国に通達が行くのだろうか?