RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于MCS-51單片機(jī)和CAN總線控制器實(shí)現(xiàn)總線節(jié)點(diǎn)的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:微計(jì)算機(jī)信息 ? 作者:胡光永 ? 2020-04-12 07:48 ? 次閱讀

CAN(Controller Area Network)即控制器局域網(wǎng)絡(luò)。由于其具有較強(qiáng)的抗干擾能力、通訊中沒有地址的概念及節(jié)點(diǎn)數(shù)不受限制等優(yōu)點(diǎn),已經(jīng)被廣泛應(yīng)用于汽車、數(shù)控機(jī)床、儀器儀表、現(xiàn)場總線控制等領(lǐng)域。在CAN總線的節(jié)點(diǎn)設(shè)計(jì)中,目前應(yīng)用較多的是通過單片機(jī)的控制來實(shí)現(xiàn)。有的單片機(jī)已經(jīng)嵌入了CAN控制器的功能,比如Philips的P8XC592,Motorola的68HC05X4等,但這類單片機(jī)的應(yīng)用并不普及,而且價(jià)格相對(duì)較高。對(duì)于目前應(yīng)用最為普及、價(jià)格也很便宜的MCS-51系列單片機(jī),本身并不嵌有CAN控制器的功能。下面就給出一種基于MCS-51單片機(jī)和SJA1000的CAN總線節(jié)點(diǎn)設(shè)計(jì)方法。

1、 CAN總線簡介

CAN 總線是現(xiàn)場總線的一種,它是德國Bosch 公司在1986 年為解決現(xiàn)代汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換而開發(fā)的一種串行數(shù)據(jù)通訊總線。它與其它總線最大的區(qū)別是兩個(gè)節(jié)點(diǎn)之間傳送信息時(shí)報(bào)文中沒有地址信息,而是對(duì)不同性質(zhì)的數(shù)據(jù)加以標(biāo)識(shí)。在通訊時(shí),以全網(wǎng)廣播為基礎(chǔ),各接收節(jié)點(diǎn)根據(jù)報(bào)文中反映數(shù)據(jù)性質(zhì)的標(biāo)識(shí)符過濾報(bào)文,該收的收下,不該收的棄而不用。雖然CAN總線最初是為在汽車行業(yè)應(yīng)用而開發(fā)的,但由于其具有很強(qiáng)的糾錯(cuò)能力,支持差分收發(fā),因而適合高噪聲環(huán)境,而且傳輸距離比較遠(yuǎn)。另外,象Philips,Motorola,Intel半導(dǎo)體制造商相繼開發(fā)出了支持CAN協(xié)議的集成芯片,更是推動(dòng)了CAN總線的應(yīng)用。目前,CAN總線在數(shù)控機(jī)床、醫(yī)療設(shè)備、工業(yè)控制等領(lǐng)域也取得了廣泛的應(yīng)用。1993年,國際標(biāo)準(zhǔn)化組織正式頒布了CAN總線的國際標(biāo)準(zhǔn)ISO11898。其具體特性如下:

(1)CAN網(wǎng)絡(luò)上的節(jié)點(diǎn)信息可以分成不同的優(yōu)先級(jí),用來滿足不同的實(shí)時(shí)要求。

(2)CAN為多主工作方式,網(wǎng)絡(luò)上任一節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,而不分主從。

(3)當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)向總線發(fā)送信息時(shí),CAN采用非破壞性總線仲裁技術(shù),低優(yōu)先級(jí)的節(jié)點(diǎn)會(huì)依此退出發(fā)送,而最高優(yōu)先級(jí)的節(jié)點(diǎn)正常發(fā)送,不會(huì)受到任何影響,極大地節(jié)省了總線沖突仲裁時(shí)間。

(4)發(fā)送期間若丟失仲裁或由于出錯(cuò)而遭破壞的幀可自動(dòng)重發(fā)送。

(5)CAN的直接通訊距離最遠(yuǎn)可達(dá)到10km(速率5kbps以下),通訊速率最高可以達(dá)到1Mbps(此時(shí)通訊距離最長為40m)。

(6)CAN的每幀信息都有CRC校驗(yàn)及其它檢錯(cuò)措施,保證了出錯(cuò)率很低。

