粉粉嫩嫩的18虎白女,白丝女仆猛 喷水爽自慰,欧美嫩小槡BBBB槡BBBB槡,午夜视频在线免费观看,国产一级a毛一级a看免费视频

當前(qian)位置:首頁>新聞中心>技術分享>航芯技術分(fen)享 | 一文讀懂汽車CAN總線技術原理(下)

航芯技術分享 | 一文讀懂汽車CAN總線技術原理(下)

發布(bu)時(shi)間:2022-01-25

隨著汽車工業的不斷發展,汽車電子控制單元逐漸增多,各電控單元之間的信號交換更為復雜。而CAN總線可將汽車內部各電控單元之間連接成一個局域網絡,實現了信息的共享,大大優化了整車的布線。


接(jie)下來,我們(men)將繼續(xu)為大家分享(xiang)CAN相(xiang)關技術知識。


CAN的分層架(jia)構


它(ta)由三層(ceng)組成(cheng),即應用層(ceng)、數據鏈路層(ceng)和(he)物理(li)層(ceng)。


? 應(ying)用(yong)層(ceng):該層(ceng)與操作(zuo)系統或CAN設備的(de)應(ying)用(yong)程(cheng)序交互(hu)。


? 數據鏈路層:它在(zai)發(fa)送(song)、接收和(he)驗證數據方面將實際數據連接到協議(yi)。


? 物理(li)層:它(ta)代表實際的硬件(jian),即CAN控制器(qi)和收(shou)發(fa)器(qi)。


CAN物理層特性(xing)


CAN物(wu)理層(ceng)被(bei)分為三個部分:在(zai)CAN控制器芯片中實現的(de)物(wu)理編碼,指定收發器特(te)性的(de)物(wu)理介(jie)質(zhi)附件,物(wu)理介(jie)質(zhi)依賴子層(ceng),這是(shi)特(te)定的(de)應用,沒有標準化。



圖1. CAN總線接線圖


物(wu)理編碼子層


PCS包括比特(te)編碼和解碼、比特(te)定時(shi)。它(ta)為收發器(qi)芯片提供連接單(dan)元接口,并包含Tx和Rx引腳,位級錯(cuo)誤也(ye)通過位填充(chong)來處理。


位時序


出于時序目的(de),CAN總線上(shang)的(de)每個位都劃分成至(zhi)少4個時間份額(e),時間份額(e)邏輯上(shang)劃分成4段(duan):


1. 同步(bu)段

2. 傳播段

3. 相位緩(huan)沖段1

4. 相位緩(huan)沖段2



圖2. CAN位時序(xu)


同步段


1個(ge)時間量子長度(du),用于多個(ge)連接在總線(xian)上的單元,通(tong)過此(ci)段(duan)實現時序調整,當總線(xian)電(dian)(dian)壓電(dian)(dian)平發生變化(顯性到隱(yin)性或隱(yin)性到顯性)時,預計該段(duan)會(hui)出現位沿。


傳播(bo)段


用于補償(chang)網絡上節點之(zhi)間的物理延(yan)(yan)遲(chi),包括發送單元的輸(shu)出延(yan)(yan)遲(chi)、總線上信號的傳播延(yan)(yan)遲(chi)、接收單元的輸(shu)入延(yan)(yan)遲(chi)。


相位緩沖段


相(xiang)(xiang)位(wei)緩沖(chong)段(duan)用(yong)于補償節點間的晶振誤差,又(you)分為相(xiang)(xiang)位(wei)緩沖(chong)段(duan)1(PS1)和相(xiang)(xiang)位(wei)緩沖(chong)段(duan)2(PS2),在這(zhe)個時(shi)間段(duan)的末端進行總(zong)線狀態的采樣。兩個相(xiang)(xiang)位(wei)緩沖(chong)段(duan)PS1和PS2用(yong)于補償總(zong)線上的邊沿相(xiang)(xiang)位(wei)誤差。


