亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MCP2517FD的CANFD通信實(shí)現(xiàn)

        2019-09-10 07:22:44郭創(chuàng)建王琳煜
        現(xiàn)代信息科技 2019年16期

        郭創(chuàng)建 王琳煜

        摘 ?要:隨著自動(dòng)駕駛、車聯(lián)網(wǎng)等汽車領(lǐng)域技術(shù)的發(fā)展,傳統(tǒng)CAN總線已逐漸無(wú)法滿足高帶寬、高傳輸速率的要求,而CAN FD的到來(lái),為CAN總線帶來(lái)了帶寬及速率的升級(jí)。雖然CAN FD為CAN總線帶來(lái)了升級(jí),但目前CAN FD仍未普及,因此市場(chǎng)上帶CAN FD控制器的微控制器仍為數(shù)不多,或微控制器所帶的CAN FD控制器數(shù)不足以支撐應(yīng)用需求,為此我們采用MCP2517FD——一款SPI轉(zhuǎn)CAN FD控制器模塊,來(lái)擴(kuò)展CAN FD控制器。微控制器僅需支持SPI控制器,即可擴(kuò)展CAN FD,從而實(shí)現(xiàn)CAN FD通信。本文從探究CAN總線技術(shù)出發(fā),比較了CAN與CAN FD的差異。同時(shí),對(duì)MCP2517FD控制器的相關(guān)特性進(jìn)行說(shuō)明,闡述了基于MCP2517FD的CAN FD通信實(shí)現(xiàn),驗(yàn)證了MCP2517FD模塊CAN FD報(bào)文收發(fā)的性能。

        關(guān)鍵詞:有線通信技術(shù);MCP2517FD;CAN FD通信;CAN總線

        中圖分類號(hào):TN925 ? ? 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2019)16-0067-03

        Abstract:With the development of auto fields such as automatic driving and internet of vehicles,the traditional CAN bus has been unable to meet the requirements of high bandwidth and high transmission rate. However,the arrival of CAN FD has brought the upgrade of bandwidth and rate for CAN bus. Although CAN FD brings an upgrade to CAN bus,CAN FD is still not popular at present. There are still a few microcontrollers with CAN FD controller in the market,or the number of CAN FD controllers with microcontroller is not enough to support the application demand. Therefore,we adopt MCP2517FD——an SPI to CAN FD controller module to expand CAN FD controller. The microcontroller only needs to support SPI controller to extend CAN FD and realize CAN FD communication. Based on the research of CAN bus technology,this paper compares the differences between CAN and CAN FD. At the same time,the related characteristics of MCP2517FD controller are explained,the CAN FD communication implementation based on MCP2517FD is expounded,and the performance of MCP2517FD module CAN FD message send-receive is verified.

        Keywords:wired communication technology;MCP2517FD;CAN FD communication;CAN bus

        0 ?引 ?言

        當(dāng)今社會(huì),汽車已經(jīng)成為人們生活中不可或缺的一部分。人們希望汽車不僅僅是一種代步工具,更希望汽車智能化,為生活帶來(lái)更多的便利,因此自動(dòng)駕駛、車聯(lián)網(wǎng)等汽車智能化技術(shù)得到了快速發(fā)展。而隨著汽車智能化技術(shù)的發(fā)展,越來(lái)越多的功能集成到汽車上,對(duì)汽車通訊上的數(shù)據(jù)吞吐量和數(shù)據(jù)傳輸速率要求越來(lái)越高,傳統(tǒng)的CAN總線應(yīng)對(duì)這些新技術(shù)顯得越來(lái)越力不從心。因此,CAN FD應(yīng)運(yùn)而生。CAN FD的出現(xiàn),為傳統(tǒng)的CAN總線帶來(lái)了數(shù)據(jù)吞吐量與傳輸速率的提升,CAN FD傳輸數(shù)據(jù)量由傳統(tǒng)CAN的8字節(jié)升級(jí)到了64字節(jié),傳輸速率由傳統(tǒng)CAN的最高1Mbps升級(jí)到了最高15Mbps。雖然CAN FD為CAN總線帶來(lái)了升級(jí),但目前市面上帶有CAN FD控制器的MCU(微控制單元)并不多,或MCU所帶CAN FD控制器數(shù)不足以支撐用戶的應(yīng)用需求,為此我們采用外置的SPI轉(zhuǎn)CAN FD模塊——MCP2517FD,來(lái)實(shí)現(xiàn)CAN FD控制器的擴(kuò)展。目前,絕大部分MCU都帶有SPI控制器,通過(guò)MCU的SPI總線來(lái)與MCP2517FD通訊,可快速實(shí)現(xiàn)CAN FD控制器的擴(kuò)展,從而實(shí)現(xiàn)CAN FD通信。

        1 ?CAN總線技術(shù)

        1.1 ?CAN總線概述

        CAN(Controller Area Network)總線是由Bosch公司發(fā)明的一種基于消息廣播模式的串行通信總線,它起初用于實(shí)現(xiàn)汽車內(nèi)ECU(電子控制單元)之間可靠的通信,后因其簡(jiǎn)單、實(shí)用、可靠等特點(diǎn),而被廣泛應(yīng)用于工業(yè)自動(dòng)化、船舶、醫(yī)療等其他領(lǐng)域。CAN總線是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一,目前已經(jīng)成為汽車計(jì)算機(jī)控制系統(tǒng)和嵌入式工業(yè)控制局域網(wǎng)的標(biāo)準(zhǔn)總線。

        CAN總線采用串行通信方式,即同一時(shí)刻只傳送一位。其通常使用兩根電纜(CANH和CANL)傳輸信號(hào),使用差分傳輸方式,具有較強(qiáng)的抗干擾能力。每一位有兩種可能的電平狀態(tài):當(dāng)其中的CANH(2.5V)與CANL(2.5V)壓差為0V時(shí),為隱性電平;當(dāng)CANH(3.5V)與CANL(1.5V)壓差為2V時(shí)為顯性電平。

        CAN總線傳輸?shù)牟ㄌ芈首罡呖蛇_(dá)1Mbps,在該波特率下最高可傳輸40m。

        1.2 ?CAN報(bào)文格式

        CAN報(bào)文支持兩種報(bào)文格式:標(biāo)準(zhǔn)幀(CAN2.0A定義)和擴(kuò)展幀(CAN2.0B定義)。其主要區(qū)別在于幀ID的位數(shù)不同,標(biāo)準(zhǔn)幀ID為11位,擴(kuò)展幀ID為29位。以上幀格式被稱為數(shù)據(jù)幀,而除了數(shù)據(jù)幀之外,CAN報(bào)文還定義了遠(yuǎn)程幀。遠(yuǎn)程幀不包含數(shù)據(jù),主要用于遙控通知目標(biāo)節(jié)點(diǎn)。

        一幀CAN報(bào)文分為:幀起始、仲裁段、控制段、數(shù)據(jù)段、CRC(循環(huán)冗余校驗(yàn))段、ACK段(應(yīng)答段)、幀結(jié)束。

        幀起始(SOF)由一個(gè)顯性位組成,只能在總線空閑時(shí)發(fā)送。

        仲裁段主要包含幀ID,通過(guò)幀ID來(lái)解決報(bào)文仲裁。

        控制段由6個(gè)位構(gòu)成,標(biāo)準(zhǔn)幀和擴(kuò)展幀的兩位保留位含義稍有不同,但都包含四位的數(shù)據(jù)長(zhǎng)度碼(DLC),這個(gè)值決定了數(shù)據(jù)段的字節(jié)長(zhǎng)度。遠(yuǎn)程幀中,由于不包含數(shù)據(jù)段,則標(biāo)明請(qǐng)求發(fā)送的字節(jié)數(shù)。

        數(shù)據(jù)段可包含0~8個(gè)字節(jié)數(shù)據(jù),從最高位(MSB)開(kāi)始傳送。

        CRC段包含15位CRC序列和1位CRC界定符,用于對(duì)當(dāng)前報(bào)文校驗(yàn),檢測(cè)當(dāng)前報(bào)文傳輸是否正確。

        ACK段包含1位的應(yīng)答間隙和1位的應(yīng)答界定符。發(fā)送器在發(fā)送CRC界定符后,會(huì)再發(fā)送2個(gè)隱性位,分別是應(yīng)答間隙、應(yīng)答界定符。當(dāng)接收到正確報(bào)文,總線上的接收器都會(huì)在應(yīng)答間隙,將隱性電平修改為顯性電平,做出應(yīng)答。

        幀結(jié)束(EOF)由7個(gè)隱性位組成。

        1.3 ?CAN FD協(xié)議升級(jí)

        CAN FD繼承了CAN總線的主要特性,提高了CAN總線的網(wǎng)絡(luò)通信帶寬,改善了錯(cuò)誤幀漏檢率,同時(shí)可以保持網(wǎng)絡(luò)系統(tǒng)中的物理層不變。其相對(duì)于傳統(tǒng)CAN總線的更新如下。

        1.3.1 ?傳輸速率的變化

        CAN FD的速率包含兩個(gè)段的速率:仲裁段和數(shù)據(jù)段。其中仲裁段包括仲裁域和ACK域等部分,該段沿用CAN 2.0的規(guī)范,最高速率為1Mbit/s;而數(shù)據(jù)段包含數(shù)據(jù)與CRC段,其波特率是可變速的,即可與仲裁段不一致,但必須高于或等于仲裁段,數(shù)據(jù)段波特率最高可達(dá)15Mbit/s(最高波特率由控制器決定)。

        1.3.2 ?傳輸報(bào)文長(zhǎng)度的變化

        CAN FD對(duì)數(shù)據(jù)場(chǎng)的長(zhǎng)度作了很大的補(bǔ)充,數(shù)據(jù)長(zhǎng)度碼(DLC)最大可以傳輸64字節(jié)有效數(shù)據(jù),這意味著CAN FD具有更高的有效傳輸負(fù)載。

        1.3.3 ?報(bào)文格式的變化

        CAN FD數(shù)據(jù)幀在控制場(chǎng)中新添加了EDL位、BRS位、ESI位。

        EDL位用于判斷報(bào)文是否為CAN FD報(bào)文,該位為原CAN幀中的保留位,隱性表示CAN FD報(bào)文,顯性表示CAN報(bào)文。

        BRS位表示位速率轉(zhuǎn)換,表示數(shù)據(jù)段波特率是否與標(biāo)稱段不一致。

        ESI位表示節(jié)點(diǎn)當(dāng)前錯(cuò)誤狀態(tài),可判斷當(dāng)前發(fā)送該報(bào)文的節(jié)點(diǎn)為主動(dòng)錯(cuò)誤或被動(dòng)錯(cuò)誤狀態(tài)。

        1.3.4 ?CRC段的變化

        CAN FD對(duì)CRC段做了改善,CRC以含填充位的位流進(jìn)行計(jì)算,改善了錯(cuò)誤幀漏檢率。

        2 ?MCP2517FD通信實(shí)現(xiàn)

        2.1 ?MCP2517FD模塊概述

        MCP2517FD是Mircochip(微芯)公司推出的一款低成本、小尺寸的外部CAN FD控制器。其可通過(guò)SPI接口輕松地添加到微控制器中,以解決微控制器中缺少CAN FD外設(shè)或沒(méi)有足夠CAN FD控制器的問(wèn)題。其有如下特點(diǎn):

        (1)符合ISO 11898-1:2015標(biāo)準(zhǔn);

        (2)支持CAN2.0B和CAN FD;

        (3)SPI時(shí)鐘速度高達(dá)20MHz;

        (4)31個(gè)FIFO可配置為發(fā)送或接收;

        (5)支持驗(yàn)收濾波,最高支持32條濾波;

        (6)仲裁域波特率高達(dá)1Mbps,數(shù)據(jù)波特率高達(dá)8Mbps。

        2.2 ?硬件設(shè)計(jì)

        電路主要分為微控制器(RT1052)、MCP2517FD、CAN FD收發(fā)器。其硬件設(shè)計(jì)如圖1所示。

        微控制器(MCU)部分采用NXP公司RT1052(Cortex- M7),其主頻可高達(dá)528MHz。

        MCU與MCP2517FD通過(guò)SPI連接,用于數(shù)據(jù)通訊。此外,MCU提供一個(gè)GPIO與MCP2517FD的INT管腳連接,用于觸發(fā)中斷,以通知MCU讀取接收?qǐng)?bào)文、報(bào)文發(fā)送完成或總線錯(cuò)誤等信息。

        收發(fā)器采用致遠(yuǎn)電子的CTM3MFD隔離CAN FD收發(fā)器,其支持CAN FD波特率可高達(dá)5Mbps。

        2.3 ?軟件實(shí)現(xiàn)

        軟件基于ZLG公司的AWorks嵌入式物聯(lián)網(wǎng)軟件開(kāi)發(fā)平臺(tái)實(shí)現(xiàn),其主要分為MCP2517FD初始化、報(bào)文發(fā)送、報(bào)文接收三個(gè)部分。

        2.3.1 ?模塊初始化

        模塊初始化部分主要完成對(duì)MCP2517FD模塊的初始化配置,包括CAN FD模式配置、控制器工作模式(正常/只聽(tīng))配置、波特率配置、報(bào)文收發(fā)FIFO配置、配置中斷觸發(fā)、啟動(dòng)控制器等。

        2.3.2 ?報(bào)文發(fā)送

        調(diào)用報(bào)文發(fā)送接口后,將軟件向模塊寫(xiě)入一幀CAN FD報(bào)文,等待發(fā)送完成中斷,當(dāng)?shù)弥獔?bào)文發(fā)送完成后,繼續(xù)下幀報(bào)文發(fā)送。由于MCP2517FD無(wú)法獲取發(fā)送完成標(biāo)志,僅能依賴發(fā)送FIFO是否為空標(biāo)志判斷是否發(fā)送。而默認(rèn)未發(fā)送數(shù)據(jù)前,發(fā)送FIFO為空,則會(huì)一直產(chǎn)生中斷。因此,軟件僅設(shè)置FIFO為1幀報(bào)文深度。每次發(fā)送時(shí),在填充報(bào)文后使能發(fā)送FIFO為空中斷。發(fā)送完成后進(jìn)入中斷后,關(guān)閉發(fā)送FIFO為空的中斷。

        2.3.3 ?報(bào)文接收

        當(dāng)接收到CAN(FD)報(bào)文時(shí),MCP2517FD模塊INT管腳將拉低,觸發(fā)MCU中斷。觸發(fā)中斷后,軟件將通知消息處理線程。線程將讀取報(bào)文數(shù)據(jù),填入緩沖區(qū)中,等用戶讀取報(bào)文接口。

        2.4 ?模塊收發(fā)性能

        在微控制器主頻528MHz,MCP2517FD時(shí)鐘為40MHz,SPI傳輸速率在20MHz條件下,可實(shí)現(xiàn)接收CAN FD報(bào)文不丟幀(波特率:1Mbps/5Mbps),發(fā)送長(zhǎng)度為64字節(jié)的CAN FD報(bào)文可達(dá)3500幀每秒。

        3 ?結(jié) ?論

        本文針對(duì)CAN總線技術(shù)及CAN升級(jí)后的CAN FD帶來(lái)的變化進(jìn)行了探究,分析了CAN FD帶來(lái)的數(shù)據(jù)吞吐量和傳輸速率上的提升。通過(guò)對(duì)CAN FD技術(shù)的探究,本文給出了基于MCP2517FD的CAN FD通信實(shí)現(xiàn),解決了微控制器無(wú)CAN FD控制器或沒(méi)有足夠CAN FD控制器情況下的CAN FD通信實(shí)現(xiàn)的問(wèn)題。同時(shí)基于該實(shí)驗(yàn)驗(yàn)證了MCP2517FD模塊的收發(fā)性能。

        參考文獻(xiàn):

        [1] 周立功.CAN-bus現(xiàn)場(chǎng)總線基礎(chǔ)教程 [M].北京:航空航天大學(xué)出版社,2012.

        [2] 鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì) [M].北京:航空航天大學(xué)出版社,2002.

        作者簡(jiǎn)介:郭創(chuàng)建(1991-),男,漢族,廣東汕頭人,嵌入式軟件工程師,本科,研究方向:通信技術(shù)及應(yīng)用;王琳煜(1992-),男,漢族,廣東汕頭人,嵌入式軟件工程師,本科,研究方向:通信技術(shù)及應(yīng)用。

        91麻豆精品一区二区三区| 国产精品国产午夜免费看福利 | 国产老熟妇精品观看| 久久老熟女一区二区三区| 蜜臀久久99精品久久久久久| 国产欧美va欧美va香蕉在| 亚洲av鲁丝一区二区三区黄| 日韩精品无码久久久久久| 91精品国产91久久久无码95| 精品国产性色av网站| 国产主播一区二区三区在线观看| 日日麻批免费高清视频| 一区二区三区最新中文字幕| 国产精品多p对白交换绿帽| 亚洲欧美国产日韩字幕| 亚洲中文字幕在线第二页| 国产日产久久高清ww| www婷婷av久久久影片| 草草久久久无码国产专区| 亚洲熟女少妇一区二区 | 青青草视频在线播放81| 午夜少妇高潮在线观看| 欧美日韩色另类综合| 亚洲欧洲日韩免费无码h| 国产一区二区三区最新视频| 看中文字幕一区二区三区| 阴唇两边有点白是怎么回事| 欧美性受xxxx黑人猛交| 永久黄网站免费视频性色| 日本欧美小视频| A亚洲VA欧美VA国产综合| 中文天堂一区二区三区| 少妇高潮太爽了在线看| 国产二级一片内射视频播放| 色欲人妻综合网| 久久水蜜桃亚洲av无码精品麻豆| 日本免费三级一区二区| 青青草在线免费视频播放| 国产又色又爽无遮挡免费软件| 99亚洲精品久久久99| 国产一级黄色av影片|