並行書き込み

コルーチンがないと実装できなかったので、日本語文書が多い lua を選択。あとは unagi のソースを使いまわす。

lua の使い方とか host 側の制御プログラムを作るのにちょっと手間取ったが、AVR 側との通信はわりと素直に動いてくれた。

c から lua を呼んで、lua から c を呼ぶのでそこの間で変数をつなげられない(はず)なので仕方なくグローバル変数を使う。AVR 側は割り込みと通常があるのでこっちもグローバル変数なのよね。

並行書き込みの実験の検証を手早くしたかったので lua を使った。スクリプト実装も簡単にできてよかったが、 lua はビットシフトがないのと変数が実数しかないとか、unagi 的な目的にはいただけない仕様が多すぎるので squirrel に替えちゃう。