計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)_第1頁
計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)_第2頁
計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)_第3頁
計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)_第4頁
計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

微型計(jì)算機(jī)原理與接口技術(shù)課程設(shè)計(jì)課題并行通訊的中斷設(shè)計(jì)學(xué)院(部)電子與控制工程學(xué)院專業(yè)建筑設(shè)施智能技術(shù)班級(jí)學(xué)生姓名學(xué)號(hào)12月24日至工月6日共兩周指導(dǎo)教師(簽字)2011年1月4日摘要計(jì)算機(jī)與外部進(jìn)行信息交換的方式有兩種,一種是并行通信,另一種是串行通信。并行通訊以字節(jié)或字為單位進(jìn)行數(shù)據(jù)傳送,兩個(gè)功能模塊間有多位數(shù)據(jù)同時(shí)進(jìn)行數(shù)據(jù)傳送,速度快,效率高。在系統(tǒng)與外設(shè)進(jìn)行信息交換時(shí),并行通訊起到了重大的作用。本次課程設(shè)計(jì)主要在于設(shè)計(jì)出一個(gè)利用中斷完成并行通訊系統(tǒng)。此系統(tǒng)主要由8086系統(tǒng)與8255可編程并行接口。此次課設(shè)在于培養(yǎng)我們的動(dòng)手能力與考察我們對(duì)書本上的知識(shí)掌握的熟練程度。如何正確的運(yùn)用8086,8255成為本次實(shí)驗(yàn)的關(guān)鍵所在。關(guān)鍵字:并行通信8255芯片目錄一引言二正文(一)設(shè)計(jì)方案的論證(二)硬件的設(shè)計(jì)(三)軟件的設(shè)計(jì)(四)試驗(yàn)及測(cè)試情況三參考文獻(xiàn)四附頁:一源程序清單二電路接線圖引言隨著科技的進(jìn)步,信息化的程度在人們的生活中也越來越得到完善與提高。在計(jì)算機(jī)中數(shù)據(jù)的傳送是交流的基礎(chǔ),因此在計(jì)算機(jī)中,通訊顯得尤其重要。本次的課程設(shè)計(jì)中,主要考察我們?nèi)绾芜\(yùn)用芯片完成通信。這是我們?yōu)槲覀兿乱徊礁由钊氲牧私馕⑿陀?jì)算機(jī)與應(yīng)用微型計(jì)算機(jī)打下堅(jiān)實(shí)的基礎(chǔ),本次課設(shè)有著重大的意義。本次課程設(shè)計(jì),我組主要應(yīng)用的是8255芯片,8086指令系統(tǒng)與等一系列芯片元件進(jìn)行連接與實(shí)現(xiàn)功能。設(shè)計(jì)中,我們將面對(duì)一些較為棘手的問題。比如如何正確的進(jìn)行程序編程,如何合理的進(jìn)行各元件之間的連接,如何正確的運(yùn)用中斷信號(hào)進(jìn)行中斷指令等等問題。但我們將秉著正確對(duì)待知識(shí)的態(tài)度,努力研究,抓緊時(shí)間完善課設(shè),盡自己最大的努力達(dá)到課程設(shè)計(jì)的要求。總而言之,這次課程設(shè)計(jì)對(duì)我們的知識(shí)要求有著一定的高度與深度。知識(shí)上的準(zhǔn)備歸結(jié)只要有如下三點(diǎn):1、總結(jié)性地復(fù)習(xí)8086的中斷系統(tǒng);2、精通掌握中斷控制器8259A的原理和編程;3、精通掌握串行通訊接口芯片8251或并行通訊接口芯片8255之一。