采樣點


采(cai)樣點(dian)是(shi)位時(shi)(shi)(shi)間(jian)內(nei)的(de)一個(ge)時(shi)(shi)(shi)間(jian)點(dian),在該(gai)時(shi)(shi)(shi)間(jian)點(dian),讀取總線(xian)電(dian)平并進行分析。位時(shi)(shi)(shi)間(jian)內(nei)的(de)采(cai)樣點(dian)決定CAN總線(xian)電(dian)壓是(shi)隱性還是(shi)顯性。以位時(shi)(shi)(shi)間(jian)的(de)百分比表示,位置從(cong)位時(shi)(shi)(shi)間(jian)的(de)起(qi)點(dian)開始計算(suan),位于階(jie)段1和階(jie)段2之間(jian)。


處理位(wei)級(ji)錯(cuo)誤


位數填充


CAN協議遵(zun)循NRZ編(bian)碼進(jin)行(xing)傳輸。邏輯電(dian)平在位(wei)間隔之間不發生變化。CAN需要一個(ge)邏輯電(dian)平的轉換來進(jin)行(xing)再同步。因此,在5個(ge)相同的連續比特之后,將發送1個(ge)相反邏輯電(dian)平的比特。這就是所謂的東西位(wei),接收器可以識別它(ta)。


位錯誤


一(yi)個正在發(fa)送比(bi)(bi)特(te)的(de)(de)節點總是監(jian)控總線,如果發(fa)射器發(fa)送的(de)(de)比(bi)(bi)特(te)與總線上的(de)(de)比(bi)(bi)特(te)值不同,則會產(chan)生一(yi)個錯誤(wu)幀。


物理介質依(yi)賴子層


該層在(zai)CAN收發(fa)器(qi)(qi)芯(xin)片中實(shi)現,通過(guo)Tx和(he)(he)Rx引(yin)腳(jiao)從CAN控(kong)制(zhi)器(qi)(qi)獲得輸(shu)入,輸(shu)出驅動CANH和(he)(he)CANL線(xian)。收發(fa)器(qi)(qi)負責不同的(de)(de)比特率(lv)(lv),CAN總線(xian)速度(du)指的(de)(de)是(shi)CAN總線(xian)通信速率(lv)(lv)。最大的(de)(de)CAN總線(xian)通信速率(lv)(lv)是(shi)1Mbit/sec。對于特殊的(de)(de)應用,一些CAN控(kong)制(zhi)器(qi)(qi)將處理(li)更(geng)高的(de)(de)速度(du),超過(guo)1Mbit/sec。低速的(de)(de)CAN通信速率(lv)(lv)是(shi)125kbits/sec。


與介質有(you)關的(de)子(zi)層


依賴介質(zhi)的子層是高度特定的應(ying)用(yong),不同連接器(qi)的引腳分配標準化屬于這一層,各種(zhong)連接器(qi)為(wei)DB9、OBD II。


CAN總線DB9引腳布局


CAN總(zong)線通常通過連接(jie)器訪問。



圖(tu)3. CAN總線DB9引腳分配


引腳(jiao)1:無定義

引(yin)腳2:CAN_L

引腳3:CAN GND

引腳4:無定(ding)義(yi)

引腳(jiao)5:CAN_SHLD

引腳(jiao)6:GND

引腳7:CAN_H

引腳8:無定義

引腳9:CAN_V+


各種微(wei)控制器(qi)中的(de)CAN總線支(zhi)持(chi)


微控制(zhi)器應具(ju)有(you)CAN硬(ying)(ying)件(jian)和(he)軟件(jian),提(ti)供CAN驅(qu)動程(cheng)序(xu)以實現通信。Python-CAN庫也可(ke)用(yong)于(yu)為微控制(zhi)器的硬(ying)(ying)件(jian)組(zu)件(jian)提(ti)供抽象的驅(qu)動程(cheng)序(xu),并用(yong)于(yu)通過CAN網絡(luo)發(fa)送和(he)接收消息。Python CAN總線也用(yong)于(yu)測試硬(ying)(ying)件(jian)和(he) CAN 總線數據記錄(lu)。


