こんにちは、NXPの専門家
CANバスのトランシーバとしてTJA1145Aを使用します。バスをオフにテストするために CANH を GND にコネクテッドすると、PNFDE ビットが =1 であることがわかりました。しかし、バスオフが消えて通信が正常であっても、PNFDE フラグが回復できないのはなぜでしょうか。バスオフ回復後にトランシーバをどうすればよいですか。
こんにちは、
ご質問へのご返答が遅れましたことを心よりお詫び申し上げます。見落としていたようです。
PNFDE ビットはラッチされたステータス フラグです。デバイスがウェイクアップ フレームを監視しているときに内部エラー カウンターがオーバーフローすると設定されます。このフラグは、バスが通常の動作に戻っても自動的にクリアされないため、MCU によってクリアする必要があります。
PNFDE をクリアする方法:
- トランシーバ イベント情報 ステータス レジスタ (アドレス 0x63) を読み取ります。
- PNFDE ビットに 1 を書き込んでクリアします (0 を書き込んでも効果はありません)。
クリア後は通常通りの操作を続行CAN。トランシーバの追加リセットは必要ありません。
BRs、トーマス