CAN通信を実装する為にデバイス(CPU内臓モジュール)をどう使えばいいか試行錯誤しているところ。。

送信、受信が出来れば最低限は機能を押さえたことになるかなと思っていたんだけど。。

リモートフレームというリクエスト応答の仕組みが、バスのトラフィックを上げない大切な機能だと分かり、それを使えるようにしようとマニュアルと悪戦苦闘中。。

そして、これが。。まったく動く気配がないから始末が悪い。。

何か手掛かりは無いものかな?!

まだ、CAN通信プログラムを作ったわけでもないんだけど。。

サンプルプログラムを使って少しずつ設定を変えたりしながらCAN通信コントローラの使い方を勉強しようというもくろみは、最初から行き詰ってしまった。。

たぶんだけど、コントローラ1個なら動作するというのは、送信したデータが、受信されないから再送を繰り返していただけなんじゃないかって思うようになって。。

正常に送信、受信が完結したら信号はどう変化するのか調べてみた。。

そしたら、『フィルタとマスク』というキーワードに行き当たったんだ。。

これを理解しないと先へは進めそうに無い。。

CAN通信コントローラの制御プログラム開発って難しすぎ。。

それとも私の技術レベルが低いだけか??

いずれにしても私にとってこの壁は高い。。

マイクロチップ社のサイトにCAN通信のサンプルプログラムが有ったので、何も分からないままダウンロードしてPICに書き込んで動作させてみた。。

まず、ブレッドボードに部品、配線(2つのPICに書き込んでCAN通信するように接続)を施してプログラムを書き込み動かしてみた。。

ところが、まったく動く気配が無い。。

そんな簡単にサンプルプログラムって動くものじゃないのかな??

普通は、マイクロチップ社のサンプルプログラム簡単比較的に動くんだけどな?!

回路ミスかな??
(回路も見よう見真似っていうか。。マニュアルを参考に配線をつないだだけ。。)

とか思いつつ、片方をリセット状態にしてもう片方を動かしたら、CAN通信ライン上に信号らしきものが出力されている。。

ってことは、同じプログラムでCAN通信させるとか、単純な考えは捨てたほうが良さそう。。

自局、他局を識別しているのか??

少なくも原因調べて(ソースコードを読み解いて何をしているのか)勉強せねば。。

まずは、一歩先に進めたな。。

これまで試作中の基板にCAN通信回路を実装することに。。
 
 
それで、使うマイコンもCAN対応のものに変更。。

そしたら500円くらいのコストダウンになっちゃいました。。

少なくとも6セット使う予定のユニットだから少なく見積もっても3000円ほどのコストダウンになりそう。。

さい先良いぞ!!

今後の拡張性や、ころころ変わる仕様に追従して基板の設計変更を繰り返すのに疲れた私がつい口走った。。

いや、逆提案したのが、CAN。。

車で採用されていることを知っている人も居るんじゃないかな?!

この規格に合わせて設計しておけば。。

通信コマンドも確定しておけば。。

モジュール設計しておけば。。

先々、繰り返される仕様変更に柔軟対応が可能になるはず。。

早速、このお盆休み中に詳しい情報集めないと。。