学校の演習の課題がH8マイコンとLCD&LEDを使った自由課題。
普段ロボットで使い慣れたマイコンの下位機種で、「ラッキー」と行きたいところなんですが、今回の課題、アセンブリで書かなきゃならんのです。これが大変。
いちいち、レジスタのことを気にかけながら、スタックにプッシュ&ポップ。
RAM使うにもレジスタに一時保存してから。
やたらと、レジスタレジスタ・・・って感じで、エラーがアルゴリズム以外のところで発生します。
ロボット作るときはステート考えずにガンガン計算させるのですが、足し算一個に1ステート使っているのを考えるとC言語で逆三角関数を計算して関節の計算しているとき、一体どれだけのクロック使っているのかぜんぜん分かりませんね。
そんな難しい計算を、アセンブリで書く気にもなれませんが、こうやってアセンブリで書いているとステート数が目に見えてくるのは面白いですね。
とりあえず、課題として「目押しの音ゲー(音抜き)」みたいな感じで、人間が左右で違う動きをするのが、苦手という習性を使ったゲーム作ってます。
割り込みを使わず、異周期のリレーを作るのに苦労しましたが、あんまりプログラムには凝らないで、あくまでも課題なのでプレゼンに力を注ごうと思う。うん。