汽車CAN總線系統原理設計與應用檢視原始碼討論檢視歷史
《汽車CAN總線系統原理設計與應用》,羅峰,孫澤昌 著,出版社: 電子工業出版社。
電子工業出版社成立於1982年10月,是工業和信息化部直屬的科技與教育出版社,每年出版新書2400餘種,音像和電子出版物400餘種,期刊8種,出版物內容涵蓋了信息科技的各個專業分支以及工業技術、經濟管理、大眾生活、少兒科普[1]等領域,綜合出版能力位居全國出版行業前列[2]。
內容簡介
控制器局域網(CAN)是現代汽車網絡通信與控制系統中的重要組成部分,《汽車CAN總線系統原理、設計與應用》全面、系統地介紹了汽車CAN總線的基本原理、應用層協議制定、系統軟件和硬件設計,並且通過實例介紹了汽車CAN總線系統的設計方法。全書共10章,首先介紹了汽車網絡通信系統的特點,全面闡述了當今汽車網絡系統的結構、類型、應用及其發展趨勢,然後着重對CAN總線通信系統的原理和特點、帶CAN接口的飛思卡爾微控制器、MSCAN的特點和編程、基於XGATE的CAN通信方法、CAN總線的收發器、CAN總線應用中的Bootloader、CAN的標定協議、CAN總線系統設計流程等幾個方面進行了詳細的論述,最後給出了CAN總線系統設計、仿真和測試方法。
《汽車CAN總線系統原理、設計與應用》可作為大學相關專業高年級本科生、研究生的教材,同時也是從事汽車電子系統特別是車載網絡系統研究與開發人員的參考資料。
目錄
第1章 緒論
1.1 汽車電子技術
1.1.1 現代汽車電子技術的發展階段
1.1.2 汽車電子系統的基本構成
1.1.3 汽車電子系統網絡化
1.2 計算機網絡
1.2.1 計算機網絡概述
1.2.2 計算機網絡體系結構
1.2.3 局域網
1.3 車載網絡通信及現場總線
1.3.1 車載網絡信號的編碼方式
1.3.2 車載網絡的介質訪問控制方式
1.3.3 現場總線
1.4 現代汽車電子網絡系統
1.4.1 汽車網絡系統結構
1.4.2 汽車總線系統
第2章 CAN總線基本原理
2.1 CAN總線在汽車網絡上的應用
2.2 CAN總線的基本特點
2.3 CAN的分層結構及功能
2.4 CAN的消息幀
2.5 非破壞性按位仲裁
2.6 位填充
2.7 CRC校驗
2.8 遠程幀
2.9 出錯幀
2.10 超載幀的規格
2.11 幀間空間
2.12 CAN物理層
2.12.1 物理層的功能模型
2.12.2 物理信令(PLS)子層規範
2.12.3 物理介質附件子層規範
2.13 故障界定與總線管理
2.13.1 故障界定
2.13.2 故障界定規則
2.13.3 總線故障管理
2.14 基於時間觸發的TTCAN
2.14.1 基於CAN的時間觸發通信
2.14.2 參考時間與參考消息
2.14.3 基本循環
2.14.4 基本循環及其時間窗
2.14.5 系統矩陣
2.14.6 利用時間標誌進行消息的發送和接收
2.14.7 全局系統時間
2.14.8 TTCAN的容錯功能
2.14.9 TTCAN的應用
第3章 SAE J1939協議
3.1 網絡拓撲結構
3.2 物理層簡介
3.3 數據鏈路層
3.3.1 消息
3.3.2 協議數據單元
3.3.3 協議數據單元格式
3.3.4 消息類型
3.3.5 源地址和參數群編號的分配過程
3.3.6 傳輸協議功能
3.3.7 應注意的問題
3.4 應用層
3.4.1 通信參數定義
3.4.2 發動機通信與控制參數
3.5 故障診斷
3.5.1 診斷故障代碼定義
3.5.2 故障診斷狀態燈
3.5.3 故障模式標誌FMI
3.5.4 診斷故障代碼簡介
3.6 網絡管理
3.6.1 SAE J1939通信方式
3.6.2 電控單元(ECU)的名稱和地址
3.6.3 節點地址分配
第4章 飛思卡爾微控制器與MSCAN
4.1 飛思卡爾微控制器
4.1.1 飛思卡爾8位微控制器MC9S08DZ60
4.1.2 飛思卡爾16位微控制器MC9S12XEP100
4.2 飛思卡爾的MSCAN模塊
4.2.1 MSCAN模塊的特性
4.2.2 MSCAN模塊的結構
4.2.3 MSCAN模塊相關的寄存器介紹
4.2.4 MSCAN模塊的報文存儲模式
4.3 MSCAN模塊的功能描述
4.3.1 報文存儲
4.3.2 報文發送基礎
4.3.3 發送結構
4.3.4 接收結構
4.3.5 標識符接收濾波器
4.3.6 標識符接收濾波器示例
4.3.7 協議違反保護
4.3.8 時鐘系統
4.3.9 MSCAN的運行模式
4.3.10 MSCAN的低功耗選項
4.3.11 MSCAN的休眠模式
4.3.12 MSCAN的初始化模式
4.3.13 MSCAN的斷電模式
4.3.14 MSCAN的可編程喚醒功能
4.3.15 MSCAN的中斷
4.3.16 MSCAN的初始化過程
4.3.17 總線脫離恢復
第5章 MSCAN模塊的編程
5.1 CodeWarrior軟件的下載和安裝
5.2 CodeWarrior軟件的使用和調試方法
5.2.1 工程的建立
5.2.2 程序的編制和調試
5.3 MSCAN初始化程序的編寫
5.3.1 MSCAN初始化流程
5.3.2 MSCAN模塊初始化例程
5.3.3 完整的MSCAN模塊初始化代碼
5.3.4 MSCAN監聽與環路模式的應用
5.4 MSCAN發送程序編寫
5.4.1 MSCAN的發送流程
5.4.2 MSCAN報文發送例程
5.5 MSCAN接收程序的編寫
5.5.1 MSCAN接收流程
5.5.2 查詢方式接收CAN幀例程
5.5.3 中斷方式接收CAN幀例程
5.6 MSCAN的低功耗應用
5.6.1 低功耗模式介紹
5.6.2 進入低功耗模式
5.6.3 MSCAN喚醒
5.7 使用Processor Expert對MSCAN模塊進行編程
5.7.1 帶Processor Expert工程的建立
5.7.2 Processor Expert中代碼的編寫
5.7.3 Processor Expert幫助文檔的使用
第6章 基於XGATE模塊的CAN通信
6.1 XGATE基本特性
6.1.1 精簡指令集內核
6.1.2 XGATE指令集
6.1.3 XGATE訪問空間
6.1.4 事件驅動XGATE線程
6.1.5 互斥信號量
6.2 XGATE的中斷
6.2.1 中斷向量表
6.2.2 XGATE與CPU12X的相互中斷
6.2.3 中斷嵌套
6.3 使用及初始化XGATE
6.3.1 帶XGATE的CodeWarrior工程建立
6.3.2 XGATE的啟動及初始化過程
6.3.3 XGATE的使用例程
6.3.4 使用XGATE模塊處理CAN接收中斷
6.3.5 使用XGATE模塊實現CAN幀的發送與接收
第7章 CAN總線收發器
7.1 Freescale低速CAN收發器MC33388
7.1.1 MC33388結構說明
7.1.2 MC33388功能描述
7.1.3 MC33388典型應用
7.2 Freescale高速CAN收發器MC33989
7.2.1 MC33989結構說明
7.2.2 MC33989功能描述
7.2.3 MC33989操作模式
7.3 Philips的CAN收發器PCA82C250
7.3.1 PCA82C250特性
7.3.2 封裝及引腳
7.3.3 工作模式
7.3.4 應用舉例
第8章 CAN Bootloader的實現與應用
8.1 CAN Bootloader介紹
8.1.1 Bootloader
8.1.2 CAN Bootloader
8.2 S12系列微控制器Flash介紹
8.2.1 存儲介質
8.2.2 Flash的操作方式
8.2.3 與Flash擦寫相關的寄存器介紹
8.2.4 Flash擦除與寫入步驟
8.3 下載文件格式介紹
8.3.1 S記錄格式的結構與類型
8.3.2 S記錄格式在程序下載中的應用
8.4 S12系列微控制器通用CAN Bootloader的編寫
8.4.1 CAN Bootloader功能描述
8.4.2 Flash Bootloader注意事項
8.4.3 CAN Bootloader流程
8.4.4 CAN Bootloader程序分析
8.4.5 S12 CAN Bootloader程序清單
8.5 CAN Bootloader的使用
第9章 基於CAN總線的標定協議
9.1 ASAP標準及ASAM標準組織介紹
9.1.1 ASAP標準概述
9.1.2 ASAM標準組織及其規範
9.2 CCP協議介紹
9.2.1 CCP通信方式
9.2.2 CCP消息格式
9.2.3 DAQ模式下的數據通信
9.2.4 CCP命令代碼簡介
9.2.5 ERR代碼列表
9.2.6 預期運行性能
9.3 CCP命令
9.3.1 連接命令(CONNECT)
9.3.2 交換站標識符(EXCHANGE_ID)
9.3.3 申請密鑰(GET_SEED)
9.3.4 解除保護(UNLOCK)
9.3.5 設置MTA地址(SET_MTA)
9.3.6 數據下載(DNLOAD)
9.3.7 6字節數據下載(DNLOAD_6)
9.3.8 數據上傳(UPLOAD)
9.3.9 數據短上傳(SHORT_UP)
9.3.10 選擇標定數據頁(SELECT_CAL_PAGE)
9.3.11 獲取DAQ列表大小(GET_DAQ_SIZE)
9.3.12 設置DAQ列表指針(SET_DAQ_PTR)
9.3.13 寫入DAQ列表(WRITE_DAQ)
9.3.14 開始
9.3.15 斷開(DISCONNECT)
9.3.16 設置當前通信狀態(SET_S_STATUS)
9.3.17 獲取當前通信狀態(GET_S_STATUS)
9.3.18 建立checksum表(BUILD_CHKSUM)
9.3.19 清空內存(CLEAR_MEMORY)
9.3.20 編程(PROGRAM)
9.3.21 6字節數據編程(PROGRAM_6)
9.3.22 內存轉移(MOVE)
9.3.23 診斷服務(DIAG_SERVICE)
9.3.24 操作服務(ACTION_SERVICE)
9.3.25 連接狀態測試(TEST)
9.3.26 開始
9.3.27 獲取處於激活狀態下的標定頁(GET_ACTIVE_CAL_PAGE)
9.3.28 獲取CCP協議版本(GET_CCP_VERSION)
9.4 CCP協議應用實例
9.5 CCP協議在ECU端的實現
9.5.1 CCP驅動代碼介紹
9.5.2 ccppar.h頭文件介紹
9.5.3 ccp.c源代碼介紹
9.5.4 ECU側CCP實現程序流程及源代碼示例
第10章 汽車車身CAN總線系統設計
10.1 汽車網絡V型開發流程
10.2 車身CAN總線系統拓撲結構
10.3 網絡節點控制功能分析
10.3.1 中央控制器
10.3.2 左前門控制器
10.3.3 右前門控制器
10.3.4 左後門控制器
10.3.5 右後門控制器
10.4 車身網絡系統通信協議
10.5 車身控制系統硬件設計
10.5.1 中央控制器硬件設計
10.5.2 左前門控制器硬件設計
10.6 Mentor Graphics的汽車網絡設計與測試工具
10.6.1 Volcano 車載網絡設計與開發平台
10.6.2 VNA在汽車CAN網絡設計中的應用
10.6.3 Tellus在汽車CAN網絡測試中的應用
參考文獻
參考文獻
- ↑ 100部科普經典名著,豆瓣,2018-04-26
- ↑ 關於我們,電子工業出版社