<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于PC/104總線的多功能擴(kuò)展通訊模塊的設(shè)計(jì)

          基于PC/104總線的多功能擴(kuò)展通訊模塊的設(shè)計(jì)

          作者: 時(shí)間:2016-12-20 來(lái)源:網(wǎng)絡(luò) 收藏

          1 引言

            PC/104總線計(jì)算機(jī)具有體積小、功耗低、工作溫度寬、可靠性高等特點(diǎn),被廣泛地應(yīng)用于分布式系統(tǒng)和集散控制系統(tǒng)中作為現(xiàn)場(chǎng)控制計(jì)算機(jī)。在這些系統(tǒng)中的104PC,往往需要同上位機(jī)及下面連接的控制執(zhí)行機(jī)構(gòu)、傳感器或丈量?jī)x表通訊,而常用的通訊方式有RS-232串行口加MODEM方式、RS-485方式、以太網(wǎng)方式以及各種產(chǎn)業(yè)現(xiàn)場(chǎng)總線。

            RS-232串行口加MODEM方式一般用于點(diǎn)對(duì)點(diǎn)之間較遠(yuǎn)間隔的數(shù)據(jù)傳輸;RS-485方式一般用于控制現(xiàn)場(chǎng)對(duì)多點(diǎn)實(shí)施控制,目前它還是產(chǎn)業(yè)控制中使用得最廣泛的一種方式;以太網(wǎng)方式可以實(shí)現(xiàn)遠(yuǎn)程控制和信息共享,但它的時(shí)延不可控,在實(shí)時(shí)性和保密性要求較高的控制系統(tǒng)中的應(yīng)用受到一定限制;現(xiàn)場(chǎng)總線技術(shù)是當(dāng)今自動(dòng)化領(lǐng)域技術(shù)發(fā)展的熱門(mén)之一,是應(yīng)用于控制現(xiàn)場(chǎng)、在微機(jī)化丈量設(shè)備之間實(shí)現(xiàn)雙向串行多節(jié)點(diǎn)數(shù)字通訊的系統(tǒng),也被稱為開(kāi)放式、數(shù)字化、多點(diǎn)通訊的底層控制網(wǎng)絡(luò)。現(xiàn)場(chǎng)總線的標(biāo)準(zhǔn)很多,其中CAN總線在國(guó)內(nèi)的發(fā)展速度最快,被以為是替換RS-485的最理想的方式之一。

            CAN總線規(guī)范已被ISO制定為國(guó)際標(biāo)準(zhǔn),其模型結(jié)構(gòu)有三層,包括OSI底層的物理層、數(shù)據(jù)鏈路層和頂層的應(yīng)用層,通訊速率最高可達(dá)1Mbps/40m,直接傳輸間隔最高可達(dá)10Km/5Kbps,可掛接設(shè)備數(shù)最高可達(dá)110個(gè)??偩€的電氣規(guī)范類(lèi)似于RS-485,采用雙線差分平衡傳輸,以兩線間的電壓差表示數(shù)字邏輯,分為“顯性”和“隱性”兩種邏輯。CAN總線采用面向內(nèi)容的編址方案,可以在總線中加進(jìn)一些新站而無(wú)需在硬件或軟件上進(jìn)行修改。該總線以報(bào)文為單位進(jìn)行數(shù)據(jù)傳送,報(bào)文的優(yōu)先級(jí)結(jié)合在11位標(biāo)識(shí)符中,確保不同實(shí)時(shí)性要求的數(shù)據(jù)以不同優(yōu)先級(jí)傳送,總線讀取中的沖突可通過(guò)位仲裁解決。CAN協(xié)議可使用五種檢查錯(cuò)誤的方法,保證了數(shù)據(jù)傳輸?shù)目煽啃?。利用CAN總線可以以較低的本錢(qián)、較高的實(shí)時(shí)處理能力和在惡劣的強(qiáng)電磁干擾環(huán)境下可靠地工作。

            綜上所述,根據(jù)目前104PC在產(chǎn)業(yè)控制中的應(yīng)用特點(diǎn)和需求,本設(shè)計(jì)的目的是按照PC/104標(biāo)準(zhǔn)設(shè)計(jì)通用型多功能擴(kuò)展通訊模塊,該通訊模塊包括兩個(gè)RS-232串行口、兩個(gè)RS-485接口和一個(gè)CAN總線接口。

          2 器件選型和總體設(shè)計(jì)方案

            要按照PC/104標(biāo)準(zhǔn)在通訊模塊中擴(kuò)展四個(gè)串行口和一個(gè)CAN總線接口,在模塊功耗和外型尺寸上限制很?chē)?yán),因而器件需選擇高集成度IC。

            異步通訊單元是串行口擴(kuò)展的核心器件,它在指定波特率和數(shù)據(jù)格式下完成并行數(shù)據(jù)和串行數(shù)據(jù)之間的相互轉(zhuǎn)換并完成相應(yīng)的控制。設(shè)計(jì)中選用了TI公司的高集成度異步通訊控制單元TL16C554芯片,它集成有4個(gè)ACE(異步通訊單元),共用了數(shù)據(jù)線和一些邏輯控制信號(hào),可以通過(guò)各自的片選信號(hào)選擇每一個(gè)ACE單元。每個(gè)收發(fā)單元都有自己的中斷請(qǐng)求、數(shù)據(jù)收發(fā)以及MODEM邏輯控制信號(hào),可以完成異步收發(fā)器的所有功能。

            RS-232C電平與TTL電平轉(zhuǎn)換通過(guò)Max213完成。Max213采用的是SSOP封裝,外型尺寸小,功耗小,一片Max213加上幾個(gè)小電容就可以完成一個(gè)標(biāo)準(zhǔn)RS-232C所有信號(hào)的電平轉(zhuǎn)換。

            RS-485電平與TTL電平轉(zhuǎn)換通過(guò)SN65LBC184實(shí)現(xiàn)。SN65LBC184是德州儀器公司推出的RS-485總線驅(qū)動(dòng)芯片,結(jié)構(gòu)簡(jiǎn)單,功耗小,由單芯片實(shí)現(xiàn)半雙工RS-485通訊。它采用1/2負(fù)載設(shè)計(jì),總線上答應(yīng)掛接64個(gè)單元,還具有防靜電、耐高壓沖擊和過(guò)熱保護(hù)功能,可以進(jìn)步系統(tǒng)的可靠性。

            CAN總線控制器是實(shí)現(xiàn)CAN總線接口擴(kuò)展的核心器件。它將來(lái)自104PC上ISA總線的并行數(shù)據(jù)按照CAN總線協(xié)議轉(zhuǎn)發(fā)出往,同時(shí)也按照CAN總線協(xié)議接收來(lái)自外部總線的數(shù)據(jù)。在設(shè)計(jì)中選用了PHILIPS公司的SJA1000獨(dú)立CAN總線控制器。SJA1000是PCA82C200的升級(jí)產(chǎn)品,集成了CAN總線邏輯鏈路層協(xié)議。它與PCA82C200在硬件和軟件上完全兼容,還具有支持?jǐn)U展CAN總線協(xié)議的PELI工作模式(支持CAN2.0B協(xié)議)。具體來(lái)說(shuō),SJA1000主要具有以下特點(diǎn):擴(kuò)展的64 Byte FIFO接收緩沖、支持11bit標(biāo)識(shí)碼和29bit標(biāo)識(shí)碼、支持標(biāo)準(zhǔn)和擴(kuò)展格式的幀信息的傳輸,還具有單/雙掩碼濾波器、仲裁丟失中斷、只聽(tīng)模式、自身信息接收、最近錯(cuò)誤寄存等眾多PELICAN模式擴(kuò)展功能。

            CAN總線電平與TTL電平的轉(zhuǎn)換通過(guò)PHILIPS公司的PCA82C250完成。該芯片與ISO11898標(biāo)準(zhǔn)兼容,支持最高達(dá)1Mbaud的高速傳輸,可連接110個(gè)節(jié)點(diǎn)。采用限斜率控制,降低射頻干擾,具有寬范圍的抗共模干擾、抗電磁干擾能力。

            設(shè)計(jì)中所涉及到的邏輯控制、時(shí)序控制由CPLD實(shí)現(xiàn)。這樣做的目的,主要出于以下考慮:

            ·假如采用與非門(mén),譯碼器、鎖存器等分立元件實(shí)現(xiàn)邏輯控制,大量的元件難以在PCB板上布局,而且使電路變得復(fù)雜,也降低了模塊的可靠性和抗干擾能力。

            ·CAN控制器SJA1000的對(duì)外操縱接口是一種地址/數(shù)據(jù)分時(shí)復(fù)用的接口,而PC104沒(méi)有地址/數(shù)據(jù)分時(shí)輸出的特性。因此,必須經(jīng)過(guò)期序轉(zhuǎn)換才能實(shí)現(xiàn)它們之間的連接。目前,一般采用8031單片機(jī)轉(zhuǎn)發(fā)數(shù)據(jù)的方式來(lái)實(shí)現(xiàn):通過(guò)8031連接CAN控制器,104PC利用IO端口讀寫(xiě)的方式將數(shù)據(jù)直接傳送給8031,或者將數(shù)據(jù)寫(xiě)于雙口RAM中,8031在另一個(gè)口讀取數(shù)據(jù),再由它對(duì)CAN總線控制器進(jìn)行操縱,將數(shù)據(jù)轉(zhuǎn)發(fā)出往。這種方法無(wú)疑又要增加器件和電路的復(fù)雜性。

            為此,設(shè)計(jì)了通過(guò)CPLD整合時(shí)序?qū)崿F(xiàn)104PC與CAN控制器連接的方法,由104PC分時(shí)送出操縱地址和操縱數(shù)據(jù),并由CPLD整合相關(guān)的邏輯控制信號(hào),滿足CAN控制器的時(shí)序要求。

            ·采用CPLD可以根據(jù)需要定義輸進(jìn)輸出腳,方便PCB板布局和走線。

            ·采用CPLD時(shí)不必?fù)?dān)心設(shè)計(jì)中所采用器件的種類(lèi)、數(shù)目,可以任意定義所需各種器件,從而優(yōu)化電路性能。

            ·采用CPLD可以通過(guò)軟件對(duì)電路進(jìn)行仿真,方便電路調(diào)試。

            ·采用CPLD可以在線修改其內(nèi)部邏輯,升級(jí)或修改BUG時(shí)可不改動(dòng)外部電路。

            CPLD芯片選用ALTERA公司的EPM7064SLC84-10,該芯片具有基于EEPROM的第二代MAX結(jié)構(gòu),支持通過(guò)JTAG引腳實(shí)現(xiàn)在系統(tǒng)編程。擁有64個(gè)宏單元,4個(gè)邏輯陣列塊,1250個(gè)可用門(mén)單元,支持5V/3.3V多電壓IO接口,可提供68個(gè)用戶IO引腳。
            
            根據(jù)以上的方案,通訊擴(kuò)展模塊的結(jié)構(gòu)如圖1。

          圖1 擴(kuò)展通訊模塊結(jié)構(gòu)

          3 硬件實(shí)現(xiàn)

            3.1地址譯碼電路

            本擴(kuò)展模塊共需占用七個(gè)IO地址,其中兩個(gè)IO地址供CAN控制器,四個(gè)IO地址供四串口異步通訊單元,一個(gè)IO地址供中斷共享電路。必須公道選擇IO地址,否則會(huì)引起系統(tǒng)不可預(yù)知的沖突。

            各種PC104計(jì)算機(jī)IO地址分配情況大體相同,以盛博SysCenterMoudle/SuperDx為例,選擇了110H~140H為擴(kuò)展通訊模塊的IO地址,地址分配見(jiàn)表1,邏輯譯碼結(jié)構(gòu)見(jiàn)圖2。

            表1 IO地址分配表

          IO地址分配表

          IO地址邏輯譯碼結(jié)構(gòu)

          圖2 IO地址邏輯譯碼結(jié)構(gòu)


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: 總線通訊模塊控制

          評(píng)論


          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();