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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > AT89S51單片機并行I/O端口的擴展

          AT89S51單片機并行I/O端口的擴展

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

          3.2 系統(tǒng)電路的調(diào)試
          3.2.1 調(diào)試方法
          在最小系統(tǒng)電路中按照圖1完成I/O端口的系統(tǒng)硬件電路。編寫系統(tǒng)軟件程序并在Keil C軟件環(huán)境下編譯、連接、調(diào)試程序,修改錯誤。用ISP編程器將實驗程序代碼寫入片內(nèi)ROM中。在系統(tǒng)硬件電路板上插上,開機運行,若3個數(shù)碼管依次顯示“0”、“1”、“2”,則說明系統(tǒng)工作正常。
          3.2.2 調(diào)試中出現(xiàn)的問題及原因
          在調(diào)試初期,由于未考慮8155復(fù)位比單片機復(fù)位慢,一開始未加100 ms延時程序,系統(tǒng)運行時出現(xiàn)3位數(shù)碼管顯示均為“8.”。為找出發(fā)生此現(xiàn)象的原因,將數(shù)碼管改由單片機P1口送段碼,P2口送位選通,將動態(tài)顯示的程序做相應(yīng)修改,調(diào)試通過后用ISP編程器將代碼寫入單片機片內(nèi)ROM中,開機運行,3個數(shù)碼管動態(tài)顯示“0”、“1”、 “2”。此實驗現(xiàn)象說明8155器件工作不正常。按照圖1連線,核實連線及端口地址無誤后,再次用ISP編程器將實驗程序代碼寫入AT89S51單片機片內(nèi)ROM中,開機運行,3個數(shù)碼管顯示均為“8.”。此現(xiàn)象說明8155器件工作不正常的原因不是硬件電路的問題。研究8155的特性參數(shù)后發(fā)現(xiàn)8155 復(fù)位比單片機復(fù)位慢,在系統(tǒng)初始化時存在時差。在系統(tǒng)復(fù)位后應(yīng)加100 ms的延時,以保證8155完成復(fù)位工作。在設(shè)計實驗程序開始加100 ms延時程序,將實驗程序代碼寫入AT89S51單片機片內(nèi)ROM中,開機運行,3個數(shù)碼管動態(tài)顯示“0”、“1”、“2”,達到設(shè)計目標。

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

          4 結(jié)論
          通過AT89S51與Intel 8155器件接口實現(xiàn)了I/O端口的,實現(xiàn)了3個數(shù)碼管動態(tài)顯示。由實驗可知,采用8155I/O端口方便、實用、成本低、且擴展的FO 端口可編程。由于Intel 8155內(nèi)部自帶256B的SRAM和一個14位的加1計數(shù)器,因此在單片機外擴展8155不僅增加了并行I/O端口,同時豐富了SRAM與計數(shù)器等資源。值得注意的是8155復(fù)位比單片機復(fù)位慢,在程序開始應(yīng)加延時程序,調(diào)整系統(tǒng)初始化時,應(yīng)調(diào)整Intel 8155和單片機的復(fù)位時差。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: 擴展 并行 單片機 AT89S51

          評論


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