利用高度集成的8位MCU簡(jiǎn)化CAN汽車(chē)應用
控制器局域網(wǎng)(CAN)協(xié)議是在20世紀80年代中期專(zhuān)為汽車(chē)行業(yè)設計的一種規范,可在日益增長(cháng)的互聯(lián)應用中減少數據傳輸的布線(xiàn)復雜性(重量、數量和成本)。
本文引用地址:http://dyxdggzs.com/article/201912/408242.htmCAN的優(yōu)勢也被其他市場(chǎng)(包括工廠(chǎng)自動(dòng)化和醫療應用)接受和吸納,這使其應用范圍更加廣泛,全球每年交付的CAN節點(diǎn)超過(guò)10億個(gè)。同樣,每年交付的8位單片機(MCU)也超過(guò)10億個(gè)。如今,雖然這些統計數據有部分重疊,但今后仍會(huì )有大幅增長(cháng)。
CAN繼續滿(mǎn)足汽車(chē)制造商的需求
傳統的CAN通信以事件為基礎,允許單片機和專(zhuān)用集成電路(ASICS)在應用中直接相互通信,無(wú)需主機。CAN經(jīng)過(guò)半導體公司集成后極大降低了成本,并且能夠與更多汽車(chē)系統兼容。自2000年初以來(lái),8位MCU也引入了CAN協(xié)議。最近,2015年最先推出的8位MCU設計方案使用獨立于內核的外設(CIP),全新的8位MCU系列能夠解決CAN應用中的許多系統問(wèn)題。
除了成本效益高之外,CAN的成功還可以歸功于:
§ 穩健性
§ 可靠的數據傳輸
§ 易于實(shí)現
毫無(wú)疑問(wèn),除了成本效益極高之外,8位MCU還具有上述優(yōu)勢。因此,8位MCU和CAN是用于滿(mǎn)足汽車(chē)網(wǎng)絡(luò )需求的完美組合。
多年來(lái)的實(shí)踐足以證明CAN能夠滿(mǎn)足各種控制系統的需求。隨著(zhù)汽車(chē)網(wǎng)絡(luò )需要的各種屬性不斷增加,包括時(shí)間觸發(fā)、容錯和單線(xiàn)實(shí)現以及具有靈活數據傳輸速率的CAN(CAN FD),CAN規范也得到擴展。表1顯示的是自30多年前首次推出以來(lái)CAN發(fā)生的諸多變化。
為了將傳感器和執行器聯(lián)網(wǎng)以提高系統舒適度,汽車(chē)工程師使用局域互連網(wǎng)絡(luò )(LIN)協(xié)議來(lái)降低成本。但是,LIN是單線(xiàn)主從式網(wǎng)絡(luò ),需要對使用CAN的硬件和軟件進(jìn)行更改。使用CAN的最新汽車(chē)應用包括門(mén)禁控制、電池充電/電池管理和診斷設備。為了實(shí)現全部的車(chē)輛要求,尤其是需要從另一個(gè)CAN控制系統訪(fǎng)問(wèn)數據的車(chē)輛要求,需要使用8位MCU/CAN。圖1顯示的是將8位MCU/CAN節點(diǎn)輕松添加到現有CAN總線(xiàn)的示例。
圖1.不同的CAN實(shí)現可以共存,這增加了CAN總線(xiàn)的靈活性
使用支持CAN的8位MCU滿(mǎn)足低成本網(wǎng)絡(luò )需求
連接到CAN總線(xiàn)是系統設計人員需要實(shí)現的最低功能,通過(guò)增加專(zhuān)門(mén)用于滿(mǎn)足其他系統要求的外設,簡(jiǎn)化設計人員的任務(wù)。這些系統任務(wù)包括感測一個(gè)或兩個(gè)用于控制目的的參數、移動(dòng)電機或激活電磁線(xiàn)圈或者提供其他功能。
使用CIP方法可以降低軟件的復雜程度,并以較低的時(shí)鐘速度提供更快的響應時(shí)間,同時(shí)降低功耗。Microchip PIC18 K83系列中豐富的CIP系統類(lèi)別包括:
· 智能模擬(包括傳感器接口)
· 波形控制
· 時(shí)序和測量
· 邏輯和數學(xué)
· 安全和監視
· 通信
· 低功耗和系統靈活性
在這些類(lèi)別中,具體外設包括:
· 帶有存儲器掃描的循環(huán)冗余校驗(CRC),用于確保非易失性存儲器的完整性
· 直接存儲器訪(fǎng)問(wèn)(DMA),用于在沒(méi)有CPU參與的情況下進(jìn)行存儲器和外設之間的數據傳輸
· 窗口看門(mén)狗定時(shí)器(WWDT),用于觸發(fā)系統復位
· 帶計算功能的12位模數轉換器(ADC2),可自動(dòng)進(jìn)行模擬信號分析,從而實(shí)現實(shí)時(shí)系統響應
· 互補波形發(fā)生器(CWG),用于使能電機控制的高效同步開(kāi)關(guān)
除了使用CAN 2.0B外,集成CAN控制器還能夠完全兼容以前版本的CAN模塊(CAN 1.2和CAN 2.0A)。該產(chǎn)品的功能包括存儲器訪(fǎng)問(wèn)分區(MAP),用于在數據保護和自舉程序應用中為設計人員提供支持。器件信息區(DIA),用于為工廠(chǎng)編程的器件ID和外設校準值提供專(zhuān)用存儲空間。
由于CAN節點(diǎn)的主要目標是通信,因此8位MCU改進(jìn)了串行通信,包括支持異步通信和LIN協(xié)議的UART以及更高速的獨立I2C和SPI串行通信接口。表2顯示了15個(gè)CIP以及它們滿(mǎn)足具體系統需求的方式。
表2. PIC18 K83系列中獨立于內核的外設可滿(mǎn)足多種系統需求
過(guò)去并沒(méi)有考慮過(guò)在8位MCU中實(shí)施這些片上結構,而正是由于這些結構,現在的8位MCU的性能與許多設計人員的期望完全不同,提供的功能遠遠超過(guò)十年前設計的MCU。
8位MCU的編程方式非常簡(jiǎn)單,與CAN和CIP結合使用時(shí)甚至更加容易。當這些8位MCU能夠提供足夠的處理能力時(shí),特別是針對遠程節點(diǎn)的處理能力,便能夠替代更昂貴且更難編程的16位MCU。而CIP可以提供更多處理能力,實(shí)現更多8位MCU選項。
可靈活配置的片上硬件模塊能夠更高效更確定地處理重復嵌入。事實(shí)上,由于CAN的確定性,如果MCU陷入循環(huán),使用CIP的CAN仍然可以在內核之外繼續運行。
借助最新的8位MCU/CAN + CIP和LIN,網(wǎng)絡(luò )設計人員現在可以為CAN和LIN通信提供更多靈活性和選擇。實(shí)際上,一些典型的8位MCU LIN應用現在是潛在的CAN應用。例如,如果模塊需要了解網(wǎng)絡(luò )上的其他數據(如車(chē)輛速度),CAN可能是更好的選擇,或者至少是LIN的備選方案。這對于擋風(fēng)玻璃雨刮非常有用,可以根據車(chē)輛的速度改變雨刷速度,而無(wú)需CAN到LIN的網(wǎng)關(guān)。另外,如圖2所示,使用系統級CIP可以少用一兩個(gè)額外的ASIC。
多年來(lái),汽車(chē)中一直使用相同的PWM和互補波形發(fā)生器CIP生成相當復雜的多色LED氣氛照明。由于MCU沒(méi)有應用CAN功能,這些驅動(dòng)程序會(huì )連接到LIN總線(xiàn)。將該功能與支持CAN功能的高性?xún)r(jià)比8位MCU相結合,可為設計提供更高的靈活性和簡(jiǎn)化的備用方法。
雖然市面上大多數8位MCU都嚴重依賴(lài)內核來(lái)處理外設功能,但CIP可實(shí)現其他系統設計可能性,不會(huì )對CPU造成明顯負擔,這包括:各種傳感器的高精度接口、高功率LED驅動(dòng)器和/或相當復雜的電機控制水平。
可以使用各種開(kāi)發(fā)工具確定這些和其他可能性中的哪一種適合特定網(wǎng)絡(luò )。例如,MPLAB?代碼配置器(MCC)是一款免費的軟件插件,可提供圖形界面來(lái)配置特定于應用的外設和功能。借助該工具,系統設計工程師在完成特定任務(wù)時(shí)可以輕松配置基于硬件的外設,而不必編寫(xiě)和驗證整個(gè)軟件程序。
樹(shù)立自信的態(tài)度
對于汽車(chē)和工業(yè)應用中的總線(xiàn)架構,系統設計人員肯定有多種選擇。作為一種廣受認可的總線(xiàn),當需要為現有網(wǎng)絡(luò )增加檢測和/或控制功能時(shí),具有附加功能來(lái)滿(mǎn)足不同系統需求的MCU使CAN成為一種出色的選擇。憑借其獨立于內核的外設,8位MCU/CAN系列可將CAN擴展到網(wǎng)絡(luò )上更具成本效益的節點(diǎn)中。
新型8位MCU/CAN + CIP為新興汽車(chē)網(wǎng)絡(luò )應用提供了靈活、經(jīng)濟高效、簡(jiǎn)單而可靠的數據傳輸以及訪(fǎng)問(wèn)控制、電池充電/電池管理和診斷設備所需的更高性能和系統支持。
評論