991 likes | 1.7k Views
CAN BUS 發展及基本 應用. 報告 者 ︰ 吳秉昆 班級 ︰ 車輛三乙 學 號 ︰ 4A015080. 摘要. 本報告藉由 CANBUS 為題材,了解控制器區域網路 (Controller Area Network) 的由來以及基本介面操作 。. 目錄. 摘要 .. .................. I 目錄. .... ...... .. .... .. Ⅱ 第一章 汽車通訊網絡概論 1.1 汽車網路化由來及發展.. ... ....1 1.2 匯流排規格與相關技術. .. ..... .5 第二章 CAN 匯流排協定
E N D
CAN BUS發展及基本應用 報告者︰吳秉昆 班級︰車輛三乙 學號︰4A015080
摘要 本報告藉由CANBUS為題材,了解控制器區域網路(Controller Area Network)的由來以及基本介面操作。 I
目錄 摘要....................I 目錄...................Ⅱ 第一章 汽車通訊網絡概論 1.1 汽車網路化由來及發展.........1 1.2 匯流排規格與相關技術.........5 第二章 CAN匯流排協定 2.1 前言................13 2.2 CAN基本特性...........14 2.3 錯誤狀態的種類...........24 II
目錄 第三章 T89C51CC01介紹 3.1 基本特性與架構 ............26 第四章軟體開發工具組 4.1 Keil C µVision4概述與基本操作.....34 4.2 Atmel FLIP燒錄應用程式概述與基本操作.47 參考文獻.. . .............57 II
第一章 汽車通訊網絡概論 1.1 汽車網路化由來及發展 當車用電器設備越來越多,汽車上的電子裝置成本將占汽車整體成本的25%以上,汽車已由單純機械產品發展成高級的機電一體化產品,這樣必然會造成龐大的佈線系統,相對的故障率等問題也隨之增加 。 1
第一章 汽車通訊網絡概論 1.1 汽車網路化由來及發展 依傳統高級車佈線方法來看,其導線長度可達2000公尺,ECU節點1500個,據統計,每10年增長1倍,纜線的膨脹會使得汽車有限空間的矛盾發展,為了解決此種問題,汽車通訊網絡就此開始發展。 2
第一章 汽車通訊網絡概論 1.1 汽車網路化由來及發展 圖1 傳統的中央控制的節點通訊方式示意圖 (參考資料:許永和,第4C-車載通訊電子網路之CAN/LIN匯流排設計與應用(初版)。台北市:儒林,2010.12。) 3
第一章 汽車通訊網絡概論 1.1 汽車網路化由來及發展 圖2 分散式控制的CAN匯流排通訊方式示意圖 (參考資料:許永和,第4C-車載通訊電子網路之CAN/LIN匯流排設計與應用(初版)。台北市:儒林,2010.12。) 4
第一章 汽車通訊網絡概論 1.2 匯流排規格與相關技術 20世紀90年代中期,美國汽車工程協會(SAE)下屬的汽車網路委員會,根據SAE J2057標準,將汽車資料傳輸網路的設計與生產應用,按網路的傳輸速率將車用匯流排劃分為A、B與C等三類。 5
第一章 汽車通訊網絡概論 1.2 匯流排規格與相關技術 20世紀90年代中期,美國汽車工程協會(SAE)下屬的汽車網路委員會,根據SAE J2057標準,將汽車資料傳輸網路的設計與生產應用,按網路的傳輸速率將車用匯流排劃分為A、B與C等三類。 6
第一章 汽車通訊網絡概論 1.2 匯流排規格與相關技術 A類︰串流協定標準包括TTP/A(Time Triggered Protocol/A)和LIN(Local Interconnect Net-work),其傳輸速率較低。 B類︰串列協定標準主要包括J1850、VAN及低速CAN。 C類︰串列協定標準主要包括TTP/C、FlexRay和高速CAN(ISO11898-2)等。大多用於與汽車安全相關以及即時性要求比較高的應用上。 7
第一章 汽車通訊網絡概論 1.2 匯流排規格與相關技術 圖3 依車輛網路委員資料傳輸劃分圖 8
第一章 汽車通訊網絡概論 1-2 匯流排規格與相關技術 目前匯流排的技術以速度及支援元件數目與單價位作為區分,主要包括︰LIN、CAN、X-by-Wire、FlexRay與MOST等。 9
第一章 汽車通訊網絡概論 1-2 匯流排規格與相關技術 LIN(Local Interconnect Net-work):LIN是一種低成本的串列通訊網路協定,採單主機ECU節點與多組從主機ECU節點模式 。典型的LIN網路節點數可達12個,主從ECU節點之間只需一條12V的信號線,最高傳輸速率可達20Kbps。透過CAN/LIN閘道器可與CAN進行資料之交換。 10
第一章 汽車通訊網絡概論 1.2 匯流排規格與相關技術 CAN(Controller Area Network)︰目前全球使用最廣泛的一種車用網路,CAN匯流排是一種多主方式的串列通訊匯流排,最高速率可達1Mbps,有很高的抗干擾能力。由CAN控制器、收發器和一對雙絞線構成。具有檢出錯誤使其出錯的ECU退出匯流排及優先順序控制的能力,以滿足及時通訊。 11
第一章 汽車通訊網絡概論 1.2 匯流排規格與相關技術 FlexRay:採用冗餘備份的方法,分別由兩條匯流排與兩個FlexRay ECU構成一完整網路,正常情況下以雙通道作為資料傳遞,倘若一通道故障,則由另一備份通道承擔進行資料傳遞。 12
第二章 CAN匯流排協定 2.1 前言 由於汽車具有強大的產業背景與需求,為滿足車內各系統的即時性要求,各系統間的資料共享是必須的,但因各電控單元對即時性的要求不同(如更新速率和控制週期等),而基於優先競爭的模式,其本身較需具有較高的通信速率,CAN匯流排正是為滿足這些要求而產生的。 13
第二章 CAN匯流排協定 2.2CAN基本特性 可分為8個項目︰ 多主控制、 訊息的傳送、 系統的相容性、 通訊速度、 遠端資料請求、 錯誤檢測、通知及恢復功能、 隔離故障、 連接要求。 14
第二章 CAN匯流排協定 2.2CAN基本特性 多主控制:在匯流排閒置時,所有單元都可開始傳送訊息(多主控制)。最先的匯流排可獲得控制權,而相關規範採用載波檢測多重存取/碰撞避免(CSMA/CA Carrier Sense Multiple Access/Collision Avoidance) 當多個ECU單元同時開始傳送時,擁有高優先傳送順序的辨識碼(Identifier) (以下簡稱ID)訊息的ECU單元可獲得傳送權。 15
第二章 CAN匯流排協定 2.2CAN基本特性 訊息的傳送:在CAN協定中,所有訊息都已固定格式傳送,當同時有兩個以上同時傳送時,依CSMA/CA方式仲裁優先權,ID越小,優先權越高。 16
第二章 CAN匯流排協定 2-2CAN基本特性 系統的相容性:與匯流排連接的ECU是無"位址"的資訊。因此,在增加ECU時,原先以連接的ECU單元的軟硬體及應用層都無須改變。 17
第二章 CAN匯流排協定 2.2CAN基本特性 通訊速度:根據整體實際網路的規模,可設定適合的通訊速度。在同一網路中,所有ECU單元必須設定為統一通訊速度,此時,即便只有一ECU通訊速度不同,此ECU單元會輸出錯誤訊號,使整體通訊過程遭到妨礙。但不同網路間可有不同通訊速度。若要切換通訊速度,可透過閘道器或雙通道CAN來實現。 18
第二章 CAN匯流排協定 2.2CAN基本特性 遠端資料請求:可透過傳送"遠端訊框"來請求其他單元傳送資料。 19
第二章 CAN匯流排協定 2.2CAN基本特性 錯誤檢測、通知及恢復功能:所有ECU單元都可以檢測錯誤(錯誤檢測功能)。其中,被檢測出錯誤的ECU單元會立即通知其他所有ECU單元(錯誤通知功能)。而正在傳送訊息的ECU單元一旦被檢測出錯誤,會強制結束目前的傳送。強制結束的ECU單元會不斷反覆地重新傳送此訊息,直到成功傳送為止(錯誤恢復功能)。 20
第二章 CAN匯流排協定 2.2CAN基本特性 隔離故障:CAN匯流排可判斷出錯誤的類型為暫時性的資料錯誤(如外部雜訊),還是持續的資料錯誤(如單元故障、驅動器故障與斷線等)。透過此功能,當匯流排上持續發生錯誤時,可將引起此錯誤的ECU單元從匯流排上隔離出去。 21
第二章 CAN匯流排協定 2.2CAN基本特性 連接要求:CAN匯流排是可同時連接多個ECU單元的匯流排。理論上,可連接的單元總數是無限制的,但實際上,會因受到時間延遲與電器負載而限制。 22
第二章 CAN匯流排協定 2.3 錯誤狀態的種類 主動錯誤狀態:此狀態可以正常參加匯流排通訊,處於主動錯誤狀態的ECU單元檢測出錯誤時,輸出主動錯誤旗標。 23
第二章 CAN匯流排協定 2.3 錯誤狀態的種類 被動錯誤狀態:此狀態易引起錯誤的狀態。處於被動錯誤狀態的ECU單元雖能參加匯流排通訊,但為了不妨礙其他ECU單元通訊,接收時不能積極的傳送錯誤通知。此外,在錯誤恢復後,無法馬上開始通訊,會在下次開始傳送期間插入"延遲傳送"(8-bit的隱性位元)。 24
第二章 CAN匯流排協定 2.3 錯誤狀態的種類 匯流排關閉狀態:此狀態不能參加匯流排通訊。此時,資訊的接收與傳送均會被禁止。 25
第三章 T89C51CC01介紹 3.1 基本架構與特性 T89C51CC01是Atmel公司針對CAN協定所整合的一顆微處理機,其基本特性如下: 8051核心架構 256 Bytes RAM 1K Bytes XRAM 32 Bytes 快閃記憶體 資料的保存期限,在85℃下,可保存10年 26
第三章 T89C51CC01介紹 3.1 基本架構與特性 2 Bytes 快閃Bootloader 3個16-bit定時/計時器 14個中斷源,4個中段優先級 全雙工傳輸 5個周邊埠:32+2條的數位I/O引線 5個16-bit PCA通道 8-bit 脈波寬度調變(PWM)與高速輸出 27
第三章 T89C51CC01介紹 3.1 基本架構與特性 雙資料指標器 21-bit 看門狗計時器 8個10-bit ADC 多通道輸入 CAN控制器 28
第三章 T89C51CC01介紹 3.1 基本架構與特性 圖4 T89C51CC01硬體架構示意圖 29
第三章 T89C51CC01介紹 3.1 基本架構與特性 PLCC44重要接腳說明: VSS:電路接地 VCC:電壓提供 XTAL1:輸入震盪器 XTAL2:輸出震盪器 埠0:8-bit I/O 埠 埠1:8-bit I/O 埠並支援ADC 30
第三章 T89C51CC01介紹 3.1 基本架構與特性 埠2:8-bit I/O 埠 埠3:8-bit I/O 埠和一些特殊功能(P3.0和P3.1可作為信號輸入和輸出) 埠4:2-bit I/O 埠,CAN應用的輸入與輸出 VAREF:ADC輸入的參考電壓 VAGND:ADC的接地 Reset:重置裝置 ALE:負責將存取到外部記憶體的低位址閂鎖住 31
第三章 T89C51CC01介紹 3.1 基本架構與特性 PSEN:使外部程式記憶體的匯流排致能 EA:接高電位時,CPU讀取內部記憶體;;接低電位時, CPU讀取外部程式記憶體儲存位址 32
第三章 T89C51CC01介紹 3.1 基本架構與特性 圖5 T89C51CC01 PLCC-44pin 包裝接腳示意圖 33
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 KEIL µVISION是眾多單片機應用開發軟件中最優秀的軟件之一,它支持眾多不同公司的MCS51架構的芯片,甚至ARM,它集編輯,編譯,仿真等於一體,它的界面和常用的微軟VC++的界面相似,界面友好,易學易用,在調試程序,軟件仿真方面也有很強大的功能。 34
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖6 新建立"MyKuV"資料夾 35
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖7Keil C µVision4啟動圖示與頁面 36
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖8 新建專案選單位置操作示意圖 37
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖9 新建專案存檔位置操作示意圖 38
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖10 T89C51CC01選項 39
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖11 新建文本操作示意圖 40
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖12 C語言編譯操作示意圖 41
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖13 儲存文本操作示意圖 42
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖14 加入專案操作示意圖 43
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖15設置晶振操作示意圖 44
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖16 設置自行產生HEX文件操作示意圖 45
第四章 軟體開發工具組 4.1 Keil C µVision4概述與基本操作 圖16 編譯產生HEX文件操作示意圖 46