版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 組成原理與系統(tǒng)結構課程設計報告</p><p> 課 題: 擴展8255并行接口 </p><p> 姓 名: </p><p> 學 號: </p><
2、p> 專業(yè)班級: </p><p> 指導教師: </p><p> 設計時間: 2012.12.17—2011.12.19 </p><p><b> 目錄</b></p>&l
3、t;p><b> 目錄</b></p><p> 一、課程設計目的和意義3</p><p><b> 二、設計原理3</b></p><p> 三、復雜模型機的設計與實現(xiàn)內容7</p><p><b> 1.數(shù)據(jù)格式7</b></p>&l
4、t;p><b> 2.指令格式9</b></p><p><b> 3.指令系統(tǒng)9</b></p><p><b> 四、 總體設計9</b></p><p> 1. 設計復雜模型機的監(jiān)控軟件9</p><p> 2. 設計微程序流程圖11</p
5、><p> 3. 轉換格式11</p><p><b> 4.實驗連線13</b></p><p> 4.1實驗內部連線13</p><p> 4.2外部連線說明13</p><p> 4.3 A0、A1、CS、RD、WR五個引腳的電平與8255操作關系14</p>
6、<p> 4.4實驗接線圖15</p><p> 5.寫微程序和程序16</p><p><b> 6.運行程序17</b></p><p><b> 7.驗證17</b></p><p> 五、系統(tǒng)測試及實驗截圖18</p><p><b
7、> 六、總結22</b></p><p><b> 七、參考文獻23</b></p><p> 一、課程設計目的和意義</p><p> 1、在構成一臺完整的模型機的基礎上,控制真實的外圍接口芯片,進行基本的接口實驗;</p><p> 2、熟悉用微過程控制模型機的數(shù)據(jù)通路,使學生掌握系統(tǒng)
8、各功能模塊的基本工作原理;</p><p> 3、學會利用軟件DVCC并在聯(lián)機的狀態(tài)下,下載微程序轉載到實驗機,進行程序的調試;</p><p> 4、培養(yǎng)學生單片機應用系統(tǒng)的設計能力;</p><p> 5、使學生較熟練地應用計算機組成原理及系統(tǒng)結構教學實驗系統(tǒng)的實驗裝置完成單片機系統(tǒng)的硬件設計任務;</p><p> 6、學習設計
9、與調試計算機的基本步驟及方法;</p><p> 7、掌握輸入/輸出擴展系統(tǒng)的基本原理;</p><p> 8、培養(yǎng)學生分析、解決問題的能力;</p><p> 9、提高學生的科技論文寫作能力。 </p><p><b> 二、設計原理</b></p><p> 本次實驗的原理圖如下圖
10、(1)所示。部件實驗過程中,各部件單元的控制信號是人為模擬產生的,而本次實驗將能在微程序控制下自動產生各部件單元控制信號,實現(xiàn)特定指令的功能。計算機數(shù)據(jù)通路的控制將由微程序控制器來完成,CPU從內存中取出一條機器指令到指令執(zhí)行結束的一個指令周期全部由微指令組成的序列來完成,即一條機器指令對應與一個微程序。</p><p> 本實驗采用4條機器指令:IN(輸入)、COUT(端口寫指令)、CIN(端口讀指令)、JM
11、P(無條件轉移)其指令格式如下(前4位為操作碼):</p><p> 助記符 機器指令碼 說 明</p><p> IN 0000 0000 “外部開關量輸入”的開關狀態(tài) →R0</p><p> CIN addr 0010 0000 xxxxxxxx
12、 BUS→[addr]</p><p> COUT addr 0011 0000 xxxxxxxx [addr ] →BUS </p><p> JMP addr 0100 0000 xxxxxxxx addr → PC</p><p> 其中IN為單字長(8位),其余為雙字長指令,xxxxxxxx為addr
13、對應的二進制地址碼:</p><p> 為了向RAM中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動程序執(zhí)行,還必須設計三個控制臺操作微程序。</p><p> 存儲器讀操作(KRD):撥動總清開關CLR后,控制臺開關SWB、SWA為“00”時,按START微動開關,可對RAM連續(xù)手動讀操作。</p><p> 存儲器寫操作(KWE):撥動總清開關CLR后,控制臺
14、開關SWB、SWA為“01”時,按START微動開關,可對RAM進行連續(xù)手動寫入。</p><p> 啟動程序:撥動總清開關CLR后,控制臺開關SWB、SWA置為“11”時,按START微動開關,即可轉入到第01號“取址”微指令,啟動程序運行。</p><p> 上述三條控制臺指令用兩個開關SWB、SWA的狀態(tài)來設置,其定義如下:</p><p> 微代碼定義
15、如下表所示</p><p> A字段 B 字段 C字段</p><p> 圖1 數(shù)據(jù)通路框圖</p><p> 三、復雜模型機的設計與實現(xiàn)內容</p><p><b> 1.數(shù)據(jù)格式</b></p><p>
16、; 基本的設計和實現(xiàn)的程序設計如下:</p><p> A、IN 0000 0000 “外部開關量輸入”的開關狀態(tài) →R0</p><p> B、CIN addr 0010 0000 BUS→[addr]</p><p> C、COUT addr 0011 0000 [addr ] →B
17、US </p><p> D、JMP addr 0100 0000 addr → PC</p><p> 機器指令程序 微指令程序</p><p> $P0044 $M00088105 $M1EB7ED05</p>&l
18、t;p> $P01F0 $M0182ED05 $M1FB9ED05</p><p> $P0203 $M0250C004 $M20019004</p><p> $P03E0 $M0304A004 $M21
19、018406</p><p> $P0400 $M04A0E004 $M2281DB05</p><p> $P05F0 $M0506E004 $M23E48005</p><p> $P0601 $M060
20、7A004 $M24018005</p><p> $P0708 $M07A0E004 $M25A0AA95 </p><p> $P0800 $M088AED05 $M2627A004</p><p&
21、gt; $M098CED05 $M2728BC05</p><p> $M0A3BA004 $M29A0AA95</p><p> $M0B018005 $M2A2BB405</p><p> $M0C3C2004 $M2B419B95</p><p>
22、 $M0D0EA004 $M2C2DA405</p><p> $M0E0FB605 $M2D6EAB05 $M0F25EA95 $M2E2FAA0D</p><p> $M1083ED05 $M2F30AA05</p><p> $M1185ED05 $
23、M3071810D</p><p> $M128DED05 $M31419B95</p><p> $M13A6ED05 $M32019A05</p><p> $M14011004 $M3335B405</p><p> $M15010407 $M348
24、1DB05</p><p> $M16168005 $M35419BBD</p><p> $M17019A3D $M36019A0D</p><p> $M18019205 $M3738E004</p><p> $M192AA205 $M3801100
25、5</p><p> $M1A2CB205 $M393AE004 </p><p> $M1B32A205 $M3A010207</p><p> $M1C33A205 $M3B080A07</p><p> $M1D36A205 $M3C098A06
26、</p><p> 用ABLE語言設計控制邏輯,源程序如下:</p><p> ORG 00H PORTA EQU 7CFFH ;A口 PORTB EQU 7DFFH ;B口 PORTC EQU 7EFFH ;C口 </p><p> CADDR EQU 7FFFH ;控制字地址 SJMP START ORG 30H START: MOV A,#8
27、2H ;方式0,PA,PC輸出,PB輸入 MOV DPTR,#CADDR MOVX @ DPTR,A MOV DPTR,#PORTB MOVX A,@ DPTR ;讀入B口 MOV DPTR,#PORTA MOVX @DPTR,A ;輸出到A口 CALL DELAY LJMP START DELAY: MOV R6,#0 MOV R7,#0 DELAYLOOP: DJNZ R6,DELAYLOOP DJNZ R
28、7,DELAYLOOP RET END </p><p> 按照規(guī)定格式,將機器指令及微指令二進制表編輯成十六進制的如下格式文件。</p><p><b> 機器指令格式說明:</b></p><p> $ P 例:$P 00 00</p><p><b>
29、機器指令代碼</b></p><p><b> 十六進制地址</b></p><p> 0 微指令格式說明:</p><p> $ M 例:$M 00 018110</p><p> 十六進制地址 微指令代碼</p>
30、;<p> 注意:因系統(tǒng)文件格式要求,微指令代碼的第一個字節(jié)(前8位)與第三字節(jié)(后8位)對換一下。</p><p><b> 2.指令格式</b></p><p><b> a、端口讀指令</b></p><p><b> 助記符</b></p><p>
31、;<b> CIN D,R</b></p><p><b> 指令格式</b></p><p> 其中第一字節(jié)前四位為操作碼,D為端口地址,其功能是將端口地址為D的端口內容寫入至寄存器Ri中。</p><p><b> b、端口寫指令</b></p><p><
32、b> 助記符</b></p><p><b> COUT R,D</b></p><p><b> 指令格式</b></p><p> 其功能是將Ri寄存器的內容寫至以D為端口地址的端口中。</p><p><b> 3.指令系統(tǒng)</b></p
33、><p> MCS-51指令系統(tǒng)</p><p><b> 總體設計</b></p><p> 設計復雜模型機的監(jiān)控軟件</p><p> <1> 運算器單元(ALU UINT)</p><p> 運算器單元由以下部分構成:兩片74LS181構成了并-串型8位ALU;兩個8位寄存
34、器DR1和DR2為暫存工作寄存器,保存參數(shù)或中間運算結果。ALU的S0~S3為運算控制端,Cn為最低進位輸入,M為狀態(tài)控制端。ALU的輸出通過三態(tài)門74LS245連到數(shù)據(jù)總線上,由ALU-B控制該三態(tài)門。</p><p> <2> 寄存器堆單元(REG UNIT)</p><p> 該部分由3片8位寄存器R0、R1、R2組成,它們用來保存操作數(shù)用中間運算結構等。三個寄存器的
35、輸入輸出均以連入數(shù)據(jù)總線,由LDRi和RS-B根據(jù)機器指令進行選通。</p><p> <3> 指令寄存器單元(INS UNIT)</p><p> 指令寄存器單元中指令寄存器(IR)構成模型機時用它作為指令譯碼電路的輸入,實現(xiàn)程序的跳轉,由LDIR控制其選通。</p><p> <4> 時序電路單元(STATE UNIT)</p
36、><p> 用于輸出連續(xù)或單個方波信號,來控制機器的運行。</p><p> <5> 微控器電路單元(MICRO-CONTROLLER UNIT)</p><p> 微控器主要用來完成接受機器指令譯碼器送來的代碼,使控制轉向相應機器指令對應的首條微代碼程序,對該條機器指令的功能進行解釋或執(zhí)行的工作。由輸入的W/R信號控制微代碼的輸出鎖存。由程序計數(shù)器(
37、PC)和地址寄存器(AR)實現(xiàn)程序的取指功能。</p><p> <6> 邏輯譯碼單元(LOG UNIT)</p><p> 用來根據(jù)機器指令及相應微代碼進行譯碼使微程序轉入相應的微地址入口,從而實現(xiàn)微程序的順序、分支、循環(huán)運行,及工作寄存器R0、R1、R2的選通譯碼。</p><p> <7>主存儲器單元(MAIN MEM)</
38、p><p> 用于存儲實驗中的機器指令。</p><p> <8> 輸入輸出單元(INPUT/OUTPUT DEVICE)</p><p> 輸入單元使用八個撥動開關作為輸入設備,SW-B控制選通信號。輸出單元將輸入數(shù)據(jù)置入鎖存器后由兩個數(shù)碼管顯示其值。</p><p><b> 設計微程序流程圖</b>
39、</p><p><b> 圖2 微程序流程圖</b></p><p><b> 轉換格式</b></p><p> 當完成全部微程序設計后,對每條微指令進行代碼化,即將微程序流程圖按微指令格式轉化而成的,轉化成為如下的“二進制微代碼表”:</p><p><b> 4.實驗連線&
40、lt;/b></p><p><b> 4.1實驗內部連線</b></p><p> 跳線器J1~J12全部撥在右邊(自動工作方式);</p><p> 跳線器J16、J18、J23、J24全部撥在左邊;</p><p> 跳線器J15、J19、J25全部撥在右邊,跳線器J13、J14撥在左邊;</p
41、><p> 跳線器J20~J22、J26、J27連上短路片;</p><p> JSE1連JSE2,SJ1連SJ2;</p><p> MBUS連BUS2;</p><p> REGBUS連BUS5;</p><p> PCBUS連EXJ2;</p><p> ALUBUS連EXJ3;&
42、lt;/p><p> ALUO1連BUS1;</p><p> EXJ1連BUS3;</p><p> ALUO2連BUS4;</p><p><b> IJ1連IJ2;</b></p><p><b> 4.2外部連線說明</b></p><p&g
43、t; ·I/O擴展數(shù)據(jù)總線KJ1用8芯排線連至數(shù)據(jù)總線BUS6;</p><p> ·I/O擴展區(qū)KJ2用5芯排線連至外部總線區(qū)的KZ;</p><p> ·I/O擴展區(qū)KJ3(右1~6)用6芯排線連UJ2;</p><p> ·I/O擴展區(qū)KJ4(右1~6)用6芯排線連KBUS1(右1~6);</p>
44、<p> ·I/O擴展區(qū)GND和VCC用單針線與主控區(qū)GND和VCC相連;</p><p> ·I/O擴展區(qū)短路片DL1、DL2連左邊。</p><p> 4.3 A0、A1、CS、RD、WR五個引腳的電平與8255操作關系</p><p><b> 4.4實驗接線圖</b></p><
45、p> 其中UA5-UA0 為6位的后續(xù)微地址,A、B、C三個譯碼字段,分別由三個控制位譯碼出多位。C字段中的P(1)-P(4)是四個測試字位。其功能是根據(jù)機器指令及相應微代碼進行譯碼,使微程序轉入相應的微地址入口,從而實現(xiàn)微程序的順序、分支、循環(huán)運行。B 字段中的 RD-B、R0-B、RI-B、分別為源寄存器選通信號、目的寄存器選通信號及變址寄存器選通信號其功能是根據(jù)機器指令來進行三個工作寄存器R0、R1、R2 的選通譯碼。A
46、8、A9為控制選通信號,當A8 A9為00時,選通SW-B;為01時,選通CE;為10時,選通LED-B;為11時,表示均未選通。S0~S3為運算控制控制信號,Cn為進位控制信號,M為狀態(tài)控制控制信號。原理如下圖(圖2),圖中 I0~I3 為指令寄存器的第0~3位,LDRi打入工作寄存器信號的譯碼器使能控制位。</p><p> 當擬定“取指” 微指令時,該微指令的判別測試字段為P(1)測試。由于“取指” 微指
47、令是所有微程序都使用的公用微指令,因此P(1)測試結果出現(xiàn)多路分支。本機用指令寄存器的前4位(IR7-IR4)作為測試條件,出現(xiàn)5路分支,占用5個固定微地址單元??刂婆_操作為P(4)測試,它以控制臺開關SWB、SWA作為測試條件,出現(xiàn)了3路分支,占用3個固定微地址單元。當分支微地址單元固定后,剩下的其它地方就可以一條微指令占用控存一個微地址單元隨意填</p><p> 本系統(tǒng)有兩種I/O外部設備,一種是二進制代
48、碼開關,它作為輸入設備(INPUT DEVICE);另一種是數(shù)碼塊,它作為輸出設備(OUTPUT DEVICE)。輸入時,二進制開關數(shù)據(jù)直接經過三態(tài)門送到外部數(shù)據(jù)總線上,只要開關狀態(tài)不變,輸入的信息也不變。輸出時,將輸出數(shù)據(jù)送到外部數(shù)據(jù)總線上,當寫信號(W/R)有效時,將數(shù)據(jù)打入輸出鎖存器,驅動數(shù)碼塊顯示。</p><p> ?。ㄗ⒁猓何⒊绦蛄鞒虉D上的單元地址為8進制)</p><p>&
49、lt;b> 5.寫微程序和程序</b></p><p><b> 6.運行程序</b></p><p> 以下是擴展8255并行口模型的設計和實現(xiàn)的調試的基本步驟:</p><p> <1>按實驗接線接好線路,并檢查無誤后接通電源;</p><p><b> <2&
50、gt;單步運行程序</b></p><p> 將“SWB SWA”置為“01”,將“運行方式”開關置為“單步”,將“編程開關”置為“寫”位置;</p><p> 撥動總清開關(0→1),微地址寄存器清零,程序計數(shù)器清零;</p><p> 利用DVCC軟件下載微程序至實驗裝置。</p><p><b> <
51、3>連續(xù)運行</b></p><p> A、將“編程開關”置為“運行”,“運行方式”置為“連續(xù) ”,“SWB SWA” 置為“11”;</p><p> B、撥動總清開關(0→1) ,微地址寄存器清零,程序計數(shù)器清零。</p><p> C、從輸入設備“KD7—KD0”置數(shù)“1001 0000”,是將8255置成方式0,將二進制開關(uA5—
52、uA0)作為8255的輸入端置數(shù);</p><p> D、點擊“運行”,將“LZD13—LZD8”作為8255的輸出端口顯示,觀察其顯示燈是否與輸入一致,并觀察調試界面與機器指令的操作是否相符。</p><p><b> 7.驗證</b></p><p> 本實驗設計機器指令程序如下指令程序</p><p> 地
53、址(二進制) 內容(二進制) 助記符 說 明</p><p> 00000000 01000100 IN R0 ; “輸入開關量” →R0</p><p> ; 輸入開關置數(shù)10010000</p><p> 00000001 11110000 C
54、OUT R0 ,[03]; R0→以03H為地址的端口</p><p> 00000010 00000011</p><p> 00000011 11100000 CIN [00],R0; 將端口A(PA5~PA0)的內容讀至R0 </p><p> 00000100 00000000</p><p>
55、 00000101 11100000 COUT R0,[01];將R0的內容寫至端口B(PB5~PB0)</p><p> 00000110 00000001</p><p> 00000111 00001000 JMP 00H</p><p> 00001000 00000000</p><p>
56、 其中,第一條指令從輸入設備置數(shù)10010000,是將8255置成方式0,且A口輸入,B口輸出的控制字。將機器指令寫入主存,二進制開關uA5~uA0作為8255的輸入,LZD13~LZD8顯示燈作為8255的輸出口顯示,給輸入開關置任意一數(shù),運行程序,檢查輸出口顯示燈指示是否和輸入一致。</p><p> 五、系統(tǒng)測試及實驗截圖 </p><p><b> 實驗結果圖<
57、/b></p><p> 六、總結 </p><p> 微機綜合設計是對我們大學所學知識的總結和運用,對我們的綜合能力有很大的幫助和提高。 隨著科學技術發(fā)展的日新日異,單片機已經成為當今計算機應用中空前活躍的領域,在生活中可以說得是無處不在。因此作為二十一世紀的大學來說掌握單片機的開發(fā)技術是十分重要的。</p><p> 因為課程所學的都是理論
58、知識,而從理論到實踐是需要一定過程的,微機綜合設計就是一次很好的鍛煉機會對于我們這些以后可能從事控制行業(yè)的人來說有著舉足輕重的作用。時間過得很快,兩周的微機綜合設計就這樣結束了。之前我對自己沒什么信心,總聽別人說,做電路板容易調電路板才是真正煩人的事,還沒開始我就擔心自己不能順利完成,不過我還是對自己說了,在學校這樣一個好的平臺,這樣一個小小任務都完成不了那以后走上工作崗位了我還能有什么作為。經過師兄們的輔導之后我信心倍增,相信只要自己
59、努力了肯定會有收獲的,況且在我們之前那么多師兄師姐也都走過去了,我又不比別人差,肯定能順利完成任務的。</p><p> 回顧起此次單片機課程設計,至今我仍感慨頗多。的確,從選題到確定所用的元器件,從理論到實踐,在整整兩個星期里,可以說得是酸甜苦辣,但是我卻真正從這次課設中學到很多很多的東西,經過這次課設不僅可以鞏固以前所學過的知識,而且學到了很多在書本上所沒有提過的知識。經過這次課設讓我更加注意到理論與實踐相
60、結合的重要性,雖然我在理論的學習中成績很不錯,但一到實踐還是遇到很多困難,畢竟在這之前沒有接觸過這樣的設計,所以說這次課程設計對我的意義重大。</p><p> 由于我選的題目接線比較復雜,如果用萬用板來完成這次設計,那么板上的布線將會很復雜,也不美觀。在老師的悉心教導下,培養(yǎng)了自己動手能力之外,還讓自己從中學習了很多新的知識。</p><p> 當前期工作都完成之后就開始焊接元器件了
61、,還沒焊好之前總害怕自己做出來的板不能順利工作。等到把所有元器件都焊接完成之后,燒入程序一試,果真跟之前的預感一樣:系統(tǒng)不同正常工作。心里很著急,不過我并沒有慌了手腳,而是積極尋找資料,查出問題的所在。最后發(fā)現(xiàn)單片機上的31端口沒有接高點平,自己以為接上這條線之后系統(tǒng)應該能順利工作了,沒想到還是不行,這時有點著急了。經過努力地找資料,最后發(fā)現(xiàn)8255的復位端口要接地,這條線一接上,系統(tǒng)終于能正常工作了。</p><p
62、> 通過自己的動手,親身體驗到了理論與實踐真的有太大的差距,理論只是基礎并不是全部。在做板的過程中必須一直保持謹慎,因為一個小小的失誤可能讓你花費很長的時間去調試。當你正為調不出結果而發(fā)愁時,一個小小的成功會給你帶來無語倫比的喜悅,那種感覺真的很美妙。</p><p> 這次課設對于我而言有著重要的意義,不僅豐富了知識,也提高了自己的動手能力。在挫折與喜悅之中我得到了發(fā)展,這次課設必將在我的人生中留下美
63、好的回憶。</p><p><b> 七、參考文獻</b></p><p> 1、唐朔飛 《計算機組成原理》高等教育出版社</p><p> 2、白中英 《計算機組成原理》科學技術出版社</p><p> 3、王愛英 《計算機組成與結構》清華大學出版社</p><p> 4、楊小龍 《計
64、算機組成原理與系統(tǒng)結構實驗教程》西安電子科技大學出版社</p><p> 5、《計算機組成原理實驗指導書》江西高校出版社</p><p> 6、 彭沛夫 張桂芳 《微機控制技術與實驗指導 》 清華大學出版社</p><p><b> 8、《微機原理》</b></p><p><b>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《計算機組成原理》課程設計
- 計算機組成原理課程設計
- 計算機組成原理課程設計
- 計算機組成原理課程設計
- 計算機組成原理課程設計
- 計算機組成原理課程設計
- 計算機組成原理課程設計--計算機組成原理算法實現(xiàn)
- 計算機組成原理課程設計---模型機組成設計
- 計算機組成原理課程設計報告
- 計算機組成原理-課程設計報告
- 計算機組成原理課程設計報告
- 計算機組成原理課程設計日志
- 計算機組成原理課程設計報告
- 計算機組成原理課程設計報告
- 計算機組成原理課程設計 (2)
- 計算機組成原理課程設計報告
- 計算機組成原理課程設計論文
- 計算機組成原理-課程設計報告
- 計算機組成原理課程設計---簡單計算機系統(tǒng)設計與實現(xiàn)
- 計算機組成原理課程設計--簡單計算機系統(tǒng)設計與實現(xiàn)
評論
0/150
提交評論