M5stackにて自動車用アナログ電圧をCANデータに変換送信するユニット制作してます
-
M5stack本体で取得したアナログ電圧値(四桁)をCANにて
送信したいと考えてUIflowにてblocklyでプログラム作成してます
8bytリスト作成し1byte(8bit)へ指定したCAN IDへの送信は出来ましたが
上位、下位byteに分けて電圧値を送信出来なく悩んでいます。
どなたかアドバイス頂ければと思い投稿しました。 -
UIFlowでのビット演算は下記画像のMathにある赤丸のブロックで行います。
これで計算すればいいと思うのですが、いかがでしょうか? -
@mongonta555 さん
コメントありがとうございます。車関連のCANモニター制作事例の詳しい情報がなかなか見つからずに困っていました。
車いじりの為にM5stack導入してみたのですがプログラム知識などゼロなので難しいですね。何とか動く物を作っては見ましたが複数IDからデータ受信取得させると処理が間に合わないのかフリーズしてしまったり表情が更新されないなど難儀しております。
上手く作れましたらフリー公開したと考えております。
現在のテストverをgithubにアップしてますので、もしよろしければ御覧頂き何かアドバイス頂ければと思います。
優先的に処理させる順序変更なども出来るようになりたいとは考えてます。
(CORE2で動かしています)
https://github.com/gok555/M5stack-OBD-CANgauge -
@gok5
実は、COMMUモジュールのサンプルコードを参考にして書くことができます。
-
@icingtomato さん
commuモジュールも購入しましたがイマイチ理解出来ずに外付けのユニットにて製作しております。
https://youtu.be/VD5udgCUBcA二項目程度なら平気だったのですが六項目表示させると更新速度遅延などの問題があり困っておりました。カウントタイマによる表示更速度の調整方法や16ビットデータ計算をループ外で処理させる方法など教えて頂いて形になってきています、今後はアクセル開度やエンジン回転数に応じてPWM数値を可変出力させる事は出来ないのかと模索しております。
プログラムは全くの無知からのスタートなのですが難しいですね。