摘要
本篇筆記主要記錄基于恩智浦MPC5744P的CAN驅(qū)動開發(fā)和測試過程中使用英飛凌TLE9252帶功能安全的CAN收發(fā)器時候遇到的問題。
準備工作
安裝S32DS for PA, 因為我們在S32DS下開發(fā)MPC5744P。
問題提出
恩智浦的MPC5744P控制器局域網(wǎng)絡(luò)CAN,跟我們之前使用的恩智浦Kinetis KV, 等系列的flexCAN結(jié)構(gòu)基本是一樣的,本次在開發(fā)過程中在使用英飛凌TLE9252收發(fā)器時候,之前開發(fā)的可以正常通信的工程無法通信。英飛凌的TLE9252是比較新的一顆料,主要用于汽車上帶功能安全的CAN通信網(wǎng)絡(luò),比一般的收發(fā)器復(fù)雜,有多種操作模式,如,睡眠模式,正常模式,監(jiān)聽模式等,正常操作模式中需要將EN腳和NSTB腳拉高。
軟件中添加
其余驅(qū)動程序和初始化跟CAN0一樣,收發(fā)采用統(tǒng)一接口,可是在測試時候發(fā)現(xiàn)CAN1不通,無法通信。
解決問題
先將CAN跳線到另一路非功能安全的收發(fā)器,CAN通信收發(fā)正常,排除CAN驅(qū)動軟件問題。
將CAN1跳回TLE9252V,最后經(jīng)過多次實驗驗證發(fā)現(xiàn)電路中C53和C55目前的設(shè)計47nF偏大在500kbps波特率下,信號失真無法通信,將波特率調(diào)低為50kbps可以正常通信。拆掉C53和C54,可以正常通信,臨時飛線硬件設(shè)計更改為容值小一檔的電容,在1Mbps,500kbps下可以正常通信。
總結(jié)
在經(jīng)典CAN設(shè)計中,速率低的時候可以不用這兩個電容,在帶有CANFD的通信中,CAN FD 速率比較高,一般需要添加這兩個電容,但容值不易大,可以用示波器抓下波形,調(diào)整為合適值。
責(zé)任編輯:haq
-
電容
+關(guān)注
關(guān)注
100文章
6051瀏覽量
150457 -
CAN
+關(guān)注
關(guān)注
57文章
2756瀏覽量
463841 -
驅(qū)動
+關(guān)注
關(guān)注
12文章
1843瀏覽量
85329
原文標題:臥槽,電容引起了CAN通信不正常
文章出處:【微信號:InterruptISR,微信公眾號:嵌入式程序員】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論