以前から考えていたフルコン用の簡易モニター
手元にあるLINKとarduino(UNO)とMCP2515シールドで作ってみようと思います。
(完成するのだろうか?)
CAN通信に関して「動かして学ぶCAN通信」を参考にやってます。
まずはLINK側の設定
仮にビットレートは250kBPS
CAN IDは1000
送信レートは100Hzにします。
各フレームの2バイト目にフレームIDを付与して識別
表示したいデータは1フレームに3つづつ
同じようにフレームを5つ作成
お次はarduino側
CANに関するライブラリ等をインクルード
ピンとIDを設定
変数宣言
マスク・フィルターも設定(ここが不安)
フィルターの効果でID1000以外は出てこない前提で
受信したrxBufの2バイト目の数字(フレームID)に応じてデータをEG_dataへコピー
あまり意味がないけど5回繰り返したらリセット
タイマー関数で0.1秒毎にDIS関数が呼び出される
動作チェック用のEG_DATA関数は実際には使ってないっす
REV関数以降でEG_dataから欲しいもののみ抽出して見やすい値に演算して
シリアルモニタに出力
ひとまずこんな感じになりました。
ブログ一覧 |
arduino | 日記
Posted at
2020/01/07 23:51:18