CAN總線的特殊波特率如何計算
發(fā)布時間:2017-08-21 責(zé)任編輯:susan
【導(dǎo)讀】CAN總線采用的是異步串行通信,也就是沒有單獨(dú)的時鐘線來保證各個收發(fā)器之間時鐘的一致,每個收發(fā)器是按事先設(shè)置的波特率來對總線上的電平進(jìn)行分位。因此波特率設(shè)置準(zhǔn)確對CAN總線的穩(wěn)定通信來說非常重要。
CAN總線里我們可以通過對CAN 節(jié)點(diǎn)里的位定時寄存器的控制來實現(xiàn)不同波特率的通信。CAN協(xié)議里將一個位時間分為同步段、傳播段、相位緩沖段1和相位緩沖段2。每個段的時間長度都可以用一個整數(shù)的基本時間單位表示,該基本時間單位由系統(tǒng)的時鐘振蕩器分頻得到。
同步段位于一個位的起始位置,CAN-bus規(guī)定跳變沿為同步信號,但是發(fā)送節(jié)點(diǎn)發(fā)送一個位跟接收節(jié)點(diǎn)接收到這個位之間存在網(wǎng)絡(luò)傳播延遲,傳播段則是為了補(bǔ)償這段傳播延遲,由于采樣點(diǎn)位置在相位緩沖段1跟相位緩沖段2之間,通過設(shè)置相位緩沖段1和相位緩沖段2的值,可以調(diào)整采樣點(diǎn)位置,保證每個位采樣點(diǎn)一致。緩沖段的長度調(diào)節(jié)范圍則是由同步跳轉(zhuǎn)寬度(SJW)決定。
圖1.CAN位時間結(jié)構(gòu)圖
簡單的了解了CAN總線位時間的分段后,我們來看看一個節(jié)點(diǎn)的波特率到底要如何設(shè)置。如圖2是某ARM內(nèi)核的CAN位時間特性寄存器 (CAN_BTR)。
圖2.某ARM內(nèi)核位時間特性寄存器結(jié)構(gòu)圖
SILM(靜默模式)跟LBKM(回環(huán)模式)用于調(diào)試;
SJW:同步跳轉(zhuǎn)寬度;
TS2/TS1:位時間里兩個時間段的分配;
BRP:波特率分頻器,該區(qū)域定義了基本時間單元的長度;
例如某著名車廠CAN通信標(biāo)準(zhǔn)里規(guī)定,通信速率為125 kbps時,應(yīng)該采用單次采樣,采樣點(diǎn)位置設(shè)置在70%~77%之間。其位定時參數(shù)取值可見表1與表2。
表1.LS_CAN通信速率與采樣點(diǎn)參數(shù)
表2.LS_CAN可選時間份額與同步跳轉(zhuǎn)帶寬
采樣點(diǎn):采樣點(diǎn)不能太靠前也不能太靠后,否則如果剛好處于一個位的上升沿或者下降沿區(qū)間,會造成識別錯誤,所以根據(jù)CIA105的規(guī)范,采樣點(diǎn)在87.5%左右比較合適。但是一般我們可根據(jù)實際情況選取75%~85%之間;
同步跳轉(zhuǎn)寬度(SJW):SJW的值直接影響到重同步時相位緩沖段的可調(diào)節(jié)的范圍,SJW的值可以在1~4之間選擇,我們選擇3、4可以使總線獲得更寬的波特率容忍度;
采樣次數(shù):分為單次采樣跟三次采樣,三次采樣在設(shè)計之初雖然是為了過濾掉總線上毛刺,但是采用三次采樣經(jīng)常會影響SJW的跳轉(zhuǎn),所以實際應(yīng)用中我們一般都會采用單次采樣。
了解設(shè)置波特率的原則后,我們采用ZLG的波特率計算軟件,對25kbps波特率的設(shè)置參數(shù)進(jìn)行計算,計算結(jié)果如圖3。
圖3.25kbps波特率計算參數(shù)
根據(jù)上面提到的原則,我們選取采樣點(diǎn)為75%,SJW為4,時間份額為14的一組參數(shù),采用ZLG的CAN卡做驗證。
l自動波特率識別:采用CANScope自動偵測波特率的功能,對CAN卡的波特率進(jìn)行識別,識別結(jié)果為25kbps;
圖4.自動偵測波特率
l采樣點(diǎn)測試:采用CANScope對當(dāng)前波特率下CAN卡的采樣點(diǎn)進(jìn)行測試,測試結(jié)果為75%;
圖5.采樣點(diǎn)測試
l位寬容忍度測試:采用CANScope對當(dāng)前波特率下CAN卡進(jìn)行位寬容忍度測試,測試其對波特率的容忍度情況,測試結(jié)果為24kbps~26kbps,容忍度情況較好;
圖6.位寬容忍度測試
l位時間測試:用CANScope的眼圖功能對當(dāng)前波特率下CAN卡進(jìn)行位時間測試,位時間為40us,與25kbps波特率的位時間相符。
圖7.眼圖測試位時間
通過對波特率計算器計算出來的波特率寄存器設(shè)置參數(shù)進(jìn)行驗證,發(fā)現(xiàn)測試結(jié)果跟我們的預(yù)期結(jié)果一致,因此在使用特殊波特率時,我們可以借助波特率計算器來快速計算出位定時寄存器的參數(shù)值。下面我們給出一些可參考的特殊波特率的參數(shù):
特別推薦
- 協(xié)同創(chuàng)新,助汽車行業(yè)邁向電氣化、自動化和互聯(lián)化的未來
- 功率器件熱設(shè)計基礎(chǔ)(八)——利用瞬態(tài)熱阻計算二極管浪涌電流
- 用于模擬傳感器的回路供電(兩線)發(fā)射器
- 應(yīng)用于體外除顫器中的電容器
- 將“微型FPGA”集成到8位MCU,是種什么樣的體驗?
- 能源、清潔科技和可持續(xù)發(fā)展的未來
- 博瑞集信推出高增益、內(nèi)匹配、單電源供電 | S、C波段驅(qū)動放大器系列
技術(shù)文章更多>>
- 模擬信號鏈的設(shè)計注意事項
- 熱烈祝賀 Andrew MENG 晉升為 ASEAN(東盟)市場經(jīng)理!
- 邁向更綠色的未來:GaN技術(shù)的變革性影響
- 集成電阻分壓器如何提高電動汽車的電池系統(tǒng)性能
- 帶硬件同步功能的以太網(wǎng) PHY 擴(kuò)大了汽車?yán)走_(dá)的覆蓋范圍
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索