(7)CAN節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動(dòng)關(guān)閉,退出總線的功能,從而使總線上的其它接點(diǎn)不受影響。SOC開發(fā)平臺(tái)360元 單片機(jī)開發(fā)系統(tǒng)498元 單片機(jī)學(xué)習(xí)板138 無線nRF-9E5模塊100元 51單片機(jī)試驗(yàn)開發(fā)板238元 Genius NSP通用編程器260元 Mini ARM Debugger330元 LABTOOL-48UXP2800元 S3C2410 ARM9開發(fā)板800

2、 SJA1000的介紹

SJA1000是Philips生產(chǎn)的獨(dú)立CAN總線控制器,它是早期的PCA82C200的替代產(chǎn)品。它與PCA82C200在管腳、電氣特性上完全兼容,不僅有和PCA82C200一樣的基本CAN(BasicCAN)工作模式,而且新增加了增強(qiáng)CAN(PeliCAN)工作模式,這種模式支持具有很多新特性的CAN2.0B協(xié)議。經(jīng)過簡單連接和正確設(shè)置的SJA1000,能自動(dòng)完成CAN總線物理層和數(shù)據(jù)鏈路層的所有功能,對(duì)于單片機(jī)來說,只要把它看成一個(gè)基本的I/O設(shè)備即可,使用非常簡單、方便。SJA1000的主要特性如下:

(1)擴(kuò)展的接受緩沖器(64字節(jié),先進(jìn)先出FIFO)。

(2)和CAN2.0B協(xié)議兼容。

(3)同時(shí)支持11位和29位識(shí)別碼。

(4)位速率最高可達(dá)1Mbits/s。

(5)支持多種微處理器接口

(6)增強(qiáng)的溫度適應(yīng)性。

3、 節(jié)點(diǎn)硬件電路設(shè)計(jì)說明

目前廣泛流行的CAN器件分兩大類,一類是獨(dú)立的CAN控制器,如PCA82C200、SJA1000等,另一類就是帶有CAN功能的微控制器,如Philips的P8XC592,Motorola的68HC05X4等??紤]芯片的市場普及程度、開發(fā)工具及成本等因素,在這次設(shè)計(jì)中選用單片機(jī)AT89C51為核心,SJA1000為CAN控制器,同時(shí)還使用了PCA82C250,它是CAN控制器的接口芯片。從功能上來分,SJA1000主要完成CAN的通訊協(xié)議,實(shí)現(xiàn)報(bào)文的裝配和拆分、接收信息的過濾和校驗(yàn)等。PCA82C250則是實(shí)現(xiàn)CAN控制器和通訊線路的物理連接,提高CAN總線的驅(qū)動(dòng)能力和可靠性。具體電路如下圖所示,雖然整個(gè)電路比較簡單,但結(jié)合本人設(shè)計(jì)、現(xiàn)場調(diào)試的體會(huì),給出下面幾點(diǎn)說明。

基于MCS-51單片機(jī)和CAN總線控制器實(shí)現(xiàn)總線節(jié)點(diǎn)的設(shè)計(jì)

(1)SJA1000并沒有和單片機(jī)共用復(fù)位電路,而是通過單片機(jī)的一I/O口來控制,這樣,SJA1000的復(fù)位就可以方便地由單片機(jī)通過軟件來控制。

(2)SJA1000的地址/數(shù)據(jù)端和單片機(jī)的P0口相連時(shí),不需要再加鎖存器,因?yàn)樗鼉?nèi)部已經(jīng)有地址鎖存功能。

(3)SJA1000 的TX1 腳懸空, RX1 引腳的電位必須維持在約0.5VCC上, 否則將不能形成CAN 協(xié)議所要求的邏輯電平。

(4)總線上電阻R3、R4一定不能省略,它們對(duì)匹配總線阻抗起著相當(dāng)重要的作用,如果去掉它們,系統(tǒng)通訊的可靠性和抗干擾能力就會(huì)大大降低,甚至不能正常工作。

4 、 軟件設(shè)計(jì)

