王峻崧
【摘 要】英國的實驗中心電子開發(fā)的Proteus軟件支持模擬電路,數(shù)字電路,單片機和模擬ARM的仿真。在Proteus7.5開始,可以支持8086 CPU,它為計算機學(xué)習(xí)和研究提供了極大的方便。本文從實際應(yīng)用出發(fā),在Proteus軟件中模擬LED右流水燈亮的過程。
【關(guān)鍵詞】8086處理器;微機原理;仿真
一、引言
隨著科學(xué)技術(shù)的不斷發(fā)展,微型計算機已廣泛應(yīng)用于社會和經(jīng)濟的各個方面,因為它們的體積小,重量輕,功耗低,結(jié)構(gòu)簡單,可靠性高,使用方便,以及擁有高性價比。而嵌入式系統(tǒng)的發(fā)展,使微型計算機系統(tǒng)在通信、機電一體化等方面的應(yīng)用更加廣泛。
本次設(shè)計,通過匯編語言控制開關(guān)的狀態(tài),用8086CPU控制8255A的端口PA,再利用74ls245芯片通過控制8只LED發(fā)光二極管,PB口接1只開關(guān),編寫程序LED燈右循環(huán)亮。
二、設(shè)計方案
2.1設(shè)計原理
本次設(shè)計的內(nèi)容為模擬流光燈控制系統(tǒng)設(shè)計與實現(xiàn)。根據(jù)需要,選擇的芯片有8086cpu芯片,74273芯片,74ls254芯片,8255A可編程并行接口。然后編寫程序,用Proteus8軟件進行仿真,控制8個LED燈實現(xiàn)流水效果。
2.2設(shè)計環(huán)境及設(shè)備
PC機一臺、windows 10系統(tǒng)
2.3模擬燈右循環(huán)亮工作原理
2.3.1現(xiàn)象:右向移動流水燈的實驗現(xiàn)象是首先最左邊的燈亮,然后是最左邊的燈滅,此時左起第二個燈亮,依次輪流亮,直到第八個燈亮。然后循環(huán)上述過程。
2.3.2原理:右向移動流水燈是根據(jù)發(fā)光二極管的顯示原理,首先點亮最右的二極管,然后進位置一,通過帶進位的循環(huán)右移指令編寫程序以實現(xiàn)模擬流水燈的右向移動。
三、系統(tǒng)硬件介紹
3.1 8086處理器介紹
8086CPU是INTEL系列微處理器中具有代表性的高性能16位微處理器.它使用的HMOS工藝制造,外形封裝為雙列直插,有40個引腳。使用單個5V電源,8086處理器的主時鐘頻率為4.77MHZ。8086 CPU具有16位數(shù)據(jù)總線和20位地址總線,所以它的直接尋址空間是1MB。
8086CPU采用了2級流水線的處理方式,8086CPU內(nèi)部設(shè)置了兩個獨立的部分總線接口部件(BIU)和指令執(zhí)行部件(EU)來實現(xiàn)取指令與執(zhí)行指令的流水線操作??偩€接口部件負責取指令,存取操作數(shù)和存結(jié)果,即負責所有的外部操作。指令執(zhí)行部件負責執(zhí)行指令,即從BIU的指令隊列中取出指令,并執(zhí)行指令,不必訪問存儲器或I/O端口,節(jié)省了取指令時間,加快程序執(zhí)行速度。
3.2 8255芯片介紹
8255芯片是來自于Intel家族,型號8255用24個輸入/輸出引腳和可編程通用并行輸入/輸出接口電路(改性8255A和8255A-5)的可編程外圍接口電路。它是一個40針雙列直插集成電路,并且使用單個+ 5V電源。
8255芯片一種并行輸入輸出LSI芯片,一個多功能I/O設(shè)備,可以被用作CPU總線與外圍設(shè)備之間的接口。
8255芯片有24可編程I/O端口,即,3個組的8位I/O端口中的端口PA,PB端口和PC端口。它們可以被分為兩個組,每組12位I/O端口。A組包括端口A和端口C(高4位,PC4到PC7)。B組包括端口B和端口C(低4位,PC0到PC3)。A組可以被設(shè)置為基本的I/O端口,STROBE I/O閃控,雙向I/O 3點的模式;B組只能被設(shè)置為基本的I/O或閃控I/O模式,即完全由控制寄存器的控制字來確定。
3.3 74273芯片介紹
74273芯片是一個8位的數(shù)據(jù)鎖存器。
第1腳是復(fù)位腳,平時應(yīng)保持高電平;低電平時1Q~8Q輸出全部低電平,同時內(nèi)部寄存器全部清零。
1D~8D為數(shù)據(jù)輸入,在11腳(CLK)從低電平升變到高電平時(即上沿),1D~8D被保存到74273寄存器中,同時1Q~8Q輸出對應(yīng)1D~8D的電平。
第1腳保持高電平,第11腳為低電平、高電平、高電平到低電平跳變(下升沿)這些狀態(tài)對輸出1Q~8Q及74273內(nèi)部保存的數(shù)據(jù)無影響。
3.4 74ls245
74LS245是用于驅(qū)動LED或其它設(shè)備通常使用的芯片。它是一個8信道的同相三態(tài)雙向總線收發(fā)器,其在兩個方向上傳送數(shù)據(jù)。
第1腳DIR(T/R),為輸入輸出端口轉(zhuǎn)換用,DIR="1"高電平時信號由"A"端輸入"B"端輸出,DIR="0"低電平時信號由"B"端輸入"A"端輸出。
第2~9腳“A”信號輸入輸出端,A0=B0,A7=B7,A0與B0是一組,如果DIR=“1”O(jiān)E=“0”則A1輸入B1輸出,其它類同。如果DIR=“0”O(jiān)E=“0”則B1輸入A1輸出,其它類同。
第11~18腳“B”信號輸入輸出端,功能與“A”端一樣,不再描述。
第19腳OE,使能端,若該腳為“1”A/B端的信號將不導(dǎo)通,只有為“0”時A/B端才被啟用,該腳也就是起到開關(guān)的作用。
第10腳GND,電源地。
第20腳VCC,電源正極。
四、模擬流水燈軟件設(shè)計
4.1編程程序?qū)崿F(xiàn)
CODE SEGMENT 'CODE'
ASSUME CS:CODE
START:MOV DX,06H
MOV AL,82H
OUT DX,AL
MOV DX,00H
MOV AH,0FEH
BG: MOV AL,AH
OUT DX,AL
CALL DELAY
MOV DX,02H
IN AL,DX
TEST AL,01H
JNZ BG
ROR AH,1
MOV DX,00H
JMP BG
DELAY PROC NEAR
MOV BL,100
DELAY2: MOV CX,374
DELAY1: NOP
NOP
LOOP DELAY1
DEC BL
JNZ DELAY2
RET
DELAY ENDP
CODE ENDS
END START
五、仿真圖
六、結(jié)果分析
點擊軟件的右下角開始模擬按鈕,然后關(guān)閉K0開關(guān)??梢杂^察到的是,在右上角的LED燈從左到右閃爍,不停止。
基于這次試驗,讓我們對Proteus軟件有了更深的認識,對微機原理以及技術(shù)有了更深層次的了解,在21世紀新時代,微機原理會得到更深層次的發(fā)展。我們的社會也會更加的幸福。
【參考文獻】
[1]田輝主編.微機原理與接口技術(shù)[M].高等教育出版社,2011.