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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > I/O擴(kuò)展電路GM8166在嵌入式鍋爐系統(tǒng)中的應(yīng)用

          I/O擴(kuò)展電路GM8166在嵌入式鍋爐系統(tǒng)中的應(yīng)用

          ——
          作者:張秀松,何仲,顧家茜 時(shí)間:2007-01-26 來源:《國(guó)外電子元器件》 收藏
          1 引言

          鍋爐控制系統(tǒng)是一個(gè)典型的大慣性、大滯后、多變量的過程控制系統(tǒng),涉及到壓力、溫度、水位等多個(gè)物理參數(shù)的檢測(cè)與控制,需要同時(shí)控制循環(huán)泵、補(bǔ)水泵、加熱裝置、自動(dòng)排除故障等。該系統(tǒng)有32路數(shù)字輸入信號(hào)、32路數(shù)字輸出信號(hào)、11路模擬量輸入信號(hào)和8路模擬量輸出信號(hào),因此所需要的硬件電路多,控制復(fù)雜,筆者以atmel公司的at91rm9200為處理器設(shè)計(jì)出了一款具有32位高速數(shù)據(jù)處理能力,處理速度可達(dá)200mi/s,并配有l(wèi)cd、觸摸屏、sd卡、cpld、音頻、網(wǎng)絡(luò)、usb及串行接口等多項(xiàng)功能的嵌入式工業(yè)鍋爐控制系統(tǒng)。

          本文引用地址:http://www.ex-cimer.com/article/21230.htm

          在系統(tǒng)設(shè)計(jì)過程中,遇到了i/o口嚴(yán)重不足的問題,雖然at91rm9200具有122個(gè)通用i/o口,但嵌入式系統(tǒng)本身的各項(xiàng)功能實(shí)現(xiàn)占用了大量的i/o口,剩下用于鍋爐控制的已不多,所以需要進(jìn)行i/o口擴(kuò)展,一般采用的解決方案是利用74hc573、74ls164、74ls165、82c55等電路來實(shí)現(xiàn)i/o擴(kuò)展,但使用上述器件存在pcb面積增大、成本高等缺點(diǎn),這里筆者采用兩個(gè)成都國(guó)騰微電子有限公司開發(fā)的gm8166電路,通過串行輸入并行輸出、并行輸入串行輸出轉(zhuǎn)換即可完成鍋爐32路樹數(shù)字輸入和32路數(shù)字輸出控制的i/o口擴(kuò)展。

          2 gm8166的主要特點(diǎn)

          gm8166通過串行輸入并行輸出,并行輸入串行輸出,并入并出轉(zhuǎn)換完成i/o口的擴(kuò)展,最高工作頻率為10mhz,用于配合mcu完成對(duì)多個(gè)外圍電路的控制和信號(hào)采集工作。同時(shí)可接入spi總線,滿足了更多需求,設(shè)計(jì)時(shí)充分考慮了工作溫度范圍要求和抗電磁干擾能力,完全適用于工業(yè)領(lǐng)域。

          cm8166的主要特性如下:

          提供32位并行數(shù)據(jù)i/o口,可通過模式選擇實(shí)現(xiàn)8位、16位、24位、32位的數(shù)據(jù)轉(zhuǎn)換,也可通過普通i/o口模擬串口實(shí)現(xiàn)0-32任意位數(shù)據(jù)轉(zhuǎn)換;

          既可實(shí)現(xiàn)串并/并串轉(zhuǎn)換,又可實(shí)現(xiàn)并行口切換輸入/輸出功能;

          所有i/o口均內(nèi)接上拉電阻;

          鎖存輸出,有輸出鎖存控制端;

          有級(jí)聯(lián)輸入/輸出端,方便實(shí)現(xiàn)級(jí)聯(lián);

          具備spi總線接口,可方便地接入spi總線;

          與ttl兼容;

          工作電壓為2.7v-6.5v;

          最大輸出電流為10ma,最高工作頻率為10mhz;

          工作環(huán)境溫度范圍為-40℃-85℃,滿足工業(yè)級(jí)標(biāo)準(zhǔn)。

          3 gm8166的系統(tǒng)結(jié)構(gòu)和引腳功能

          3.1 系統(tǒng)結(jié)構(gòu)

          gm8166由控制模塊、移位寄存器模塊和i/o口模塊組成,圖1為gm8166的系統(tǒng)結(jié)構(gòu)框圖。

          3.2 引腳功能

          gm8166采用qfp52和sdip52兩種封裝形式。用戶可根據(jù)需要進(jìn)行選擇。gm8166的引腳功能說明如下:

          reset:復(fù)位信號(hào),高電平復(fù)位。

          clk:時(shí)鐘信號(hào),上升沿有效。

          csn:片選信號(hào),低電平有效。

          oc/en:串行輸入并行輸出轉(zhuǎn)換或并行口轉(zhuǎn)換輸入/輸出時(shí)做并行輸出允許控制信號(hào):oc/en=0:并行輸出允許;oc/en=1:并行輸出禁止。并入串行輸出模式下作為并行輸入置數(shù)和串行移位控制信號(hào):oc/en=0:允許并行輸入置數(shù),oc/en=1:串行移位,禁止并行輸入。

          le:并行輸出數(shù)據(jù)鎖存信號(hào),le=0表示并行輸出數(shù)據(jù)鎖存;le=1表示并行輸出數(shù)據(jù)不鎖存。

          sel:接入spi總線控制信號(hào),接入spi總線時(shí),sel引腳固定接地,不需要接入spi總線時(shí),sel引腳接固定電源。

          modsel:并串/串并轉(zhuǎn)換模式和并行口轉(zhuǎn)換模式選擇信號(hào),modsel=0;選擇并串/串并轉(zhuǎn)換模式;modsel=1;選擇并行口切換模式。

          sp/mux:并串和串并轉(zhuǎn)換選擇信號(hào),sp/mux=0;選擇并行輸入串行輸出模式,sp/mux=1:選擇串行輸出并行輸出模式,并行口切換模式下兼做1路輸入3路輸出和3路輸入1路輸出選擇信號(hào),sp/mux=0:選擇1路輸出3路輸出模式;sp/mux=1:選擇3路輸入1路輸出模式。

          m0、m1:工作方式控制信號(hào),m0m1為00時(shí)為8位數(shù)據(jù)傳輸模式,01時(shí)為16位數(shù)據(jù)傳輸模式,10時(shí)為24位傳輸模式,11時(shí)為32位數(shù)據(jù)傳輸模式。

          pdata:32位輸入/輸出數(shù)據(jù)口。

          sdata:(mosi):串行數(shù)據(jù)輸入/輸出口;spi總線工作模式下做為mosi口。

          cdata:輸入/輸出級(jí)聯(lián)數(shù)據(jù)口,并行輸入串行輸出模式下為輸入口,串行輸入并行輸出模式下為輸出口。

          4 gm8166在嵌入式鍋爐中的應(yīng)用

          4.1 硬件電路設(shè)計(jì)

          gm8166共有三大功能,滿足三種不同應(yīng)用。串并/并串轉(zhuǎn)換功能為并行口比較緊張的系統(tǒng)通過串口擴(kuò)展32位并行口;并行口切換功能可以將1組8位并行口擴(kuò)展成3組8位并行口,通過控制信號(hào)在3組并口中切換完成輸入/輸出功能;spi總線功能使該器件可以接入spi總線中作為從設(shè)備進(jìn)行數(shù)據(jù)收/發(fā),同樣完成串并轉(zhuǎn)換的功能,這里筆者采用兩個(gè)gm8166器件分別實(shí)現(xiàn)32數(shù)據(jù)并行輸入串行輸出轉(zhuǎn)換和32數(shù)據(jù)的串行輸入并行輸出轉(zhuǎn)換,擴(kuò)展為64位i/o口,從而實(shí)現(xiàn)對(duì)鍋爐控制系統(tǒng)數(shù)字量輸入輸出信號(hào)的控制與傳輸,gm8166與at91rm9200的硬件原理圖如圖2。

          如圖2所示,at91rm9200的pa口與gm8166連接。gm8166-1設(shè)為32位數(shù)據(jù)串行輸入并行輸出模式:at91rm9200通過pa0口連續(xù)發(fā)送32位數(shù)據(jù)到gm8166-1,在該模式下,當(dāng)reset信號(hào)為“1”時(shí),gm8166移位寄存器復(fù)位,即所有的寄存器的值都為0;當(dāng)csn為0,reset為0,同時(shí)有時(shí)鐘輸入時(shí),gm8166對(duì)移位寄存器進(jìn)行移位,32個(gè)時(shí)鐘信號(hào)后,32位數(shù)據(jù)全部輸出到寄存器輸出口,由le和oc/en控制pdata[31:0]的輸出狀態(tài),從而實(shí)現(xiàn)對(duì)鍋爐的控制。

          gm8166-2設(shè)為32數(shù)據(jù)并行輸入串行輸出模式:at91rm9200通過pa12口連續(xù)接收32位數(shù)據(jù),在該模式下,當(dāng)reset信號(hào)為1時(shí),gm8166移寄存器復(fù)位,即所有寄存器的值都為0;當(dāng)csn為0,reset為0,oc/en信號(hào)為0時(shí),同時(shí)來一個(gè)時(shí)鐘上升沿,gm8166將輸入端口(32位)數(shù)據(jù)并行保存到寄存器中;當(dāng)reset為0和oc/en信號(hào)為1時(shí),gm8166對(duì)移位寄存器進(jìn)行移位,從而實(shí)現(xiàn)對(duì)鍋爐信號(hào)的采集。

          4.2 軟件設(shè)計(jì)

          本系統(tǒng)軟件均采用c語言編寫。軟件示例如下。

          4.2.1 32位數(shù)據(jù)串行輸入并行輸出轉(zhuǎn)換

          4.2.2 32位數(shù)據(jù)并行輸入串行輸出轉(zhuǎn)換

          如圖2所示,用pa1作為gm8166-1的clk,用pa0作sdata,用pa11作為gm8166-2的clk,用pa12作sdata,用軟件模擬產(chǎn)生串行接口的傳輸過程,編程時(shí),應(yīng)注意gm8166的內(nèi)部移位寄存器都是在 clk的上升沿移位時(shí),所以讀入時(shí)應(yīng)在clk的上升沿之后讀入sdata的狀態(tài),寫出時(shí)應(yīng)在clk上升沿之前置sdata相應(yīng)電平。

          5 結(jié)束語

          嵌入式鍋爐控制器中使用了兩個(gè)gm8166器件,實(shí)現(xiàn)了鍋爐中22個(gè)溫度、壓力、水位、燃燒機(jī)、風(fēng)機(jī)等狀態(tài)的檢測(cè)和10個(gè)手動(dòng)按鍵的輸入;32個(gè)水泵、變頻器、燃燒機(jī)、風(fēng)機(jī)的啟停以及輕重油選擇、報(bào)警等開關(guān)量的輸出,解決了使用8255等通用并行i/o電路所帶來的成本高,功耗大和占用電路板面積大等系統(tǒng)結(jié)果設(shè)計(jì)與安裝方面的問題。



          關(guān)鍵詞:

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(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); })();