和硬件電路相比,軟件的設(shè)計(jì)相對(duì)來說要復(fù)雜的多。而且,其中還涉及到有關(guān)通訊協(xié)議的問題,對(duì)于不同的控制系統(tǒng)、不同的功能要求,CAN總線通訊軟件的差別很大,在此不可能一一列出。但是,對(duì)于基于SJA1000的CAN總線系統(tǒng),它們開始時(shí)都必須對(duì)SJA1000進(jìn)行初始化,而這種初始化的流程是基本一致的。下面給出用匯編語言編制的SJA1000的初始化程序,假設(shè)SJA1000的首地址為0100H,其中設(shè)置波特率的有關(guān)參數(shù)是針對(duì)晶振為12M,波特率為500Kbit/s計(jì)算出來的。另外,在整個(gè)CAN總線系統(tǒng)中,所有節(jié)點(diǎn)設(shè)置的波特率必須一致,否則,系統(tǒng)就不能正常工作。

MODE EQU 0100H

BTR0 EQU MODE+6

BTR1 EQU MODE+7

ACR0 EQU MODE+16

AMR0 EQU MODE+20

OCR EQU MODE+8

RBSA EQU MODE+30

CDR EQU MODE+31

MOV A,#01H

MOV DPTR,#MODE

MOVX @DPTR,A

MOV A,#0C0H

MOV DPTR,# CDR

MOVX @DPTR,A

MOV A,#1AH

MOV DPTR,# OCR

MOVX @DPTR,A

MOV A,#85H

MOV DPTR,# BTR0

MOVX @DPTR,A

MOV A,#0B4H

MOV DPTR,# BTR1

MOVX @DPTR,A

MOV A,#00H

MOV DPTR,# RBSA

MOVX @DPTR,A

MOV A,#0FFH

MOV DPTR,# AMR0

MOV R0,#04H

BEGIN10:MOVX @DPTR,A

INC DPTR

DJNZ R0,BEGIN10

MOV A,#00H

MOV DPTR,#MODE

MOVX @DPTR,A

5、 結(jié)束語

