午前中休み
このごろ不眠が続いているが、昨晩はついに一睡もできないうちに朝の6時になってしまった。こんな風に眠れない時は脳内で怒りや不満が渦巻いていることが多い。最近の不満から大昔の恨み事まで次から次に浮かんでくるので、カッカしてしまってとても眠れたものではない。もっともこうした負の感情は一旦眠って起きるとたいていきれいさっぱり消えているのだが、その最中はかなり強烈である。我ながらちょっと危ない。
昨夜もそんな感じで狭い寝床の中で寝返りを打ち続けていたのだが、空が白んできても全く眠くならないのであきらめて枕元のマンガ(『岳』)を読み始めた。3巻くらいまでは目が冴えていたのだが、4巻の途中あたりで気づかないうちに眠り込んでしまったらしい。ストレスでイライラしていた頭がマンガでほぐれたのだろうか。
難しい本を読み始めると自然に眠くなるとよく言われるが、何度か試してみたところ、内容を理解できないことにイラついてしまってかえって目が覚めてしまった。自分にはゆるいマンガを読むのが入眠に良いのかも知れない。

さて、どんな寝入り方をしても朝はパッチリ目が覚める方なのだが、今回は目が覚めた時には始業時間を5分ほど過ぎていた。慌てて会社に電話して、午前中休ませてもらうことにした。目は覚めていたが、頭の奥のほうに鈍い痛みというか疲れがあるのを感じていたし、普通に考えてもこのコンディションでは仕事にならない。そのまま昼まで眠って、昼から出社。

昨日途中で諦めたI2C通信のリベンジ。試しに昨日終わったときの状態で動作させてみたらまれに正常に動作する。この症状と今の状態を考えると、不正なタイミングで割り込みが起こっている可能性がある。ここまでは昨日の推測と矛盾しない。
この現象とは別の理由もあって割り込み処理を正常化に修正する必要がある。ソースをあちこちいじることになるので最初に方針をきちんと考えてから変更にかかる。途中で方針を変更して作業を戻したりもしながら進める。Subversionで管理しているのでこういうときに変更箇所を確認したり元に戻したりが簡単にできる。
なんだかんだで夕方には一連の変更が終了した。もくろみ通りI2C通信の割り込みも正常に動作するようになった。ただし通信そのものが成功したわけではないので、これから作りこんでいく必要がある。