用(yong)于Arduino的(de)CAN總線屏蔽


? CANbus Shield采(cai)用帶有SPI接口(kou)和CAN收發(fa)器的CAN總線控制器,為Arduino提供CAN總線能力(li)。


? 帶有CAN總線的Arduino有助(zhu)于從ECU獲(huo)取車速、油耗、溫(wen)度(du)等信息。


? Arduino CAN庫用于通過CAN總線發(fa)送和接(jie)收(shou)CAN消息。


樹莓派CAN總(zong)線:


樹莓(mei)派沒有(you)特定(ding)的硬件(jian),即CAN控(kong)制器和CAN收發(fa)器來支(zhi)持CAN協(xie)議。樹莓(mei)派軟件(jian)不支(zhi)持CAN總線(xian),樹莓(mei)派支(zhi)持通(tong)過 SPI 接口進行(xing) CAN 通(tong)信。


樹莓派通過SPI接口連接到板子支持的外(wai)部CAN控(kong)制(zhi)器(qi),CAN控(kong)制(zhi)器(qi)通過Rx和(he)Tx線連接到CAN收(shou)發器(qi)。


CAN控制器(qi)示例:SJA100、MCP2515

CAN收發器示(shi)例:TJA1040、MCP2551


ACM32 CAN總線(xian):

ACM32-F0/F4芯片內(nei)置1路~2路CAN控制(zhi)器,并提供對應的(de)CAN總線接口驅(qu)動庫,搭配外部的(de)CAN收發器,保證(zheng)CAN總線數據通訊的(de)安全可靠。


如何讀取(qu)CAN總線數(shu)據?


當CAN總(zong)線(xian)與(yu)(yu)Microchip CAN總(zong)線(xian)分析(xi)儀、CAN總(zong)線(xian)Wire Shark等外部(bu)工具(ju)連接時,可以(yi)通(tong)過CAN USB適配器(qi)訪問(wen)CAN總(zong)線(xian)數據,該適配器(qi)提供與(yu)(yu)計算機或PC的USB端口的即時連接。CAN USB適配器(qi)也可以(yi)通(tong)過以(yi)太網(wang)、互(hu)聯網(wang)、內聯網(wang)從任(ren)何地方進行(xing)控制。CAN總(zong)線(xian)Wireshark是一種(zhong)用(yong)于Linux系統的工具(ju),尤其以(yi)以(yi)太網(wang)網(wang)絡(luo)分析(xi)而聞(wen)名(ming),它通(tong)過使用(yong)SocketCAN來顯示CAN消(xiao)息(xi)(xi),SocketCAN是一組驅動程序和網(wang)絡(luo)堆(dui)棧,因此被稱為(wei)Linux CAN總(zong)線(xian)。CAN to USB幫助(zhu)外部(bu)工具(ju)從CAN網(wang)絡(luo)獲取消(xiao)息(xi)(xi),然(ran)后用(yong)于監控和調(diao)試接收或傳(chuan)輸信息(xi)(xi)的工具(ju)。


但是這(zhe)些消息是原(yuan)始(shi)格(ge)式的(de)(de)。因此,從這(zhe)些數據(ju)(ju)記(ji)錄器(qi)收(shou)(shou)集的(de)(de)數據(ju)(ju)使用CAN總線解碼器(qi)轉換為按比例縮(suo)放(fang)的(de)(de)工程值。從數據(ju)(ju)記(ji)錄器(qi)收(shou)(shou)集的(de)(de)數據(ju)(ju)也(ye)可(ke)以存儲在(zai)SD卡(ka)中(zhong),這(zhe)有助于控制(zhi)車輛設(she)置以提(ti)高效率。收(shou)(shou)集的(de)(de)CAN總線數據(ju)(ju)可(ke)用于車隊管理、研發、診斷等。