CAN 具有較強(qiáng)的糾錯(cuò)能力,適用于高噪聲環(huán)境, 并具有較遠(yuǎn)的傳輸距離, 現(xiàn)已廣泛應(yīng)用于許多領(lǐng)域,該設(shè)計(jì)作為CAN總線節(jié)點(diǎn)的一個(gè)模塊,能夠和儀器儀表等設(shè)備相結(jié)合,使其具有網(wǎng)絡(luò)通訊的能力,有著廣闊的應(yīng)用前景。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6035

    文章

    44554

    瀏覽量

    634635
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16332

    瀏覽量

    177806
  • CAN總線
    +關(guān)注

    關(guān)注

    145

    文章

    1946

    瀏覽量

    130726
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CAN總線通信系統(tǒng)的研究與設(shè)計(jì)

    MCS-51單片機(jī)組成CAN通信系統(tǒng)需要擴(kuò)展CAN控制器,本系統(tǒng)采用的CAN
    的頭像 發(fā)表于 01-09 08:23 ?6232次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>通信系統(tǒng)的研究與設(shè)計(jì)

    MCS-51單片機(jī)基本原理

    MCS-51單片機(jī)基本原理[學(xué)習(xí)要求] 掌握MCS-51單片機(jī)的基本概念和基本原理。[重點(diǎn)與難點(diǎn)]重點(diǎn):單片機(jī)的基本原理與內(nèi)部結(jié)構(gòu)。難點(diǎn):
    發(fā)表于 03-19 16:39

    PIC單片機(jī)MCS-51系列單片機(jī)的區(qū)別

    PIC單片機(jī)MCS-51系列單片機(jī)的區(qū)別(1)總線結(jié)構(gòu):MCS-51單片機(jī)
    發(fā)表于 08-26 14:23

    MCS-51系列單片機(jī)結(jié)構(gòu)和原理

    Intel公司推出的MCS-51系列單片機(jī)以其典型的結(jié)構(gòu)、完善的總線、特殊功能寄存的集中管理方式、位操作系統(tǒng)和面向控制的指令系統(tǒng),為
    發(fā)表于 11-17 06:37

    MCS-51系列單片機(jī)的組成部分

    、中斷控制、總線控制及時(shí)鐘電路。CPU的組成CPU 是單片機(jī)的核心部件,由運(yùn)算控制器組成,用
    發(fā)表于 11-17 07:49

    新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì)

    新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì)
    發(fā)表于 03-21 22:03 ?576次下載

    mcs-51單片機(jī)應(yīng)用教程

    mcs-51單片機(jī)應(yīng)用教程以MCS-51系列單片機(jī)為主線,從實(shí)用的角度出發(fā),通過介紹大量單片機(jī)技能訓(xùn)練實(shí)例和應(yīng)用實(shí)例,指導(dǎo)讀者學(xué)習(xí)和使用
    發(fā)表于 10-28 16:21 ?77次下載
    <b class='flag-5'>mcs-51</b><b class='flag-5'>單片機(jī)</b>應(yīng)用教程

    MCS-51單片機(jī)系統(tǒng)擴(kuò)展技術(shù)

    1 MCS-51單片機(jī)系統(tǒng)擴(kuò)展的基本概念2 程序存儲(chǔ)擴(kuò)展技術(shù)3 數(shù)據(jù)存儲(chǔ)擴(kuò)展4 輸入/輸出口擴(kuò)展技術(shù)MCS-51
    發(fā)表于 12-01 14:39 ?65次下載
    <b class='flag-5'>MCS-51</b><b class='flag-5'>單片機(jī)</b>系統(tǒng)擴(kuò)展技術(shù)

    MCS-51 單片機(jī)基本原理

    [學(xué)習(xí)要求] 掌握MCS-51單片機(jī)的基本概念和基本原理。[重點(diǎn)與難點(diǎn)]重點(diǎn):單片機(jī)的基本原理與內(nèi)部結(jié)構(gòu)。難點(diǎn):MCS-51單片機(jī)存儲(chǔ)
    發(fā)表于 03-18 22:05 ?67次下載

    MCS-51單片機(jī)硬件結(jié)構(gòu)

    教學(xué)內(nèi)容:2.1  MCS-51單片機(jī)的基本結(jié)構(gòu)2.2  MCS-51單片機(jī)的引腳及片外總線結(jié)構(gòu)教學(xué)方法: 
    發(fā)表于 07-07 15:43 ?38次下載

    MCS-51單片機(jī)應(yīng)用設(shè)計(jì)

    本書從應(yīng)用的角度,詳細(xì)地介紹了MCS-51單片機(jī)的硬件結(jié)構(gòu)、指令系統(tǒng)、各種硬件接口設(shè)計(jì)、各種常用的數(shù)據(jù)運(yùn)算和處理程序及接口驅(qū)動(dòng)程序的設(shè)計(jì)以及MCS-51單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì),并對(duì)
    發(fā)表于 10-28 10:06 ?84次下載
    <b class='flag-5'>MCS-51</b><b class='flag-5'>單片機(jī)</b>應(yīng)用設(shè)計(jì)

    基于CAN總線的智能節(jié)點(diǎn)設(shè)計(jì)

    應(yīng)用51單片機(jī)控制核心結(jié)合其他的器件設(shè)計(jì)了一種能連接于CAN總線上的智能節(jié)點(diǎn)。通過
    發(fā)表于 01-10 16:54 ?120次下載

    MCS-51單片機(jī)的結(jié)構(gòu)和原理

    MCS-51單片機(jī)的結(jié)構(gòu)和原理
    發(fā)表于 12-11 23:41 ?1次下載

    MCS-51單片機(jī)的溫度控制系統(tǒng)

    MCS-51單片機(jī)的溫度控制系統(tǒng)
    發(fā)表于 09-21 13:50 ?25次下載
    <b class='flag-5'>MCS-51</b><b class='flag-5'>單片機(jī)</b>的溫度<b class='flag-5'>控制</b>系統(tǒng)

    MCS-51單片機(jī)應(yīng)用設(shè)計(jì)

    MCS-51單片機(jī)應(yīng)用設(shè)計(jì)說明。
    發(fā)表于 05-24 14:27 ?48次下載
    RM新时代网站-首页