正文—設(shè)計(jì)萬案的論證總述:在中斷技術(shù)的綜合應(yīng)用設(shè)計(jì)中,為了驗(yàn)證中斷在并行或串行通信中的運(yùn)用,本小組在認(rèn)真熟悉掌握課本內(nèi)容后,積極四處查找有關(guān)資料,盡量充分準(zhǔn)備,以力求在現(xiàn)有的知識(shí)水平下深刻理解,小組成員多次交流自己所掌握的知識(shí)和設(shè)計(jì)理念。靈活運(yùn)用在眾多方案中擇優(yōu)選取合適的式樣驗(yàn)證方案。方案一并行接口是實(shí)現(xiàn)并行通信的接口。其數(shù)據(jù)傳送方向有兩種:?jiǎn)蜗騻魉停ㄖ蛔鳛檩斎肟诨蜉敵隹冢?,雙向傳送(皆可作為輸入口,也可作為輸出口〉而并行接口可以很簡(jiǎn)單,如鎖存器或三態(tài)門;也可以很復(fù)雜,如可編程接口芯片。本次使用的8255是Intel公司生產(chǎn)的為X86系列CPU配套的可編程并行接口芯片。所謂可編程,就是通過軟件的方式來設(shè)定芯片的工作方式。8255的通用性較強(qiáng),使用靈活,是一種典型的可編程并行接口。本次試驗(yàn)設(shè)計(jì)也可采用模擬打印機(jī)的工作過程來表示由8255輸出的8086發(fā)送來的數(shù)據(jù)。

方案二Intel8250是專用于異步通信的可編程串行接口芯片,具有很強(qiáng)的串行通信能力和靈活的可編程性能,在微機(jī)中的運(yùn)用極為廣泛。運(yùn)用8086CPU與8250及部分外設(shè)驗(yàn)證其可進(jìn)行串行通信,如示波器,LED燈等來表示由8250輸出的8086發(fā)送來的數(shù)據(jù)。已達(dá)到串行通信的目的。方案三由于proteus在仿真8086中對(duì)8259A的支持不完善,因此可以考慮繞開8259而使用不可屏蔽中斷來完成數(shù)據(jù)傳送。故在這種設(shè)計(jì)中使用不可屏蔽中斷來完成并行通訊的中斷設(shè)計(jì),而且在8086的NMI端接入由一個(gè)開關(guān)控制的高電平,每按下一次產(chǎn)生一個(gè)中斷,其中8086作為CPU而8255作為并行通信的接口其中外設(shè)使用黃色LED燈且在其輸出線上并接一個(gè)七段數(shù)碼管,以顯示每次中斷后8255所輸出的數(shù)值。最終方案選擇通過比較以上三個(gè)方案的各種難易程度,及小組成員知識(shí)水平的掌握程度,以及對(duì)查閱的方案的權(quán)衡比較。方案一中只有8255與8086的鏈接使用但是過于簡(jiǎn)單不足一完整的表現(xiàn)并行通行,方案二中使用8250,而小組成員對(duì)此芯片的掌握不如對(duì)8255的掌握使用,且為串行通信使用過程較為復(fù)雜,程序設(shè)計(jì)不易進(jìn)行故放棄8250串行通信的設(shè)計(jì),方案三明顯方案三較為成熟明顯,程序設(shè)計(jì)思路清晰,且并行通信的掌握較為成熟,故選用方案三,來實(shí)現(xiàn)并行通訊的中斷設(shè)計(jì)的方案。

二硬件的設(shè)計(jì)1.主要應(yīng)用器件參數(shù)與功能介紹(1)8086CPU的外部引腳及功能—jin二V.ADi|2的Z~lAtJbi叫匚3楠A口山匚iSTA部】?jī)?nèi)iL%AtJiaf~6A5""1IN%AIX17341畝證/W皿匚fl騷搗巨f'^ixg匚§3?Z3toADr£37toAl"jHOLD:lfg/心匚11301229二|lWH>LfX;hrn混'七蒞■:章i小匚H27二]'ejvE%*AIJb1布?6二]nrMts;,止aZJ1N.V11匚1724mAfoeitjNIR匚IS23口11?~<!kn~"■*?!n心mi匚7"!時(shí)土ii2-7脆梃CPU芯片引腳督性A16-A19/S3-S6:地址,狀態(tài)復(fù)用的引腳,三態(tài)輸出。在8086執(zhí)行指令的過程中,某一時(shí)刻從這4個(gè)引腳上送出地址的最高4位A16-A19;而在另外時(shí)刻,這4個(gè)引腳送出狀態(tài)信號(hào)S3-S6。這些狀態(tài)信號(hào)里,S6恒等于0,S5指示中斷允許標(biāo)志位IF的狀態(tài),S4,S3的組合指示CPU當(dāng)前正在使用的段寄存器,其編碼如下。S4S3當(dāng)前正在使用的段寄存器S4S3當(dāng)前正在使用的段寄存器00ES10CS或未使用任何段寄存器01SS11DSA8-A15:中8位地址信號(hào),三態(tài)輸出。CPU尋址內(nèi)存或者接口時(shí),從這些引腳送出地址A8-A15。AD0-AD7:地址,數(shù)據(jù)分時(shí)復(fù)用的雙向信號(hào)線,三態(tài)。當(dāng)ALE=1時(shí),這些引腳上傳輸?shù)氖堑刂沸盘?hào);孑EN=0時(shí),這些因腳上的輸出信號(hào)是數(shù)據(jù)信號(hào)。ALE:地址鎖存信號(hào),三態(tài)輸出,低電平有效。READY:外部同步控制輸入信號(hào),高電平有效。它是由被訪問的內(nèi)存貨I/O設(shè)備所發(fā)出的信號(hào)響應(yīng),當(dāng)其有效時(shí),表示I/O設(shè)備或者儲(chǔ)存器已經(jīng)準(zhǔn)備好了,CPU可以進(jìn)行數(shù)據(jù)傳送。弱存儲(chǔ)器或I/O設(shè)備沒有準(zhǔn)備好,則使READY信號(hào)為低電平oCPU在T3周期采樣READY信號(hào),若其為低,CPU自動(dòng)插入等待周期TW(一個(gè)或者多個(gè)),直到READY變?yōu)楦唠娖胶驝PU才脫離等待狀態(tài),完成數(shù)據(jù)傳送過程。INTR:可屏蔽中斷請(qǐng)求信號(hào),高電平有效。CPU在每條指令的最后一個(gè)周期采樣該信號(hào),以決定是否進(jìn)入中斷響應(yīng)周期。這個(gè)引腳上的中斷請(qǐng)求信號(hào)可用軟件屏蔽。NMI:非屏蔽終端請(qǐng)求輸入信號(hào),上升沿觸發(fā)。這個(gè)引腳上的中斷請(qǐng)求信號(hào)不能用軟件屏蔽,CPU在當(dāng)前指令執(zhí)行結(jié)束進(jìn)入中斷過程。REST:系統(tǒng)復(fù)位輸出信號(hào),高電平有效。為使CPU內(nèi)部復(fù)位過程,該信號(hào)至少要在4個(gè)周期內(nèi)保持有效。復(fù)位后CPU內(nèi)部存儲(chǔ)器的狀態(tài)如下表所示。當(dāng)REST返回低電平時(shí),CPU將重新啟動(dòng)。內(nèi)部存儲(chǔ)器內(nèi)容內(nèi)部存儲(chǔ)器內(nèi)容CSFFFFHIP0000HDS0000HFLAGS0000HSS0000H其余寄存器0000HES0000H指令隊(duì)列空HOLD:總線保持請(qǐng)求信號(hào)輸入,高電平有效。當(dāng)某一總線主控設(shè)備要占用系統(tǒng)總線時(shí),通過此引腳向CPU提出請(qǐng)求。HLDA:總線保持響應(yīng)信號(hào)輸出,高電平有效。這是CPU對(duì)HOLD請(qǐng)求的響應(yīng)信號(hào),當(dāng)CPU收到有效的HOLD信號(hào)后,就對(duì)其做出響應(yīng):一方面使CPU的所有三態(tài)輸出的地址信號(hào),數(shù)據(jù)信號(hào)和相應(yīng)的控制信號(hào)變?yōu)楦咦锠顟B(tài)(浮動(dòng)狀態(tài));同時(shí)輸出一個(gè)有效的HLDA,表示處理器現(xiàn)在已放棄對(duì)總線的控制。當(dāng)CPU檢測(cè)到HOLD信號(hào)變低后,就立即使HLDA變低,同時(shí)恢復(fù)對(duì)總線的控制。CLK:時(shí)鐘信號(hào)輸入引腳。VCC:5V電源輸入引腳GND:地線(2)8255的外部引線及功能

叫匚P%匚、___>ZIP%ZIP%I4039叫匚333m叫匚437□pat屈匚E36□Wcsre35□RESETG皿匚734%匚e33上匚232PCTIZ108255A31P理匚1130叫匚1229叫匚1328PC口匚1427叫匚1526叫匚1625□pbt匚1724zip、叫匚1823F鳥匚19跛□PB.PE?匚2021ZIP%D0-D7:雙向數(shù)據(jù)線。用來傳送數(shù)據(jù)RD:讀信號(hào)線,低電平有效。RD與其他信號(hào)線一起實(shí)現(xiàn)對(duì)8255接口的讀操作,通常系統(tǒng)總線的IOR信號(hào)。WR:寫信號(hào),低電平有效。當(dāng)系統(tǒng)系統(tǒng)信號(hào)經(jīng)譯碼產(chǎn)生低電平是選中8255芯片,使能夠?qū)?255進(jìn)行操作。A0,A1:口地址選擇信號(hào)。8255的內(nèi)部包括獨(dú)立的輸入/輸出端口(A口,B口和C口)以及一個(gè)控制寄存器。A0,A1地址信號(hào)經(jīng)片內(nèi)譯碼可產(chǎn)生4個(gè)有效地址,分別對(duì)應(yīng)A,B,C這三個(gè)口和內(nèi)部控制寄存器。具規(guī)定如下表。A1A0選擇A1A0選擇01A口10C口01B口11控制寄存器REST:復(fù)位輸入信號(hào)。通常接系統(tǒng)的復(fù)位端RESET端。當(dāng)它為高電平時(shí)使8255復(fù)位。復(fù)位后,8255的A口,B口和C口均被設(shè)為預(yù)設(shè)輸入狀態(tài)。PA0-PA7:A口的8條輸入/輸出信號(hào)線。這8條線是工作于輸入,輸出還是雙向方式可由軟件編程來決定。PB0-PB7:B口的8條輸入/輸出信號(hào)線。利用軟件編程可指定這8條線是作輸入還是輸出。PC0-PC7:C口的8條線,根據(jù)其工作方式可以為數(shù)據(jù)的輸入或輸出線,也可以用作控制信號(hào)的輸出或者狀態(tài)信號(hào)的輸入線。(3)74LS37374LW7SQ0D1QID2Q2.D38,D4Q4?D5D&如'S0E當(dāng)三態(tài)允許控制端OE為低電平時(shí),Q0?Q7為正常邏輯狀態(tài),可用來驅(qū)動(dòng)負(fù)載或總線。當(dāng)OE為高電平時(shí),Q0?Q7呈高阻態(tài),

