無料ブログはココログ

« ミント缶の進行方向転換 | トップページ | C-SizeDCCの自動運転 »

2021年10月23日 (土)

Arduino nano の互換性

Arduino nano Every

手持ちの台数不足のため、自動運転スケッチは nano3だけで、nano Everyの動作チェックは行っていませんでした。「秋月電子の部品だけで完成します」と謳っている立場上まずいので、DSairから取り出して動かしてみたら端っからビルドエラーが。
S88.cpp:318:3: error: '_delay_us' was not declared in this scope
S88.cppはゲヌマ・フジガヤ2さんのS88 Detectorから拝借したフォトリフレクタ処理コードです。delayMicroseconds()に置き換えるとビルドは通りますが、ネットの情報によると精度が悪いそうなので、sakuraさんのサイトの wait()関数を拝借しました。チックカウントを取得する micros()を使ってディレイを作る関数です。
Arduino nano Everyボードはチェックが厳格なのか requestFrom()の引数の型でワーニングが出たので、(uint8_t, size_t)にキャストしました。Wire.hにはrequestFrom(int, int)とrequestFrom(uint8_t, size_t)のオーバーロードがあります。

NoboriKudari

無事、Everyで自動運転が出来ました。

 

« ミント缶の進行方向転換 | トップページ | C-SizeDCCの自動運転 »

自動運転」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« ミント缶の進行方向転換 | トップページ | C-SizeDCCの自動運転 »