Repo

kjana00@gmail.com

older <-

2011-12-21 00:40:24

今朝はくもり。朝ごはんはパンとサラダとソーセージ。北の方は晴れてるんだけど、南の方が下手したら雨降りそうっていうぐらい。まあ、昼ぐらいにはいい天気になるのかな。今頃の時期だと。

ちょっと実験するのに前にデモで使ったプログラムを焼いてくれというので焼いて、何か動かないというので調べてみて、原因が後付けハードウェアだというのがわかった辺りでぱんって何か破裂してこれは本当に壊れましたね、と……なんてことをしつつも昨日の続き。

IO#read_nonblock を使うだけだと、ループして全部読むようにする前と同じようにデータ長を読み違えて落ちる。なんで、やっぱりループして全部読むようにして、ってやると今度は刺さる。といっても本当に刺さってるわけじゃなくて、無限ループにはまってるだけなんで ^C で止まるわけだけど。それでこの状態の時にはどうなってるのかなと読み出せてる分の返答を表示してみたら読み出した分が増えずに Errno::EAGAIN になってる。それじゃあと GPIO 出力で出力バッファが空かどうかを吐かせてみたら、見事に何か詰まったままになってる。

全然納得の行くルートは思い付かないけど、何かレースで UART 向け出力バッファに詰めただけで、そこから吐き出すように TX をキックするのが上手くいってないっぽいなと結論。で、リクエスト受信のために定期的に呼ばれてる関数でキックしてやるようにしたら何とかなったっぽい。リクエストに対するレスポンスを詰めた後キックしてるし、送信割り込みは TX のシフトレジスタにデータセットする度に起こるって書いてあるから、その割り込みハンドラでバッファに何かあったらそれを出力するっていうので連鎖的に吐き出されていくはずだし、本当に納得行かないんだけど。

とりあえずそれなりの時間自席で通信が問題無いっていうのを確認したんで、今度こそまともに状態遷移見たいぞと表の小屋へ実験に。ついでにここでもっと長い時間データ取得してみましょうねという魂胆。で、通信の方は本当に問題無いっぽいのがわかったんだけど、状態遷移の方はいらないことして基板を壊したっぽい……その結果として起こるはずだった状態遷移は起こったけど。でもスイッチ入れても電圧が来なくなってるって、明らかに壊れたよね、これ。

そういうことで戻って確認。マイコンからの出力が来てるテストピンで反応が無いから一瞬焦ったものの、もっとマイコンに近いところにある抵抗の前後で電圧が違うのがわかって安心した。何か妙に抵抗値が大きくなってる。この抵抗が焼けたことでマイコンのポートまでは壊れずに済んだらしい。まさに名誉の戦死、二階級特進っていう感じ。で、抵抗の階級って何だとかいう疑問は置いておくとして。

朝壊した分も直してもらえてたんで確認して、その間に今壊してきたのも直してもらえたんで確認して、で今日はおしまい。帰って晩ごはんに野菜スープと飲茶セット。豚の焼売二つに海老焼売一つ、海老餃子に丸餃子に小さい肉まん、と。それとは別に、晩ごはん前に中華バーガーことふかひれまんを食べたりもして。とりあえず、肉まんはごはんのおかずにならないね。おいしいけど、何か変な感じ。

で、WWW 見てゲームして、と。うまくはまってすかっと気分良く快勝してみたり、甚しくどうしようもなく墜ちまくってみたり、地味にイークの洞窟を下ったり。忍者、柔らかいんだよな……

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12