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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 低成本串口擴(kuò)展方案在銀行柜臺(tái)密碼鍵盤設(shè)備中應(yīng)用

          低成本串口擴(kuò)展方案在銀行柜臺(tái)密碼鍵盤設(shè)備中應(yīng)用

          作者:成都國(guó)騰微電子有限公司 彭琦 劉毓梅 趙廣宇 時(shí)間:2004-09-16 來源:電子產(chǎn)品世界 收藏

          2004年5月A版

          摘  要:本文介紹了應(yīng)用GM8123實(shí)現(xiàn)銀行柜臺(tái)密碼鍵盤設(shè)備中的擴(kuò)展多串口的方案。

          關(guān)鍵詞:GM8123;多串口擴(kuò)展

          引言

            在銀行柜臺(tái)取款用的密碼鍵盤設(shè)備的開發(fā)中,為了和標(biāo)準(zhǔn)鍵盤、加密芯片和上位機(jī)這三部分模塊的接口通訊,就需要MCU具備三個(gè)標(biāo)準(zhǔn)的UART串口來和上述三個(gè)模塊的UART串口連接。而且通常各模塊的UART的波特率各不相同,設(shè)計(jì)也需要靈活的適應(yīng)需求。

            MCU在整個(gè)設(shè)備里面的扮演的主從方會(huì)根據(jù)操作的階段發(fā)生變化。當(dāng)設(shè)備處于等待模式時(shí),上位機(jī)是主方,而MCU是從方。MCU通過一個(gè)串口接收到主方的命令后再通過第二個(gè)串口啟動(dòng)標(biāo)準(zhǔn)鍵盤,并控制相應(yīng)的聲光提示,然后等待標(biāo)準(zhǔn)鍵盤返回的按鍵數(shù)據(jù)(用戶密碼的明文),同時(shí)做相應(yīng)的超時(shí)處理。接收到按鍵數(shù)據(jù)后進(jìn)行一些基本的合理性判斷處理,然后通過另一個(gè)串口將密碼明文發(fā)送給加解密模塊,然后接收加密后的密碼密文。最后再通過和上位機(jī)連接的串口將密碼密文上傳,然后恢復(fù)到等待狀態(tài)。在對(duì)標(biāo)準(zhǔn)鍵盤和加解密模塊進(jìn)行操作的時(shí)候,MCU扮演了通訊的主方。在整個(gè)流程中,可以看作是個(gè)半雙工的通訊方式,讓操作和控制更簡(jiǎn)單和更可靠。

          現(xiàn)有方案

            滿足上述應(yīng)用要求的方案有多種設(shè)計(jì)方式,各不相同,包括成本、可靠性、指標(biāo)都存在差異。根據(jù)目前的串口器件及設(shè)計(jì)原理歸納起來有以下幾種設(shè)計(jì)方案。

            方案一是使用多串口的單片機(jī)。其中雙串口的單片機(jī)的價(jià)格在40~70元左右,三串口的單片機(jī)價(jià)格更加昂貴,直接增加了系統(tǒng)設(shè)計(jì)的成本。同時(shí),由于各單片機(jī)的指令不同,以及由于串口功能的擴(kuò)展帶來的陌生寄存器的使用都增加了設(shè)計(jì)人員的工作量和難度。

            方案二是使用普通的單片機(jī)擴(kuò)展16C55X這種通過并口擴(kuò)展串口的IC器件來實(shí)現(xiàn)。這類器件的優(yōu)點(diǎn)是串口速度高,響應(yīng)迅速。但缺點(diǎn)也是器件本身成本高,使用復(fù)雜,占用單片機(jī)的IO資源多,導(dǎo)致某些設(shè)計(jì)需控制外部聲光功能時(shí)還需要外擴(kuò)8255來擴(kuò)展并口資源,無形中又增加了PCB板面積、成本和設(shè)計(jì)難度。

            方案三是軟件模擬串口功能。其優(yōu)點(diǎn)是成本低,但可靠性和串口指標(biāo)都無法控制。硬件串口工作中對(duì)每一個(gè)BIT的采樣是12次,而軟件模擬最多只能做到2次,大多只有1次,所以通訊的可靠性很難保證。同時(shí)軟件模擬的串口很難達(dá)到較高的波特率,所以限制了通訊的應(yīng)用。而且軟件編寫的難度高,程序工作量大,對(duì)研發(fā)人員的要求高,也局限了這種方案的推廣應(yīng)用。

            其它方案還包括使用兩到三個(gè)普通單片機(jī)來達(dá)到需要的串口數(shù)量,然后相互之間通過自定義的并口或模擬的同步串口通訊協(xié)議來實(shí)現(xiàn)通訊等方案。

          低成本應(yīng)用靈活的新方案

            通過以上方案可以看出,現(xiàn)有的實(shí)現(xiàn)方案很難在成本和指標(biāo)上兩全齊美。成都國(guó)騰微電子有限公司推出的一種全新方式的串口擴(kuò)展芯片GM812X系列產(chǎn)品為上述設(shè)計(jì)帶來了一種新的、低成本和應(yīng)用簡(jiǎn)單的。

            GM812X系列串口擴(kuò)展芯片可為用戶提供最簡(jiǎn)單和高性能的,將一個(gè)標(biāo)準(zhǔn)串口擴(kuò)展成3或5個(gè)標(biāo)準(zhǔn)串口。該系列芯片子串口最高波特率達(dá)38.4Kbps。該芯片提供兩種工作模式:?jiǎn)瓮ǖ拦ぷ髂J胶投嗤ǖ拦ぷ髂J剑纯梢灾付ㄒ粋€(gè)子串口和母串口以相同的波特率單一的工作,也可以讓所有子串口在母串口波特率基礎(chǔ)上分頻同時(shí)工作。用戶可根據(jù)需要靈活選擇。該芯片母串口和子串口的工作波特率可由軟件調(diào)節(jié),而不需要修改外部電路和晶振頻率。UART數(shù)據(jù)格式10位或11位可選。

            GM8123可以將一個(gè)標(biāo)準(zhǔn)串口擴(kuò)展成3個(gè)標(biāo)準(zhǔn)串口,GM8125可擴(kuò)展5個(gè)標(biāo)準(zhǔn)串口。本文選擇GM8123作為串口擴(kuò)展的IC。圖1為GM8123的功能框圖。

            在本設(shè)計(jì)中,GM8123即可滿足設(shè)計(jì)的需要。例如單片機(jī)采用最常用和便宜的AT89C52,將GM8123的母串口和單片機(jī)的串口相連接,再將標(biāo)準(zhǔn)鍵盤接口、加解密模塊的串口和上位機(jī)的串口分別連接到GM8123的三個(gè)擴(kuò)展串口上。圖2為方案的系統(tǒng)設(shè)計(jì)框圖。

            假設(shè)上位機(jī)和加解密模塊的通訊波特率為9600bps,標(biāo)準(zhǔn)鍵盤的通訊波特率為1200bps。圖3為簡(jiǎn)單的單片機(jī)程序設(shè)計(jì)中與通訊相關(guān)的狀態(tài)機(jī)流程圖。

            該芯片的操作和編程應(yīng)用都很簡(jiǎn)單,從圖3可以看出對(duì)GM8123的操作主要是通訊母串口的更改和波特率的設(shè)定,而且操作方式和編程基本相同。由于GM8123工作在單通道模式下,可以看作對(duì)母串口和子串口之間進(jìn)行透明傳輸處理,所以無須對(duì)GM8123進(jìn)行波特率的設(shè)置。

            以下是在等待狀態(tài)下轉(zhuǎn)變到接收標(biāo)準(zhǔn)鍵盤按鍵數(shù)據(jù)的過程中指定子串口端口和從9600bps修改到1200bps的C51程序的部分示例代碼:

          //GM8123地址控制線聲明

          sbit SRADD0 = P3^4;     // GM8123地址線SRADD0控制

          sbit SRADD1 = P3^5;    // GM8123地址線SRADD1控制

          sbit STADD0 = P3^6;     // GM8123地址線STADD0控制

          sbit STADD1 = P3^7;    // GM8123地址線STADD1控制

          void main(void)

          {

          ............

          //初始化設(shè)置

          SCON = 0xC0;       //根據(jù)需要設(shè)置

          TH1 = 0xFD;       //裝入定時(shí)器1初值,設(shè)置MCU

                 工作波特率為9600bps

          TL1 = 0xFD;

          PCON = 0x00;

          TR1 = 1;       //啟動(dòng)定時(shí)器1

          ............

                 //設(shè)置子串口三和上位機(jī)通訊

          STADD0 = 1;       //選擇子串口3發(fā)送

          STADD1 = 1;

          SRADD0 = 1;       //選擇子串口3接收

          SRADD1 = 1;

          ............  //接收上位機(jī)數(shù)據(jù)的相關(guān)處理

          //切換到和串口一和標(biāo)準(zhǔn)鍵盤通訊

          TR1 = 0;

          TH1 = 0xE8; //裝入定時(shí)器1初值,設(shè)置MCU

                 工作波特率為1200bps

          TL1 = 0xE8;

          PCON = 0x00;

          TR1 = 1;

          STADD0 = 1;       //選擇子串口1發(fā)送

          STADD1 = 0;

          SRADD0 = 1;       //選擇子串口3發(fā)送

          SRADD1 = 0;

          ............  //鍵盤控制和按鍵

          }

           

          結(jié)語

            從上述內(nèi)容可以看出,通過GM8123實(shí)現(xiàn)3個(gè)串口的應(yīng)用非常簡(jiǎn)單和靈活,程序工作量少,控制容易。并且以上設(shè)計(jì)只應(yīng)用到了GM8123的單通道模式,尚未發(fā)揮出該芯片的所有功能和靈活性。芯片的外部控制少,應(yīng)用靈活,編程使用簡(jiǎn)單,適合于大多數(shù)需要多串口擴(kuò)展的應(yīng)用場(chǎng)合。比如:

            但是應(yīng)用該芯片需要注意的是GM812X系列接口IC在多通道模式下不能將各個(gè)子串口的波特率設(shè)定的不同,不能滿足多串口同時(shí)進(jìn)行不同波特率數(shù)據(jù)通信的應(yīng)用設(shè)計(jì)。另外,GM812X系列現(xiàn)有的IC型號(hào)不能滿足手持設(shè)備的低功耗要求,以及有38.4Kbps的最高波特率限制。■



          關(guān)鍵詞: 串口擴(kuò)展方案 嵌入式

          評(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); })();