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

        ?

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

        2008-04-12 00:00:00王云午魏宗壽
        現(xiàn)代電子技術(shù) 2008年3期

        摘 要:介紹了基于CAN總線的通信節(jié)點(diǎn)設(shè)計(jì)方法。在分析CAN總線的主要技術(shù)特性及CAN總線在工業(yè)控制系統(tǒng)中所處的位置之后,給出了設(shè)計(jì)CAN通信節(jié)點(diǎn)選用的器件及其硬件特性和通信節(jié)點(diǎn)的硬件設(shè)計(jì)框圖。描述了CAN節(jié)點(diǎn)軟硬件設(shè)計(jì)方法,同時(shí)給出了CAN控制器的初始化流程以及發(fā)送、接收程序流程圖。介紹的設(shè)計(jì)方法易于掌握且具有較強(qiáng)的靈活性和通用性,可用于多種工業(yè)現(xiàn)場(chǎng)控制。

        關(guān)鍵詞:CAN總線;SJA1000;總線緩沖器;通信節(jié)點(diǎn)

        中圖分類號(hào):TN919 文獻(xiàn)標(biāo)識(shí)碼:B

        文章編號(hào):1004373X(2008)0307203

        Design of Communication Node Based on CAN Bus

        WANG Yunwu,WEIZongshou

        (Key Laboratory of Opto—Technology and Intelligent Control Ministry of Education,Lanzhou JiaotongUniversity,Lanzhou,730070,China)

        Abstract:This paper introduces the way of designing communication node based on CAN bus.After introducing the main technical characteristic of CAN bus and its position in the industrial control system,it gives components for designing communication node of CAN bus and its characteristic of hardware and it also gives the designing chart of hardware of communication node.The design of hardware and software is described in this paper,it also gives the initialization process of CAN controller and the flow chart of sending and receiving data program.The method of design in this paper is easy to grasp and is flexibility and versatility,it can be used to control in many industry fields.

        Keywords:CAN bus;SJA100;bus buffer;communication node

        1 引 言

        在20世紀(jì)80年代初,德國的BOSCH公司提出了用CAN總線(Controller Area Network,控制器局域網(wǎng))來解決汽車內(nèi)部的復(fù)雜硬件信號(hào)接線。CAN總線以其低成本、高可靠性、實(shí)時(shí)性、抗干擾能力強(qiáng)等特點(diǎn)得到了廣泛的應(yīng)用。1993年ISO正式頒布了ISO11898CAN高速應(yīng)用標(biāo)準(zhǔn)和ISO11519CAN低速應(yīng)用標(biāo)準(zhǔn),這為CAN總線的標(biāo)準(zhǔn)化、規(guī)范化鋪平了道路。CAN總線主要具有以下特性:

        (1) CAN采用多主方式工作,網(wǎng)絡(luò)上任意節(jié)點(diǎn)均可以在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息而不分主從,通訊方式靈活且無需站地址等節(jié)點(diǎn)信息。

        (2) CAN網(wǎng)絡(luò)上的信息可分成不同的優(yōu)先級(jí),滿足不同的實(shí)時(shí)性要求;高優(yōu)先級(jí)的數(shù)據(jù)最多可在134 μm內(nèi)得到傳輸。

        (3) CAN的直接通信距離最遠(yuǎn)可達(dá)10 km(速率5 kb/s以下);通訊速率最高可達(dá)1 Mb/s(此時(shí)通信距離為40 m)。

        (4) CAN只需通過報(bào)文濾波即可以實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)及全局廣播等幾種方式傳送接收數(shù)據(jù),無需專門的“調(diào)度”。

        (5) CAN采用非破壞性總線裁決技術(shù)(CSMA/CD),在多個(gè)節(jié)點(diǎn)對(duì)總線發(fā)送信息出現(xiàn)沖突時(shí),低優(yōu)先級(jí)的節(jié)點(diǎn)會(huì)主動(dòng)退出發(fā)送而保證高優(yōu)先級(jí)的節(jié)點(diǎn)的信息傳輸,因此大大節(jié)省了總線沖突裁決時(shí)間,最重要的是在網(wǎng)絡(luò)負(fù)載很重的情況下也不會(huì)出現(xiàn)網(wǎng)絡(luò)癱瘓情況(以太網(wǎng)則可能)。

        (6) CAN協(xié)議廢除了傳統(tǒng)的站地址編碼,而對(duì)通訊數(shù)據(jù)塊進(jìn)行編碼,使網(wǎng)絡(luò)中的節(jié)點(diǎn)個(gè)數(shù)在理論上不受限制。

        (7) CAN總線具有極好的檢錯(cuò)效果,CAN的每幀信息都具有CRC校驗(yàn)和其他檢錯(cuò)措施,保證了錯(cuò)誤的輸出率極低。

        (8) CAN節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動(dòng)關(guān)閉輸出功能,以使總線以上其他節(jié)點(diǎn)的操作不受影響。

        2 基本硬件介紹

        本文所涉及的通信系統(tǒng)相關(guān)工業(yè)控制系統(tǒng)框圖如圖1所示。

        其中,CAN總線通過PC適配卡與上位機(jī)相連,各CAN節(jié)點(diǎn)都可與上位機(jī)通信,同時(shí)互相之間也可以通信。考慮到系統(tǒng)的可靠性與安全性,建議上位機(jī)采用工控機(jī),當(dāng)然在要求可靠性與安全性相對(duì)較低的場(chǎng)合也可以考慮采用PC機(jī)。CAN總線控制器是以在一塊可編程芯片上的邏輯電路的組合來提供與微處理器的物理線路的接口。通過對(duì)他的編程,CPU可以設(shè)置他的工作方式,控制他的工作狀態(tài),進(jìn)行數(shù)據(jù)的發(fā)送和接收,把網(wǎng)絡(luò)應(yīng)用層建立在他的基礎(chǔ)之上。CAN控制器目前主要有兩大類:一類是獨(dú)立控制器,如PHILIPS公司的PCA82C200,SJA1000,INTEL公司的82526,82527等;另外一類是內(nèi)部帶有CAN控制器的微處理器,如P8XC591等。我們采用的是PHILIPS公司的SJA1000控制器以及TJA1050總線驅(qū)動(dòng)器。

        圖1 應(yīng)用CAN總線的工業(yè)控制系統(tǒng)

        2.1 SJA1000特性及內(nèi)部結(jié)構(gòu)

        SJA1000是一種獨(dú)立控制器,是PHILIPS公司的PCA82C200的替代產(chǎn)品。他增加了一種新的工作模式(PeliCAN),這種模式支持具有很多新特點(diǎn)的CAN 2.0B協(xié)議。SJA1000主要具有如下特點(diǎn):

        (1) 與PCA82C200獨(dú)立CAN控制引腳和電氣兼容;

        (2) 仍然具有PCA82C200模式(即默認(rèn)的BasicCAN模式);

        (3) 擴(kuò)展的接收緩沖器(64 B FIFO);

        (4) 同時(shí)支持11位和29位標(biāo)識(shí)符且與CAN 2.0B兼容;

        (5) 位速率可達(dá)1 Mb/s;

        (6) 具有詳細(xì)位號(hào)(bit position)的仲裁丟失中斷;

        (7) 只聽模式(無確認(rèn)、無激活的出錯(cuò)標(biāo)志);

        (8) 可編程的CAN輸出驅(qū)動(dòng)器配置;

        (9) 可以和不同處理器接口。

        2.2 TJA1050特性

        TJA1050是PHILIPS公司生產(chǎn)的,用以替代PCA82C250的高速總線收發(fā)器。該器件提供了CAN控制器與物理總線之間的接口以及對(duì)CAN總線的差動(dòng)發(fā)送和接收功能。TJA1050的主要特性如下:

        (1) 與ISO11898標(biāo)準(zhǔn)完全兼容;

        (2) 總線與電源及地之間的短路保護(hù);

        (3) 優(yōu)化了輸出信號(hào)CANH和CANL之間的耦合,大大降低了信號(hào)的電磁輻射;

        (4) 具有強(qiáng)電磁干擾下,寬工模范圍的差動(dòng)接收能力;

        (5) 未上電節(jié)點(diǎn)不會(huì)干擾總線(對(duì)此類節(jié)點(diǎn)性能做了優(yōu)化);

        (6) 總線至少可連接110個(gè)節(jié)點(diǎn)。

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

        3.1 CAN節(jié)點(diǎn)硬件電路設(shè)計(jì)的原理

        圖2為硬件電路設(shè)計(jì)的原理框圖。其中主控制器選用ATMEL公司的ATmega128單片機(jī),總線收發(fā)器為TJA1050。其中ATmega128為ATMEL公司生產(chǎn)的基于RISC結(jié)構(gòu)的高性能低功耗的新一代8位單片機(jī),其主要功能如下:

        (1) 具有先進(jìn)的RISC結(jié)構(gòu),具有預(yù)取指令功能,大多數(shù)指令可在一個(gè)時(shí)鐘周期內(nèi)完成;

        (2) 內(nèi)置128 kB可擦寫10 000次以上的可編程FLASH;

        (3) 具有獨(dú)立鎖定位,可選擇的啟動(dòng)代碼區(qū)具有多重密碼保護(hù)鎖死功能;

        (4) 內(nèi)置模擬比較器,具有8路10位ADC,I/O口可做AD轉(zhuǎn)換用;

        (5) 內(nèi)部有標(biāo)定的RC振蕩器,同時(shí)具有獨(dú)立片內(nèi)震蕩器的可編程看門狗定時(shí)器;

        (6) 6種睡眠模式:空閑模式、ADC噪聲抑制模式、省電模式、掉電模式、Standby模式以及擴(kuò)展的Standby模式;

        (7) 有2個(gè)異步串行通訊口UART,不占用定時(shí)器和SPI傳輸功能;

        (8) 具有多個(gè)片內(nèi)/外中斷源。

        圖2 CAN節(jié)點(diǎn)硬件電路原理圖

        3.2 節(jié)點(diǎn)硬件設(shè)計(jì)的部分說明

        (1) SJA1000選用PeliCAN模式,與微控制器連接后,其片選地址即操作SAJ1000內(nèi)部寄存器的基址用戶可以自行設(shè)定。

        (2) TJA1050采用了最新的EMC技術(shù),比PCA82C250/251的抗電磁干擾能力提高了20 dB。引腳S用于選定TJA1050的工作模式。有兩種工作模式可以選擇:如果引腳S接地,則TJA1050進(jìn)入高速模式。當(dāng)S端懸空時(shí),其默認(rèn)工作模式也是高速模式。高速模式是TJA1050的正常工作模式,也是我們所選用的模式。如果引腳S接高電平,則TJA1050進(jìn)入靜音模式,該模式可防止由于CAN控制器失控而造成的網(wǎng)絡(luò)阻塞,同時(shí)由于TJA1050支持的CAN信號(hào)有良好的對(duì)稱性,所以不像前代產(chǎn)品需要專門的斜率控制模式。

        (3) 在CAN控制器和總線驅(qū)動(dòng)器的物理輸出輸入線路中,可根據(jù)情況適當(dāng)加入保護(hù)電路,以增加數(shù)據(jù)傳輸?shù)姆€(wěn)定性。

        4 CAN節(jié)點(diǎn)軟件設(shè)計(jì)流程

        CAN應(yīng)用節(jié)點(diǎn)的程序設(shè)計(jì)主要分為3部分:SJA1000初始化子程序、發(fā)送子程序、接收子程序??梢哉f所有CAN通信程序設(shè)計(jì)都是遵循這3個(gè)基本步驟的,所以熟練掌握這3部分子程序的設(shè)計(jì)對(duì)于應(yīng)用CAN總線的工程技術(shù)人員來說是非常有必要的。下面就這3個(gè)子程序分別加以說明。

        4.1 SJA1000初始化子程序

        微控制器和SJA1000之間狀態(tài)、控制和命令信號(hào)的交換都是在控制段中完成的。初始化加載后,寄存器的接收代碼、接收屏蔽、總線定時(shí)寄存器0和1以及輸出控制就不能改變了。SJA1000共有2種工作模式:復(fù)位模式和工作模式。當(dāng)硬件復(fù)位或控制器掉電時(shí)會(huì)自動(dòng)進(jìn)入復(fù)位模式,只有在復(fù)位模式下才可以對(duì)SJA1000進(jìn)行初始化。初始化主要包括工作方式的設(shè)定、接收屏蔽寄存器和接收代碼寄存器的設(shè)定、總線時(shí)序寄存器的設(shè)置、輸出模式寄存器和中斷使能寄存器的設(shè)置等。在初始化完成以后,CAN總線就可以開始進(jìn)行數(shù)據(jù)的接收與發(fā)送工作,其初始化流程圖見圖3。

        圖3 SJA1000初始化流程圖

        4.2 發(fā)送與接收子程序

        首先與CAN控制器連接的微處理器必須將要發(fā)送的數(shù)據(jù)從其數(shù)據(jù)存儲(chǔ)區(qū)中取出,與主機(jī)的ID地址一起組成信息幀按CAN報(bào)文結(jié)構(gòu)發(fā)送到發(fā)送緩沖器中,并置位命令寄存器中的發(fā)送請(qǐng)求標(biāo)志,接收到發(fā)送請(qǐng)求后發(fā)送過程由CAN控制器自動(dòng)完成。在檢測(cè)到接收緩沖器中存在有

        效報(bào)文后,接收程序?qū)⒔邮站彌_器中的內(nèi)容讀入CPU的數(shù)據(jù)存儲(chǔ)區(qū)。接收完畢后檢查總線狀態(tài)及溢出情況等并做相應(yīng)處理,發(fā)送與接收程序流程圖見圖4。

        圖4 發(fā)送與接收程序流程圖

        5 結(jié) 語

        采用了多主工作方式及CSMA/CD的CAN總線以其顯著優(yōu)于傳統(tǒng)“一主多從”式多機(jī)串行通訊模式而得到了廣泛應(yīng)用。實(shí)踐表明,由于CAN總線結(jié)構(gòu)簡(jiǎn)單,器件容易購置,開發(fā)技術(shù)易于掌握,且具有統(tǒng)一的國際標(biāo)準(zhǔn),故在現(xiàn)場(chǎng)總線的發(fā)展中占有了重要位置。本文所介紹的基于CAN總線的通信節(jié)點(diǎn)可在大部分中短距離傳輸信息的控制現(xiàn)場(chǎng)發(fā)揮良好的作用。

        參考文獻(xiàn)

        [1]饒運(yùn)濤,鄒繼軍,鄭勇蕓.現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2003.

        [2]李正軍.現(xiàn)場(chǎng)總線及其應(yīng)用技術(shù)[M].北京:機(jī)械工業(yè)出版社,2005.

        [3]耿德根,宋建國,馬潮,等.AVR高速嵌入式單片機(jī)原理與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2001.

        [4]宋曉強(qiáng),吳愛國,李保林.具有高可靠性和靈活性的CAN總線控制系統(tǒng)的設(shè)計(jì)與開發(fā)[J].組合機(jī)床與自動(dòng)化加工技術(shù),2004(1):54—56.

        作者簡(jiǎn)介 王云午 男,1980年出生,內(nèi)蒙古鑲黃旗人,蘭州交通大學(xué)在讀研究生。主要研究方向?yàn)橹悄芸刂啤?/p>

        魏宗壽 男,1954年出生,甘肅省天水市人,蘭州交通大學(xué)光電技術(shù)與智能控制教育部重點(diǎn)實(shí)驗(yàn)室研究員。主要研究領(lǐng)域?yàn)榻煌ㄐ畔⒐こ碳翱刂啤?/p>

        注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。

        国产精品系列亚洲第一| 久久精品国产黄片一区| 国产色视频在线观看了| 蜜臀久久99精品久久久久久| 免费a级毛片无码a∨中文字幕下载 | 国产在线观看黄| 久久精品亚洲熟女九色| 免费观看91色国产熟女| 人妻少妇出轨中文字幕| 亚洲日本中文字幕天天更新| 国产高清无码91| 一本色道久久88综合亚洲精品| 日韩女优视频网站一区二区三区 | 太大太粗太爽免费视频| 精品极品一区二区三区| 九色综合九色综合色鬼| 呻吟国产av久久一区二区| 国产亚洲一区二区三区夜夜骚| 国产激情视频在线观看大全| 国产日韩精品suv| 丰满人妻被中出中文字幕| 久久久久中文字幕精品无码免费| 久久国产av在线观看| 日本超级老熟女影音播放| 午夜福利一区二区三区在线观看| 特级黄色毛片视频| 91色婷婷成人精品亚洲| 风骚人妻一区二区三区| 无码人妻一区二区三区兔费| 亚洲va欧美va国产综合| 婷婷精品国产亚洲av| 最新69国产精品视频| 亚洲中文字幕久久精品无码a| 少妇高潮惨叫喷水在线观看| 国产精品一区二区三密桃| 中文字幕女优av在线| 毛多水多www偷窥小便| 揄拍成人国产精品视频肥熟女| 日韩一二三四区在线观看| 亚洲色大成网站www永久网站| 伊人久久成人成综合网222|