新聞中心

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

AT89S51單片機(jī)并行I/O端口的擴(kuò)展

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

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

本文引用地址:http://butianyuan.cn/article/173600.htm

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


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

評(píng)論


相關(guān)推薦

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

關(guān)閉