用萬用表(biao)測試CAN總線(xian)


測(ce)試是必要的(de)(de)(de)(de),以(yi)檢查任何(he)發生的(de)(de)(de)(de)CAN總(zong)線(xian)(xian)故(gu)障(zhang),如布線(xian)(xian)、ECU、CAN網絡中(zhong)的(de)(de)(de)(de)任何(he)一個組件的(de)(de)(de)(de)電(dian)(dian)壓供應(ying)故(gu)障(zhang)。CAN總(zong)線(xian)(xian)的(de)(de)(de)(de)故(gu)障(zhang)排除(chu),如在CAN總(zong)線(xian)(xian)線(xian)(xian)路的(de)(de)(de)(de)物(wu)理(li)端(duan)添加(jia)120歐(ou)姆(mu)的(de)(de)(de)(de)終端(duan)電(dian)(dian)阻(zu)(zu),可以(yi)診斷(duan)出問題。通(tong)(tong)過用萬用表(biao)(biao)測(ce)試,確保終端(duan)電(dian)(dian)阻(zu)(zu)是120歐(ou)姆(mu),而且電(dian)(dian)阻(zu)(zu)是合適的(de)(de)(de)(de),沒有斷(duan)裂,還(huan)可以(yi)通(tong)(tong)過將(jiang)萬用表(biao)(biao)切換到(dao)交流電(dian)(dian)壓來測(ce)試傳輸的(de)(de)(de)(de)數據。


如(ru)何判(pan)斷汽車是否(fou)有CAN總線(xian)?


配備CAN總(zong)(zong)線(xian)的(de)車輛包含CAN總(zong)(zong)線(xian)LED和CAN-BUS HID 套件。CAN總(zong)(zong)線(xian)LED與(yu)汽(qi)車高級系(xi)統(tong)通(tong)信(xin),當此LED關閉(bi)時,車輛會發出警告(gao)。CAN BUS HID KIT充(chong)當DC到AC轉換(huan)器,并(bing)(bing)有助(zhu)于在最初使(shi)用高壓電流打(da)開(kai)燈。一旦燈啟(qi)動,它需要(yao)較低(di)的(de)電壓電流。但是當HID使(shi)用低(di)功率時,CAN總(zong)(zong)線(xian)系(xi)統(tong)會假(jia)定燈已關閉(bi)并(bing)(bing)發出警告(gao)。為了避(bi)免這種情況,使(shi)用了HID轉換(huan)套件,它與(yu)CAN總(zong)(zong)線(xian)系(xi)統(tong)通(tong)信(xin)以告(gao)知有一個工作燈泡。這些警告(gao)告(gao)訴我們汽(qi)車配備了CAN總(zong)(zong)線(xian)。


CAN總線黑客攻擊(ji)


CAN總線(xian)黑(hei)客攻擊是對消費者的(de)威脅(xie)。CAN總線(xian)車(che)輛(liang)采用了許(xu)多無線(xian)技術,例如藍牙(ya),用于接(jie)聽電話或播放(fang)音(yin)樂。當(dang)車(che)載系統接(jie)入車(che)內的(de)CAN總線(xian)并具(ju)備 Wi-Fi連接(jie)能(neng)力時,黑(hei)客很(hen)容易(yi)獲得(de)CAN總線(xian)接(jie)入并能(neng)夠(gou)控制汽車(che)。Wi-Fi熱點在汽車(che)中很(hen)流行,這使得(de)知道汽車(che)IP地址的(de)人可以跟蹤汽車(che)。這導致汽車(che)制造商對CAN總線(xian)網絡上的(de)傳(chuan)輸數據進(jin)行保護。


*內容來源自(zi)PathPartner Technology,版權(quan)歸(gui)原作者所有,如涉(she)及版權(quan)問(wen)題請聯系溝通


如需(xu)銷售咨詢(xun),請聯系: