資源描述:
《8086課程設(shè)計(jì):8086按鍵控制流水燈設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、課程設(shè)計(jì)題目學(xué)院專(zhuān)業(yè)班級(jí)姓名指導(dǎo)教師8086按鍵控制流水燈設(shè)計(jì)機(jī)電工程學(xué)院自動(dòng)化自動(dòng)化2016年12月30日引言微型計(jì)算機(jī)簡(jiǎn)稱(chēng)微機(jī),由于具備人腦某些功能,所有乂叫做微機(jī)。是由大規(guī)模集成電路組成的、體積較小的電子計(jì)算機(jī)。它是以微處理器為基礎(chǔ),配以?xún)?nèi)存儲(chǔ)器及輸入輸出接口電路和相應(yīng)的輔助電路構(gòu)成的裸機(jī)。把微型計(jì)算機(jī)集成在一個(gè)芯片上即構(gòu)成單片微型計(jì)算機(jī)。學(xué)習(xí)微機(jī)原理與接口技術(shù),主要內(nèi)容包括微型計(jì)算機(jī)體系結(jié)構(gòu)、8086微處理器和指令系統(tǒng)、匯編語(yǔ)言、設(shè)計(jì)以及微型計(jì)算機(jī)各個(gè)組成部分,而其中很大一塊就是匯編語(yǔ)言的學(xué)習(xí)。匯編語(yǔ)言是面向機(jī)器的程序設(shè)計(jì)語(yǔ)言,也是利用計(jì)算機(jī)所有硬件特性并
2、能直接控制硬件的語(yǔ)言。用匯編語(yǔ)言編寫(xiě)的程序由于目標(biāo)程序占用內(nèi)存少,運(yùn)行速度快,它有著高級(jí)語(yǔ)言不可替代的用途。因此,學(xué)習(xí)匯編語(yǔ)言是很必要的,通過(guò)學(xué)習(xí)匯編語(yǔ)言可以體會(huì)它的作用。通過(guò)本次課程設(shè)計(jì)讓我們進(jìn)一步深入?yún)R編語(yǔ)言的學(xué)習(xí),掌握簡(jiǎn)單的接口設(shè)計(jì)技術(shù),將理論知識(shí)聯(lián)系實(shí)際,進(jìn)一步學(xué)習(xí)微機(jī)原理與接口技術(shù)的相關(guān)知識(shí),為以后深入學(xué)習(xí)打下良好的基礎(chǔ)。1總體方案論證1.1功能分析此次課程設(shè)計(jì)的要求為,設(shè)計(jì)微型計(jì)算機(jī)最小系統(tǒng),實(shí)現(xiàn)跑馬燈的模擬顯示功能。具體要求為:(1)、輸入設(shè)備三個(gè)啟動(dòng)按鈕、一個(gè)停止按鈕,輸岀設(shè)備為八個(gè)跑馬燈;(2)、三個(gè)啟動(dòng)按鈕對(duì)應(yīng)三種跑馬燈顯示效果,按下任意一個(gè)啟
3、動(dòng)按鈕,跑馬燈顯示對(duì)應(yīng)的效果,按下停止按鈕則跑馬燈全部熄滅。由上分析可知,我們的硬件的電路需要另行搭建,電路中需包含四個(gè)按鈕和八個(gè)跑馬燈以及相關(guān)芯片,既有輸入設(shè)備乂有輸出設(shè)備,經(jīng)過(guò)分析可以使用芯片8255A來(lái)實(shí)現(xiàn)輸入與輸出,再加上鎖存地址芯片74LS273、譯碼芯片74LS154以及相關(guān)門(mén)電路即可構(gòu)成本設(shè)計(jì)的硬件電路基礎(chǔ)。進(jìn)一步分析最終決定用8255A的A口作為輸出去控制跑馬燈,B口作為按鈕信號(hào)輸入,CPU通過(guò)接收輸入信號(hào)從而發(fā)岀對(duì)應(yīng)命令去控制8255A芯片A口輸出,從而A口輸出和應(yīng)電平控制跑馬燈有規(guī)律的亮滅。連接好硬件電路后的主要任務(wù)就是編寫(xiě)相應(yīng)程序,通過(guò)程序去
4、控制和調(diào)度硬件電路的輸入與輸出。1■2系統(tǒng)連接圖設(shè)計(jì)8255A是一種通過(guò)可編程并行I/O接口芯片。廣泛用于兒乎所有系列的微機(jī)系統(tǒng)中,8255A具有三個(gè)帶鎖存或緩沖的數(shù)據(jù)端口,可與外設(shè)并行進(jìn)行數(shù)據(jù)交換,8255A有多種操作方式,通用性較強(qiáng),可為CPU與外設(shè)之間提供輸入/輸岀通道。8255A和各端口內(nèi)具有中斷控制邏輯,在外設(shè)與CPU之間可用中斷方式進(jìn)行信息交換,使用條件傳輸方式時(shí)可用“聯(lián)絡(luò)”線(xiàn)進(jìn)行控制。在本次課程設(shè)計(jì)中,我們運(yùn)用8255A為CPU與外設(shè)之間提供輸入輸岀輸岀通道來(lái)實(shí)現(xiàn)對(duì)跑馬燈花樣變換的控制。8086微處理器,選擇最小工作模式,所有的總線(xiàn)控制信號(hào)均由808
5、6產(chǎn)生;8086CPU的地址數(shù)據(jù)總線(xiàn)AD15-AD0和地址狀態(tài)總線(xiàn)A16/S3-A19/S6是復(fù)用的,必須通過(guò)地址鎖存器把地址總線(xiàn)和數(shù)據(jù)總線(xiàn)分離。跑馬燈硬件電路如圖1所示。電路包括8個(gè)LED彩燈、三片74LS273、一片74LS154、一片8086CPU、一片8255A以及若干導(dǎo)線(xiàn)和電阻。用LED可以觀(guān)測(cè)在不同按鍵輸入下,跑馬燈花樣的變化效果。如圖1所示我們利用啟動(dòng)按鈕作為輸入信號(hào),通過(guò)8255A端口擴(kuò)展芯片,調(diào)節(jié)輸出端口的電平變化,來(lái)控制共陽(yáng)極的LED燈的亮與滅,實(shí)現(xiàn)跑馬燈不同的花樣變化。圖1跑馬燈硬件電路圖一dwS"8?£辟器二二二二±1.2.1鎖存控制電
6、路鎖存控制屯路屯路如圖2所示,在微控制器單元(MCU)中,寄存器是十分重要的資源。寄存器的主要作用是快速寄存算術(shù)邏輯運(yùn)算單元(ALU)運(yùn)算過(guò)程中的數(shù)據(jù),其鎖存功能利用74LS273來(lái)實(shí)現(xiàn),74LS273是一種帶清除功能的8D觸發(fā)器,1D?8D為數(shù)據(jù)輸入端,1Q~8Q為數(shù)據(jù)輸出端,正脈沖觸發(fā),低電平清除,常用作數(shù)據(jù)鎖存器,地址鎖存器。D()~D7:輸入,Q0?Q7:輸出;第一腳WR:主清除端,低電平觸發(fā),即當(dāng)為低電平時(shí),芯片被清除,輸出全為0(低電平);CP(CLK):觸發(fā)端,上升沿觸發(fā),即當(dāng)CP從低到高電平時(shí),DO?D7的數(shù)據(jù)通過(guò)芯片,為0時(shí)將數(shù)據(jù)鎖存,DO?D7
7、的數(shù)據(jù)不變。CPU向外部發(fā)出地址鎖存允許信號(hào),從而使74LS273鎖存地址信號(hào),在通過(guò)譯碼芯片74LS154控制接口芯片8255A,在此系統(tǒng)中充當(dāng)一個(gè)橋梁的作用。這部分電路將相應(yīng)信號(hào)傳送給8255A的AO、A1和CS片選,進(jìn)而CPU開(kāi)始控制8255A從而驅(qū)動(dòng)發(fā)光二極管顯示不同的樣式。圖2鎖存控制電路1.2.2可編程并行通信接口芯片8255A芯片8255A有三種工作方式,他們分別是方式0、方式1、方式2,電路如圖3所示。方式0為簡(jiǎn)單I/O,查詢(xún)方式,端口A(yíng)、端口B、端口C均可使用;方式1為選通I/O,中斷方式,端口A(yíng)、端口B可以使用,選通的輸入/輸出方式;方式2為雙
8、向I/O,