開発のヒント

周辺機能、I/O、メモリ

CANインタフェースをデバッグする際の注意点

CANはController Area Networkの略で、STM32ファミリの多くのシリーズに採用されているインタフェースです。bxCAN(Basic Extended CAN)は、CANプロトコル仕様バージョン2.0パートA、B、FDCANはCANプロトコル仕様バージョン2.0パートA、Bおよび、CAN FDプロトコル仕様バージョン1.0準拠です。

SPIやU(S)ARTとは違い、信号は2本の通信線の電圧の差動によって送信されます。そのため、通信線にノイズが入っても双方の線の電圧差には大きな変化がなく、ノイズに強いインタフェースです。

このインタフェースを使って通信デバッグする際には、注意が必要です。送信 / 受信のマイコンのそれぞれのCANのTxとRxピンを接続しても通信できません。なぜなら、CANバス上では差動で信号のやり取りが行われますが、STM32マイコンのピン(Tx、Rx)からは差動の信号は出力されないため、必ずCANトランシーバと呼ばれる別のICが必要になるからです。

注意 : そのほかにも、高速や低速CANではバス上で異なる終端抵抗が必要になります。

過去の開発のヒントはこちら