評価ボード(QB-R5F10BMG-TB) CAN0の送信割込を使ってCAN通信

お世話になっております。

/*参考 

*

* CAN/LIN/UART/PORT Checker for RL78/F14

* Target: QB-R5F10PPJ-TB (RL78/F14, 100pin, 256KB ROM, 20KB RAM)

* Author: Yasushi Tanaka

/

移植RL78/F13 評価ボード(QB-R5F10BMG-TB)

開発環境: e2-studio7.4

toolChain: Renesas CC-RL C

デバッグツール: e2-Lite

/* CANの割込(vector.c)の設定 */

#pragma interrupt intcan0err_isr(vect=INTCAN0ERR, bank=RB1)

#pragma interrupt intcan0trm_isr(vect=INTCAN0TRM, bank=RB1)

#pragma interrupt intcangrfr_isr(vect=INTCANGRFR, bank=RB1)

#pragma interrupt intcangerr_isr(vect=INTCANGERR, bank=RB1)

現象は、

送信割り込みを使ってCAN送信しようとしますが、

CAN0のスロットにデータは入っても(確認済)、割込のルーチンintcan0trm_isr()は呼び出されません。

下記のように割り込みが許可されていて問題なさそうに見えますが。

/* CAN0送信割り込みを許可 */

MK2H &= (u1)(~RL78F_MK2H_CAN0TRMMK);

考えてられる原因は何でしょうか、ヒントをいただければ助かります。

よろしくお願いします。

(ちなみに割り込み使わずにCAN APIを使って通信は確認できています)

  • NAKAさま、
    本当にありがとうございます。

    改めてターゲットボードからCTXD0(P10)とCRXD0(P11)を取り、別のトランシーバーにあげたら、送っていただいたサンプルは完璧に動き出しました\(^o^)/
    やはりハードウェアの問題でした。

    感謝感謝!
  • NAKAです。

    >サンプルは完璧に動き出しました\(^o^)/
    ⇒でしょ (^_-)-☆
  • NAKAさま、
    いつもお世話になっております、ikkiです。

    トランシーバーを交換したら、
    同じ現象でしたので、考え変えたら
    原因は電圧が足らなかったことをわかりました!
    3.3Vはトランシーバーを駆動できないみたいです。
    (エミュレータ電源供給は3.3V)5V外部から供給したらパッチリ、サクサク動き出しました。
    これで一安心眠れそうです。
    いろいろありがとうございました。
  • お世話になっております。
    このCANバス初期化の生成方法を教えてください
  • madhawaさん、
    私が知る限り、RL78はCANについてはなく、
    サンプルなどを参考に自分で組むしかないです。
  • いっきさん、
    分かりました、LIN のサンプルがありますか。このサンパルでCANだけあります。私はRL78は始めた場合です。
    ありがとうごさいます。