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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于C8O51F34O雙串口電梯遠(yuǎn)程控制的系統(tǒng)設(shè)計(jì)

          基于C8O51F34O雙串口電梯遠(yuǎn)程控制的系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2009-10-23 來源:網(wǎng)絡(luò) 收藏

          卡片的電氣部分由一個(gè)元件和AISC組成,卡片中的天線是只有線圈,很適合封狀到卡片中。ASIC由一個(gè)高速(106KB波特率)的接口,一個(gè)控制單元和一個(gè)EEPROM組成。讀卡器向IC發(fā)一組固定頻率的電磁波,卡內(nèi)有一個(gè)IC串聯(lián)諧振電路,其頻率與讀寫器的頻率相同,這樣便產(chǎn)生電磁共振,從而使電容內(nèi)有了電荷,在電容的另一端接有一個(gè)單向通的電子泵,將電容內(nèi)的電荷送到另一個(gè)電容內(nèi)儲(chǔ)存,當(dāng)儲(chǔ)存積累的電荷達(dá)到額定電壓時(shí),此電源可作電源為其他電路提供工作電壓,將卡內(nèi)數(shù)據(jù)發(fā)射出去或接收讀寫器的數(shù)據(jù)。非接觸式IC卡控制輸入輸出電路如圖5所示:

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

          2.軟件
          2.1 主程序流程圖
          主程序流程圖如圖6所示。

          2.2 中斷處理模塊的通訊
          首先要解決時(shí)間沖突問題,硬件接受或發(fā)送一個(gè)字節(jié)的時(shí)間為1ms左右,而軟件接受或發(fā)送一個(gè)字節(jié)的時(shí)間僅幾μs,這就為雙同時(shí)通訊提供了條件。同時(shí)通訊實(shí)際上是將CPU時(shí)間分成很小的時(shí)間片,假設(shè)較快的發(fā)送或接受一個(gè)字節(jié)的最長時(shí)間為TRbyteMax,則CPU最長時(shí)間片一般應(yīng)小于TRbyteMax/2,當(dāng)然在接受或發(fā)送完一幀數(shù)據(jù)之后的間隙,CPU時(shí)間片可以適當(dāng)延長,作一些必要的數(shù)據(jù)處理。其次要解決數(shù)據(jù)沖突問題,2個(gè)通訊分別使用各自的接受發(fā)送數(shù)據(jù)緩沖區(qū)和控制變量,以減少中斷保護(hù)數(shù)據(jù)量和防止數(shù)據(jù)沖突。當(dāng)主程序、串口中斷處理程序和其他中斷處理程序往存儲(chǔ)器(與上位機(jī)的通訊用存儲(chǔ)器)中寫數(shù)據(jù)時(shí),需在盡量短的時(shí)間內(nèi)關(guān)閉另一個(gè)串口中斷,關(guān)閉中斷時(shí)間應(yīng)小于幾百μs,防止其他程序數(shù)據(jù)沒有寫完之前串口讀此數(shù)據(jù)。串口通訊數(shù)據(jù)幀中采用高可靠性的循環(huán)冗余校驗(yàn)(CRC)技術(shù),極大地降低了數(shù)據(jù)誤碼率,在連續(xù)運(yùn)行幾個(gè)月的大量數(shù)據(jù)中沒有發(fā)現(xiàn)誤碼。

          3.結(jié)語

          設(shè)計(jì)C8051F340雙串口來進(jìn)行,采用模塊化、結(jié)構(gòu)化、面向?qū)ο笤O(shè)計(jì)方法,使具有高可靠性和高實(shí)時(shí)性。同時(shí)給出了硬件電路模塊和軟件程序圖,其中硬件電路圖通用性強(qiáng),便于參考和設(shè)計(jì)。此外,IC卡電路,雙串口通信也為系統(tǒng)的可靠性,安全性提供了保證。


          上一頁 1 2 3 4 下一頁

          評論


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