即不驅(qū)動(dòng)總線,也不為總線的負(fù)載,但鎖存器內(nèi)部的邏輯操作不受影響。當(dāng)鎖存允許端LE為高電平時(shí),Q隨數(shù)據(jù)D而變。當(dāng)LE為低電平時(shí),D被鎖存在已建立的數(shù)據(jù)電平。當(dāng)LE端施密特觸發(fā)器的輸入滯后作用,使交流和直流噪聲抗擾度被改善400mV。引出端符號(hào):D0?D7數(shù)據(jù)輸入端OE三態(tài)允許控制端(低電平有效)LE鎖存允許端Q0?Q7輸出端真值表(右邊)DnLE鎖存允許端Q0?Q7輸出端真值表(右邊)DnLEOEQnHH|L|H|LHLLXL|L|Q0|XXH高阻態(tài)(4)74LS1384、5、6腳是控制腳,只有當(dāng)6腳為高電平而4、5腳都為低電平時(shí),74LS138才對(duì)1、2、3腳的輸入進(jìn)行譯碼,選擇和從這三個(gè)管腳輸入的三位二進(jìn)制碼相其真值表如下圖FUNCTIONTAELEINPUTSOUTPUTSENABLE-SELEETG1G2AG2ScBAYOY1Y2Y3Y4丫5Y6Y7XHXXXXHHHHHHHHXXHXXXHHHHHHHHLXXXXXHHHHHHHHHLLLLLLHHHMHHHHLLLLHHLHHHHHHHLLLHLHHLHHHHHHLLLHHHHHLHHHHHLLHLLHHHHLHHHHLLHLHHHHHHLHHHLLHHLHHHHHHLHHLLHHHHHHHHHHL2.硬件模擬連接圖READ';IFTOOBIIE.HDUDOTTHLDRuCTirAb[0..IF]4U2AD1+1#口旬T■AD3B|.AD413■蟲■HDEI7碩1SziGND1■肌目1|AD口READ';IFTOOBIIE.HDUDOTTHLDRuCTirAb[0..IF]4U2AD1+1#口旬T■AD3B|.AD413■蟲■HDEI7碩1SziGND1■肌目1|AD口WL=D-T=LJjiiJLEfrYELLOlUTxLJ.iiLiV=LUQW£7費(fèi)至耕.LDJ31,Lp33卻:azLGDVELDOW本次設(shè)計(jì)主要運(yùn)用了8086系統(tǒng)芯片,運(yùn)用了其不可屏蔽中斷的功能。8086芯片的NMI數(shù)據(jù)口接有一個(gè)開關(guān)。每當(dāng)開關(guān)閉合一次,NMI變成高電平,此時(shí)即可產(chǎn)生一次不可屏蔽中斷。當(dāng)中斷產(chǎn)生后,8086即會(huì)停止當(dāng)前工作并且來相應(yīng)此次的中斷請(qǐng)求。此時(shí)8086即會(huì)向8255A輸出數(shù)據(jù),而后8255的指定口即會(huì)將數(shù)據(jù)輸出。我們就可以通過8255A的輸出口所連接的8個(gè)LED燈的亮暗與數(shù)碼管顯示的數(shù)字來觀察本次數(shù)據(jù)傳輸?shù)那闆r。在傳輸中,8255A芯片主要負(fù)責(zé)傳輸?shù)墓ぷ?。?jīng)過考慮,我們運(yùn)用8255A的0型工作方式。即A口與B口作為輸出。但本次實(shí)驗(yàn)主要在于驗(yàn)證并行數(shù)據(jù)的傳輸,所以我們只利用了A口的8位輸出連接8個(gè)LED燈與一只數(shù)碼管來觀察設(shè)計(jì)的傳輸情況。四試驗(yàn)及測(cè)試情況試驗(yàn)部分:本次課程設(shè)計(jì),我組主要運(yùn)用了8255A芯片的并行傳輸功能。通過在試驗(yàn)?zāi)M軟件Proteus搭接虛擬電路,向8086中導(dǎo)入程序,利用其強(qiáng)大的仿真功能,以此來驗(yàn)證試驗(yàn)結(jié)果。在數(shù)據(jù)的傳送上,我們運(yùn)用了不可屏蔽中斷的傳送方法。每當(dāng)需要有新的信號(hào)進(jìn)行傳輸時(shí)測(cè)試情況:CPU的曲【接口即會(huì)接到高電平,其實(shí)表示有不可屏蔽的中斷,表示有新的數(shù)據(jù)傳來,CPU即會(huì)停止其他工作并進(jìn)入到數(shù)據(jù)傳送中,從而完成了并行傳輸。模擬軟件Proteus搭接虛擬電路在模擬后,按鍵每按動(dòng)一次七段數(shù)碼管顯示其當(dāng)前的值,并且LED管顯示其對(duì)應(yīng)的BCD碼。則實(shí)驗(yàn)設(shè)計(jì)達(dá)到設(shè)計(jì)的要求,試驗(yàn)成功,測(cè)試結(jié)果良好。參考文獻(xiàn)《微型計(jì)算機(jī)原理與接口技術(shù)》馮博琴吳寧《微型計(jì)算機(jī)原理及應(yīng)用實(shí)驗(yàn)》殷代紅侯曉霞源程序清單:DATASSEGMENTDW100DUP(?)STR1DB00H,01H,02H,03H;此處輸入數(shù)據(jù)段代碼DATASENDSSTACKSSEGMENTDW50DUP(?)STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATASSTART:PUSHDSPUSHBX斷點(diǎn)保護(hù)中斷向量初始化MOVAX,0000Hds賦予初值MOVDS,AXbx對(duì)應(yīng)偏移地址是ds,使ds為零,防止出錯(cuò)MOVBX,0008Hnmi固定中斷類型嗎是02hMOVDX,OFFSETMYINTMOV[BX],DX寫中斷向量表偏移

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論