rx231 can通信について

こんにちはtaniと申します。RX231マイコンでCAN通信を行っています。

CANalyzerからCANデータを送信しているのですがACKエラーとなってしまいます。

そこでCANalyzerのSelf ACK機能を用いたところ受信はできるようになりました。

ACKが出ていない原因として何が考えられるでしょうか。(受信はできているのでハードの問題ではないと思うのですが…)

Parents
  • CANバス内に他にノードはいますか?

    誰もACKを返してないのではないでしょうか。

    誰もACKを返さないとACKエラーになります。Self ACKは自分で出したCAN信号に自分でACKを返すので

    ACKエラーにならなくなります。

  • Noobさん、返信ありがとうございます。

    CANalyzerから送信しているので、RXマイコンが受信すればACKを返すものと思っていたのですが誤っているでしょうか。

  • 合ってます。

    ただリッスンオンリモードになってると受信はできてもACKを返しません。

    この設定は大丈夫でしょうか

Reply Children
  • リッスンオンリモードではないようです。(CTMS=0)

  • 連続送信ではなく、1shot送信でもACKエラーになるでしょうか。

    あとはRXマイコン側で何かエラーフラグが立ってないかを調べるくらいでしょうか。

    ごめんなさい。分かりません。

  • 1shot送信でもCANalyzer側でエラーは発生します。

    マイコン側のエラーフラグですが複数のエラーが立ったり消えたりします。

    B0ERR、B1ERR、FERR,SERR、ALF,BLF,OVLF,BOFFが立ったり消えたりします