電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 1602|回復(fù): 0
收起左側(cè)

培訓(xùn)完嵌入式根本找不到工作_基于嵌入式系統(tǒng)的CAN總線網(wǎng)絡(luò)通信是怎樣設(shè)計的

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級會員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-7-21 14:04:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
培訓(xùn)完嵌入式根本找不到工作_基于嵌入式系統(tǒng)的CAN總線網(wǎng)絡(luò)通信是怎樣設(shè)計的,   

1.引言

可編程邏輯器件PLD(Programmable logic Device)就是由用戶進(jìn)行編程實現(xiàn)所需邏輯功能的數(shù)字專用集成電路ASIC。可編程邏輯器件在現(xiàn)代電子工程設(shè)計中得到了廣泛應(yīng)用。它是在PAL,GAL等邏輯器件的基礎(chǔ)上發(fā)展起來的,具有高密度,高速度,低功耗體系結(jié)構(gòu)和邏輯單元,靈活以及運用范圍寬等特點,同時還具有設(shè)計周期短,制造成本低,開發(fā)工具先進(jìn),標(biāo)準(zhǔn)產(chǎn)品無需測試,質(zhì)量穩(wěn)定及可實時布線檢驗等優(yōu)點。

現(xiàn)場總線技術(shù)廣泛應(yīng)用于工業(yè)和軍用測控局域網(wǎng)中,它可以實現(xiàn)較遠(yuǎn)距離、較快速度的信息傳輸,而且只需要雙絞線作為傳輸媒介,簡單可靠。但是,在該技術(shù)應(yīng)用中總線控制器與微機之間的接口電路一般采用單片機來實現(xiàn)。采用這種方式將導(dǎo)致較長的研發(fā)周期和龐大的電路,且難于實現(xiàn)高速數(shù)據(jù)傳輸。本文利用CPLD成功地實現(xiàn)了嵌入式系統(tǒng)與CAN總線網(wǎng)絡(luò)的通信,速度快,易于實現(xiàn),而且非常穩(wěn)定。

本系統(tǒng)采用的器件是Altera公司的CPLD,屬于MAX7000系列。Altera公司的CPLD器件主要包括MAX系列、ACEX系列、FLEX系列和APEX系列。其中MAX系列器件為高速實際應(yīng)用提供了非常高的性價比,這基于它先進(jìn)的MAX架構(gòu)。MAX7000系列提供了速度最快的可編程邏輯器件解決方案,它基于CMOS EEPROM工藝,傳播延遲最小為3.5ns。

2.CPLD實現(xiàn)接口電路

實時控制系統(tǒng)中,測控局域網(wǎng)利用CAN控制器實現(xiàn)微機間的數(shù)據(jù)傳輸。其基本的設(shè)計思想是:由于PC總線協(xié)議與CAN控制器不一致,因而在它們中間設(shè)計了一個硬件電路作為接口來實現(xiàn)轉(zhuǎn)換。PC地址與數(shù)據(jù)總線是分離的,而CAN控制器數(shù)據(jù)與地址線通過分時復(fù)用來實現(xiàn)地址與數(shù)據(jù)分離,剛好與單片機一致。單片機技術(shù)雖然較成熟,但是,由于涉及單片機編程和開發(fā)的周期較長,且采用單片機系統(tǒng)需要較龐大的外圍電路,不利于研制系統(tǒng)應(yīng)用于嵌入式系統(tǒng)中。因此,用可編程邏輯器件設(shè)計接口電路,可以有效解決這些問題。

本系統(tǒng)采用“主-從”式點對點通信。系統(tǒng)硬件由兩臺PC104主機和兩塊CAN總線通信模塊組成,如圖1所示。主機采用CPU主頻為300MHz的奔騰處理器;CAN總線控制器位SJA1000T;一帶屏蔽的雙絞線作為系統(tǒng)總線;通信波特率可用軟件設(shè)置為1Mbps;為了提高通信的可靠性,用CAN控制器的報文篩選器對報文進(jìn)行篩選,來對由于干擾而產(chǎn)生的錯誤報文進(jìn)行濾波。

  

圖1 系統(tǒng)硬件組成

本系統(tǒng)主要是利用主機PC(PC104)采集多個下位機從被控對象得到的數(shù)據(jù),并進(jìn)行實時控制和綜合調(diào)度,其原理框圖如圖2所示。

  

圖2 原理框圖

其中CPLD完成從CAN控制器到PC總線的數(shù)據(jù)轉(zhuǎn)換。CAN控制器負(fù)責(zé)從總線上采集數(shù)據(jù)?偩驅(qū)動部分由89C250完成總線驅(qū)動;光電隔離器完成CAN控制器與傳輸電纜的信號隔離,防止電纜上的非規(guī)則信號對CAN控制器產(chǎn)生干擾。

3.MAX+PLUSⅡ程序設(shè)計

Altera公司的MAX+PLUS Ⅱ是一個高效實用的工具。直接采用原理圖輸入方式,進(jìn)行編譯后寫入器件中;同時可在線更改寫入內(nèi)容,修改和調(diào)試簡單易行。利用MAX+PLUS Ⅱ可以對輸入輸出關(guān)系進(jìn)行在線調(diào)試和仿真,開發(fā)和調(diào)試周期短而高效。MAX+PLUSⅡ的軟件設(shè)計的流程包括設(shè)計輸入、功能仿真、編譯、后仿真、編程驗證幾個部分。

本文所論述的系統(tǒng)已經(jīng)實現(xiàn)并進(jìn)行通信測試,在最高通信速度、通信距離、熱冗余和冷冗余實驗等測試中都取得了良好的表現(xiàn)。這里僅論述邏輯設(shè)計輸入和功能仿真。

CPLD主要用于實現(xiàn)PC接口板的地址選擇比較器和CAN控制器到PC總線的數(shù)據(jù)轉(zhuǎn)換,其設(shè)計輸入如圖3所示。

  

基于嵌入式系統(tǒng)的CAN總線網(wǎng)絡(luò)通信流程設(shè)計

圖3 設(shè)計輸入

其中compare完成選址功能,MUX2×8完成總線轉(zhuǎn)換。

4.仿真實驗

為簡明起見,這里僅給出核心的部分時序仿真圖形,如圖4所示。

  

圖4 核心的部分時序仿真圖形

由仿真波形可知,在PC總線的讀寫操作進(jìn)行時,地址和數(shù)據(jù)很好的實現(xiàn)了轉(zhuǎn)換,讀寫的周期完整,觸發(fā)迅速,保證轉(zhuǎn)換的準(zhǔn)確和迅速,滿足了設(shè)計的要求。

5.結(jié)論

可編程邏輯器件的應(yīng)用已經(jīng)成為現(xiàn)代電子電路設(shè)計中的高效方式,它可以實現(xiàn)高效率、可靠的設(shè)計,也可以進(jìn)一步提高電路的集成度;使用它設(shè)計的CAN通信卡可以作為通信接口而滿足嵌入式系統(tǒng)的要求。同時,基于PC104系統(tǒng)的CAN通信的通信效率較高,具有較強的實時性,可以滿足工業(yè)現(xiàn)場高速通信的需要,也可為復(fù)雜控制系統(tǒng)實現(xiàn)實時控制提供強有力的工具。

責(zé)任編輯:ct
回復(fù)

使用道具 舉報

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表