新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于ARM控制器LPC2294的CAN/PCI智能通信卡設(shè)計

基于ARM控制器LPC2294的CAN/PCI智能通信卡設(shè)計

作者: 時間:2015-04-12 來源:網(wǎng)絡(luò) 收藏

  引言

本文引用地址:http://2s4d.com/article/272388.htm

  是PHILIPS公司推出的一款功能強大、超低功耗且具有7TDMI內(nèi)核的32位微控制器。它具有豐富的片上資源,完全可以滿足一般的工業(yè)控制需要,同時還可以減少系統(tǒng)硬件設(shè)計的復(fù)雜度,提高系統(tǒng)的穩(wěn)定性。

  CAN(“Controller Area Network”)總線控制器局域網(wǎng)是一種能有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò)。CAN總線以其高性能、高可靠性、廉價等特性,越來越受到人們的重視和青睞。為了有效的管理工業(yè)現(xiàn)場的CAN節(jié)點,充分發(fā)揮CAN總線的性能,通信卡的設(shè)計與研究十分必要。但目前市場上類似產(chǎn)品存在著兩點不足。

  首先是一般工業(yè)現(xiàn)場中可能擁有不止1條CAN總線,而目前設(shè)計的通信卡上的CAN的接口太少,因而會給設(shè)備的集中管理帶來困難。

  二是目前兩條CAN網(wǎng)段問的通信主要通過一對一CAN總線網(wǎng)橋來實現(xiàn),但這種方式解決不了工業(yè)現(xiàn)場中同時在幾條CAN網(wǎng)段問傳輸數(shù)據(jù)的需求,也容易導(dǎo)致組網(wǎng)混亂。

  為此,本設(shè)計選用的控制器內(nèi)部集成有四路CAN控制器,完全符合CAN規(guī)范CAN2.0B標準和ISO11989-1標準。全局驗收過濾器可識別幾乎所有總線的11位和29位Rx標識符。作為本設(shè)計的核心部件,的使用能夠很好地解決上述2個問題,它不僅能擔(dān)起主控制器的工作,同時還可作為CAN網(wǎng)絡(luò)的數(shù)據(jù)傳輸控制器,來與網(wǎng)絡(luò)中的節(jié)點實現(xiàn)數(shù)據(jù)交換。

  1 硬件設(shè)計方案

  目前計算機的發(fā)展,除了少數(shù)專門的工控機還在使用ISA總線以外,PC機上使用最為普遍的就是PCI總線了。PCI總線是Intel公司推出的一種高性能32/64位PC機局部總線,可能同時支持多組外圍沒備而不受制于處理器,其數(shù)據(jù)吞吐量很大(33 MHz總線頻率、32位傳輸時,其峰值可高達132 MB/s),PCI總線依靠其優(yōu)越的性能必將取代ISA總線。因此,本文基于PCI總線來設(shè)計一個帶有4個CAN總線網(wǎng)段的智能通信卡。圖1是該通信卡的整體硬件結(jié)構(gòu)圖。

  

 

  1.1 PCI總線接口的實現(xiàn)

  PCI總線具有非常嚴格的規(guī)范,也具有良好的兼容性。但是PCI總線協(xié)議也比較復(fù)雜。本設(shè)計選用專用的PCI總線接口芯片PCI9030來實現(xiàn)網(wǎng)關(guān)的PCI總線接口。PCI9030是PLX公司開發(fā)的低價格PCI總線從模式接口芯片。該芯片功耗低,符合PCI2.2規(guī)范,用戶設(shè)計時只需考慮局部總線一側(cè)的邏輯控制電路和用于配置的外部EEP-ROM,而不必考慮PCI協(xié)議的具體實現(xiàn)方法,這樣就大大簡化了設(shè)計難度,縮短了開發(fā)周期。

  PCI9030要求有一塊EEPROM作為初始化存儲器。在系統(tǒng)加載時,PCI9030先從該EEPROM中加載初始數(shù)據(jù),進行初始設(shè)置,因此,EEP-ROM中的信息是否正確決定了PCI卡的加載和運行是否正常。本設(shè)計選用ST93CS56作為PCI9030的初始化存儲器,其結(jié)構(gòu)方案如圖2所示。

  

 

  1.2 CAN總線接口的實現(xiàn)

  該通信卡中CAN總線接口部分實現(xiàn)有以下兩種常用的方法:

  (1) 獨立CAN總線控制芯片實現(xiàn)

  即采用飛利浦公司的SJA1000獨立CAN控制器來實現(xiàn)CAN協(xié)議。這種方法的優(yōu)點是能實現(xiàn)較復(fù)雜的功能,靈活性也不錯,但由于它是獨立的控制器,設(shè)計通信卡擁有4個CAN網(wǎng)段就需要4片SJA1000,這樣會造成資源冗余,系統(tǒng)會比較龐大,而且穩(wěn)定性也會受影響,設(shè)計難度也較大。

  (2) 帶CAN接口的微控制器實現(xiàn)

  該方法具有代表性的有飛利浦公司的芯片LPC2294,它集成有4路片上CAN總線控制器,能很方便地實現(xiàn)多路CAN總線接口,減小系統(tǒng)規(guī)模,提高系統(tǒng)穩(wěn)定性。

  比較上述兩種方法,在傳統(tǒng)的SJA1000中,接收過濾只能滿足一些規(guī)律性較高的ID篩選過濾,或?qū)€數(shù)較少的ID (一般小于10~15個)進行任意篩選過濾,而難以實現(xiàn)更復(fù)雜的任意ID進行篩選過濾,這無疑增加了系統(tǒng)軟件設(shè)計及運行負擔(dān)。而第二種設(shè)計方法相對較為簡便。由于LPC2294微控制器中為所有CAN控制器提供了全局的接收標識符查詢功能,因而能容易地設(shè)計較復(fù)雜的ID接收過濾,其工作的重點主要在ARM芯片的軟件設(shè)計上。本文采用第二種方法來實現(xiàn)CAN總線接口,并采用PCA82C250作為CAN總線驅(qū)動器,同時將6N137連入CAN控制器和CAN驅(qū)動器之間以降低CAN總線對網(wǎng)關(guān)卡的電磁干擾。圖3所示是LPC2294中一個CAN接口的連接圖,其它接口與之類似。

  

 

  1.3 微控制器與PCI9030之間的硬件接口設(shè)計

電子血壓計相關(guān)文章:電子血壓計原理



上一頁 1 2 3 下一頁

關(guān)鍵詞: ARM LPC2294

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