Repo

kjana00@gmail.com

older <-

2012-04-17 00:48:40

今朝はくもり。朝ごはんはパンとサラダとソーセージ。環状線が遅れてたからか、妙に混み気味。鬱陶しいったら……

とりあえず 7SEG LED はエラーの時点滅させようなんていう話になったんでそっちから。他の LED を点滅させてるのに使ってるタイマーが使えるかと思ったけどそんなことも無く、ということでタイマーを一つ付け足すことに。原著者の意図が自律的なモジュールっていうのだからそうならざるを得ない感じ。まあ、とりあえず点滅はしたさ。何か変な表示があってちょっと悩んだけど。unsigned char を unsigned short として表示するのは構わないけど、そうしたのを忘れて元の変数に 888 とか代入するのはやめましょう。

それからメインマイコンの方のフレームワーク組み立てへ。まあ、そんなご大層なものかと問われたら、自信を持ってそんなわけないって答えるなっていう……要求受けたところでテスト用の状態遷移に移って、終わったらそのまま待機する感じ。このテストモードから通常動作に移行する予定は無いからそれで構わない。テストの設定はまたマクロで一つにまとめて #include する時に #define でマクロの定義を切り替える形。で、大雑把に作って簡単なテストを実装してみたら、これが動かない。

最初はタイムアウトしてた。どうしてだろうと思ったら、そもそもテストの状態遷移に移ってなかった。何かと思ったら、ダミーを入れてずらしたせいで、テスト用の状態遷移関数がダミーに割り当てられてた……手で入れちゃだめだね、ダミーでも。同じ仕組み使っとかないと。

ちゃんとした関数が呼ばれてまともに状態遷移するようになると、今度は真っ当な値なはずなのにエラーになってくれてまた悩む。objdump -S でアセンブラコード眺めてみたりもしたけど結局のところ、合計を出した後に平均を出すために割り算する場所には行かないようになってたということだったりして。switch の中身をきれいに分けようとし過ぎたか。もしくは A/D 値の平均算出部分の状態分けが足りなかったか。そこでもう 1ms 遅らせてもな、ということで合計の算出が終わったら割り算もしてやるようにした。これで、とりあえず一番単純な類のテストは出来上がり。いくつかそういうのがあるんでその辺も適当に実装してやる。まあ、また、関数を定義するマクロとか作ってまとめるわけね。面倒臭いから。

そんな感じで今日はおしまい。半二重の RS485 通信のテストってどうしようかと相談されて一緒に悩んだりもしたけど。デバッグ用の RS232C に投げちゃえ、という結論。いいのか、そんなで。まあとにかく帰って、晩ごはんに冷奴と豚汁うどん、と。

後は WWW 見たりゲームしたりと。さくさく負けまくると痛いですわ、とかの後、アンドロイドで魔道具術士はどうなるか、なんて試しだす。知力低くて魔法使い難いわ、HP は全然上がらないわでなかなか、あれ。比較対象が昨日死んだ狂戦士だからほんと、HP がものすごく低く見える。攻撃力も下手すると 1/5 とかに見える感じだし。

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12