




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、微型計算機系統原理及應用實實驗驗指指導導書書麗水學院工程與設計學院麗水學院工程與設計學院 20142014 年年 1010 月月目目 錄錄實驗一、DEBUG 程序的使用 .1實驗二、匯編語言程序的匯編與調試.4實驗三、系統功能調用程序設計.7實驗四、模塊化程序設計.11實驗五、DAIS-2CPU+實驗臺的使用 .16實驗六、8253 定時計數器實驗.20實驗七、8255 并行接口實驗.25實驗八、8251 串行接口實驗.31.1.實驗一、實驗一、DEBUG 程序的使用程序的使用一、實驗目的一、實驗目的熟悉指令系統,掌握常用指令的功能。熟悉 DEBUG 程序的使用,掌握匯編語言程序段的上機調試方
2、法。二、實驗原理二、實驗原理1、DEBUG 程序簡介程序簡介DEBUG 是 DOS 操作系統和 WINDOWS 操作系統都提供的程序動態調試系統程序。利用DEBUG 可以匯編、反匯編機器指令,查看、修改內存數據,并可將內存的數據或指令代碼保存為磁盤文件。DEBUG 采用字符界面,可在 MSDOS 方式鍵入:DEBUG 來啟動該系統程序。進入 DEBUG 狀態后,出現提示符“” ,表示可以使用 DEBUG 的分命令調試程序了。DEBUG 的分命令及功能如表 1-1 所示。表 1-1 DEBUG 分命令命令功能命令格式說明反匯編U起始地址一次將 32 字節的指令代碼翻譯成相應的助記符匯編A起始地址
3、將輸入的指令助記符翻譯成機器碼并存入存儲器中,默認的段為代碼段顯示寄存器內容R寄存器顯示或修改寄存器的內容顯示存儲單元內容D起始地址 結束地址或L 字節數用十六進制和 ASCII 碼兩種形式顯示內存單元內容,默認的段為數據段修改存儲單元內容E 地址 內容項表逐個修改存儲單元內容或將內容項表的內容存入存儲器中運行程序G=起始地址 斷點地址從起始地址開始執行程序到斷點處,顯示所有寄存器內容及下一條指令的助記符跟蹤執行程序T=起始地址 執行步數一次執行指定數量的指令,默認步數為 1 步指定文件名N 文件標識符文件標識符將文件標識符格式化到 CS:5CH 和 CS:6CH 兩個文件控制塊中寫文件W起始
4、地址將內存中從“起始地址”開始,長度由 BX、CX決定(32 位二進制)的內容寫入由 N 命令指定的磁盤文件中讀文件L起始地址將磁盤上由 N 命令指定的文件讀入由“起始地址”開始的存儲器中,BX、CX 包含文件的字節數退出 DEBUGQ2、簡單程序設計、簡單程序設計將起始地址為 1000H 的連續 40 個存儲單元依次填入 00H27H 連續整數,參考程序如下:MOV CX,28HMOV SI,1000HMOV AL,00HL1:MOV SI,ALINC SIINC ALDEC CXJNZ L1HLT三、實驗環境三、實驗環境運行 DOS 或 Windows 系統的微機.2.DEBUG 系統程序
5、四、實驗內容四、實驗內容1、 程序匯編程序匯編利用 DEBUG 的 A 命令從起始地址 0100H 輸入源程序。格式為:A0100 回車。進入 A 命令(匯編狀態)后,按照源程序逐條輸入指令,其中所有的數字都應是十六進制數(十六進制數的后綴 H 必須省略) ,也不能使用標號,轉移指令的目標地址需用直接地址。如果指令錯誤,將提示 Error,需重新輸入。待所有指令輸完后,直接按回車,退出 A 命令。利用 U 命令檢查輸入的程序。格式為:U0100 回車。2、程序運行、程序運行利用 DEBUG 的 D 命令檢查起始地址為 100H 的存儲單元內容。格式為 D100 回車。利用 DEBUG 的 T
6、命令單步執行程序。格式為 T=0100 回車。T 命令每次執行一條指令,顯示寄存器內容和下一條指令的助記符,第一次 T 命令需指明起始地址,后續 T 命令起始地址可缺省。利用 DEBUG 的 G 命令連續執行程序。格式為:G=0100 0110 回車。其中 HLT 指令所在的地址0110H 設為斷點地址(HLT 指令不執行) 。重新用 D 命令查看 1000H1027H 存儲單元的內容,是否為 00H27H。D1000 1027利用 DEBUG 的 E 命令修改 1000H1027H 存儲單元的內容為任意值。格式為:E1000 回車(進入 E 命令后,可按空格鍵顯示下一地址單元,按減號鍵顯示上
7、一地址單元,按回車鍵退出 E 命令) 。重復使用 D 命令和 G 命令,對比程序運行前后內存單元內容的變化。3、程序保存、程序保存利用 DEBUG 的 N 命令指定文件名。格式為:NC:LX.COM。利用 DEBUG 的 R 命令設定寄存器的內容。格式為:RCX 回車。將 CX 設為文件的字節數0011H,BX 設為 0000H。利用 DEBUG 的 W 命令保存程序內容。利用 Q 命令退出 DEBUG,在操作系統下查看 C:根目錄下是否建立了 LX.COM 文件,且文件長度應為 17 字節。4、利用文本編輯程序建立源程序、利用文本編輯程序建立源程序直接用文件編輯程序如 EDIT 程序或記事本
8、程序編輯如下源程序,并保存為 C:LX.TXT 文件。A0100MOV CX,28MOV SI,1000MOV AL,00MOV SI,ALINC SIINC ALDEC CXJNZ 0108HLTNC:LX2.COMRCX0011RBX0000WQ.3.源程序中字型加粗部分為 DEBUG 命令(包括 HLT 指令后的空行) ,連同指令一起保存到 TXT文件中。利用 DEBUG 程序的輸入改向,對源程序進行匯編,格式為 DEBUGEj+1兩數交換修改指針比較完否?CX-1=0?NN結束圖 2-1 冒泡排序流程圖666661277777121212125437333318373337183333
9、5418373781185454541881818181.9.三、實驗環境三、實驗環境運行 DOS 或 Windows 系統的微機一臺MASM 匯編程序一套DEBUG 動態調試程序四、實驗內容四、實驗內容1、程序設計、程序設計從鍵盤輸入最多不超過 50 個字符的字符串,經排序后從屏幕輸出。字符串輸入與顯示用宏指令實現。參考程序:DAT SEGMENTMESS1 DB Input character:,$SBUF DB 51,?,51 DUP($),$MESS2 DB Output character:,$MESS3 DB 0DH,0AH,$DAT ENDSSTAC SEGMENT STACKD
10、W 20 DUP(?)STAC ENDSCODE SEGMENTASSUME CS:CODE,DS:DAT,SS:STACINPUT MACRO BUFLEA DX,BUFMOV AH,0AHINT 21HENDMDISPLY MACRO STRINGLEA DX,STRINGMOV AH,9INT 21HENDMMAIN PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATMOV DS,AXDISPLY MESS1INPUT SBUF;輸入字符串(最后一個字節為 0DH)LEA BX,SBUF+2ADD BL,SBUF+1ADC BH,0 ;BX 指向輸入的最后
11、一個字符(回車符)MOV BYTE PTR BX,$;將輸入的最后一個回車符(0DH)改為$.10.DISPLY MESS3; 回車換行MOV CL,SBUF+1MOV CH,0DEC CXL0:LEA SI,SBUF+2MOV DX,CXL1:MOV AL,SICMP AL,SI+1JNA L2XCHG AL,SI+1MOV SI,ALL2:INC SIDEC DXJNZ L1LOOP L0DISPLY MESS2DISPLY SBUF+2RETMAIN ENDPCODE ENDSEND MAIN2、程序調試運行、程序調試運行源程序經過匯編,形成目標代碼文件(.OBJ) 、列表文件(.LST
12、)和交叉參考文件(.XRF) ,目標代碼文件經連接,形成可執行程序(.EXE)和內存映象文件(.MAP) ,并用程序 CREF.EXE 將交叉參考文件(.XRF)轉換成索引文件(.REF) 。在 DOS 提示符下運行程序,并在 DEBUG 狀態檢查宏指令的擴展。五、實驗報告五、實驗報告編寫實現從鍵盤輸入字符、并將字符按從大到小順序排序的源程序,記錄 MAP 文件內容及程序運行時的屏幕顯示。總結宏指令的使用方法和宏指令與子程序的差別,在主程序中注上宏指令的擴展情況。總結 DOS 中斷調用的基本方法。.11.實驗四、模塊化程序設計實驗四、模塊化程序設計一、實驗目的一、實驗目的掌握模塊化程序設計的基
13、本過程和基本方法,掌握模塊之間參數傳遞的方法,了解多模塊程序段的連接(組合)方式。二、實驗原理二、實驗原理1、模塊化程序設計、模塊化程序設計把一個程序分成具有多個明確任務的程序模塊,分別編寫、調試,然后再把它們連接在一起,形成一個完整的程序,這樣的程序設計方法稱為模塊化程序設計。對于一個較復雜的大程序來講,模塊化程序設計不但降低了程序編寫調試的難度,而且不同模塊可分配給不同程序員編寫調試,模塊可重復利用,效率高。模塊化程序設計的一般步驟為:把整個程序劃分成多個模塊,畫出層次圖;編寫調試各個模塊;把各個模塊連接成完整的程序。模塊劃分是一個自頂向下(top-down)的程序設計過程。用層次圖表示各
14、模塊之間的關系,頂層為主模塊,調用下一層的子模塊,而子模塊又可以調用下一層的子模塊,如圖 3-1 所示。劃分模塊時,既要考慮模塊之間的控制耦合應盡可能簡單,一個模塊最好只有一個入口和一個出口;又要考慮模塊之間的數據的傳送量要少;同時還要使各模塊的長度適中。2、局部符號與外部符號、局部符號與外部符號在用戶程序中使用的符號分為局部符號和外部符號。在本模塊中定義,又在本模塊中引用的符號稱為局部符號,不同模塊的局部符號允許重名。在一個模塊中定義,而在另一模塊中引用的符號稱為外部符號。外部符號不允許重名。在一個模塊中定義、要提供給其他模塊使用的符號,必須用 PUBLIC 定義該符號為外部符號。具體格式為
15、:PUBLIC 符號名,在另一模塊中定義而要在本模塊中使用的符號必須用 EXTRN 加以說明。具體格式為:EXTRN 符號名:類型,3、程序段的連接方式、程序段的連接方式段定義時的連接方式規定了程序連接時各模塊程序段的合并方法。允許使用的連接方式有:PUBLIC 該段連接時將與其他模塊中的同名段連接在一起。PRIVATE 該段不與其他模塊中的同名段合并。主模塊模塊 A模塊 B模塊 C模塊 B模塊 D模塊 E圖 3-1 層次圖.12.主模塊分模塊 1分模塊 2圖 3-3 程序結構COMMON 該段在連接時與其他同名段有相同的起始地址,即產生覆蓋。STACK 連接方式同 PUBLIC,用于堆棧段。
16、缺省的連接方式為 PRIVATE。兩個模塊的地址分配及連接后裝入模塊的地址分配情況分別如圖 3-2 所示。三、實驗環境三、實驗環境運行 DOS 或 Windows 系統的微機一臺MASM 匯編程序一套DEBUG 動態調試程序四、實驗內容四、實驗內容1、程序設計、程序設計程序分三個模塊,主模塊為總控模塊,調用分模塊 1 和分模塊 2,完成從鍵盤輸入四門功課的成績,計算并顯示總分。分模塊 1 完成成績的輸入,并將 ASCII 碼轉變成 BCD 碼,存于寄存器 AL中(子程序通過 AL 傳遞結果給主程序) 。分模塊 2 完成四門功課總分的計算,并將 BCD 數轉變為ASCII 碼,保存在變量 TOT
17、AL 中。程序層次結構如圖 3-3 所示。為簡化程序書寫,主程序可使用宏指令和重復匯編偽指令 IRPCENDM。主模塊參考程序:NAME MAINPUBLIC CJ,TOTALEXTRN INPUT:FAR, SUM:FARDAT SEGMENT PUBLICMES1 DB CHINESE: ,9,$MES2 DB MATHS: ,9,$MES3 DB PHYSICS: ,9,$MES4 DB CHEMISTRY:,9,$MES5 DB TOTAL: ,9,$CR DB 0DH,0AH,$; 回車換行符CJ DB 4 DUP (?)TOTAL DB 3 DUP (?),$模塊 1 數據段連接方
18、式:common模塊 1 代碼段連接方式:缺省模塊 2 數據段連接方式:common模塊 2 代碼段連接方式:缺省模塊 1 代碼段裝入模塊數據段長度同模塊 2 數據段模塊 2 代碼段數據段代碼段圖 3-2 程序段的地址分配.13.DAT ENDSSTAC SEGMENT STACKDW 100 DUP (?)STAC ENDSCODE SEGMENTASSUME CS:CODE,DS:DAT,SS:STACMAIN PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATMOV DS,AXDISPLY MACRO STR;定義 DISPLAY 宏指令LEA DX,ST
19、RMOV AH,9INT 21HENDMIRPC X,1234;重復匯編偽指令,每次用字符串 1234 中的一個代替 XDISPLY MES&XCALL INPUTMOV CJ+X-1,ALDISPLY CRENDMDISPLY MES5CALL SUM;計算總分的子程序DISPLY TOTAL;顯示總分DISPLY CRRETMAIN ENDPCODE ENDSEND MAIN分模塊 1 參考程序:NAME INPUTPUBLIC INPUTDAT SEGMENT PUBLICBUF DB 3,?,3 DUP (?)DAT ENDSCODE SEGMENTASSUME DS:DAT,
20、CS:CODEINPUT PROC FARLEA DX,BUF;輸入字符串MOV AH,0AH.14.INT 21HMOV BL,BUF+1;取輸入的字符個數,將 ASCII 碼轉換成 BCD 碼AND BUF+2,0FHAND BUF+3,0FHCMP BL,1JA L1JZ L2MOV AL,0RETL1:MOV CL,4MOV AL,BUF+2SHL AL,CLOR AL,BUF+3RETL2:MOV AL,BUF+2RETINPUT ENDPCODE ENDSEND分模塊 2 參考程序:NAME SUMPUBLIC SUMEXTRN CJ:BYTE,TOTAL:BYTECODE SEG
21、MENTASSUME CS:CODESUM PROC FARMOV AH,0LEA SI,CJ+1MOV CL,3MOV AL,CJAGAIN:ADD AL,SI;計算四門功課的總分DAAJNC NEXTINC AHNEXT: INC SIDEC CLJNZ AGAINOR AH,30H;BCD 碼轉變成 ASCII 碼,存入 TOTAL 變量中MOV TOTAL,AHMOV BL,ALMOV CL,4SHR BL,CLOR BL,30HMOV TOTAL+1,BL.15.AND AL,0FHOR AL,30HMOV TOTAL+2,ALRETSUM ENDPCODE ENDSEND2、程序調
22、試運行、程序調試運行分別對三個模塊進行匯編,形成三個目標代碼文件(.OBJ) 。將三個目標代碼文件連接成一個可執行程序,方法為:LINK 目標代碼文件名 1+目標代碼文件名 2+目標代碼文件名 3在 DOS 提示符下運行程序,并檢查程序運行結果。打開連接時生成的內存映象文件(.MAP) ,對照段的連接方式,分析每個模塊的程序段的排列方式。將主模塊中的 DAT 段及分模塊 1 中的 DAT 段的連接方式改成 COMMON,重新匯編、連接、運行,結果如何?根據 MAP 文件分析其原因。將主模塊中的 DAT 段及分模塊 1 中的 DAT 段的連接方式改成 PRIVATE(缺省方式) ,重新匯編、連接
23、、運行,結果如何?根據 MAP 文件分析其原因。五、實驗報告五、實驗報告簡述模塊化程序設計的基本過程和基本方法。記錄段的連接方式與對應的 MAP 文件內容,分析代碼段、數據段、堆棧段連接方式對程序的影響。在上述實驗程序的基礎上,增加計算并顯示四門功課平均分的指令。.16.實驗五、實驗五、DAIS-2CPU+實驗臺的使用實驗臺的使用一、實驗目的一、實驗目的熟悉 DAIS-2CPU+實驗系統的結構和組成,掌握 Intel8086 集成開發環境的使用。掌握 RAM 中的數據操作二、實驗原理二、實驗原理1、 實驗系統的組成實驗系統的組成系統特點Dais & Keil 中英文雙平臺支持:自主開發
24、的 Dais 集成環境,提供單步、斷點、連續等豐富的調試手段。內置雙蹤虛擬 PC 示波器,通過集成開發環境可在計算機屏幕上顯示被測試端的輸出波形。同時配備開發應用版和示教綜合版集成軟件,形成了仿真開發與教學實驗相結合的多用途實驗型開發系統,充分激發了學生的動手及思維能力,有效提高了實驗效率、實驗成功率和教學質量;同時支持 Keil 軟件,與最優秀的嵌入式集成開發環境實現無縫連接!獨創的達愛思 FlashDown 仿真技術,采用專用下載芯片,可實現 P0、P2 總線和 I/O 口全功能。完全自主的多 CPU 兼容技術,對目標處理器的支持從 8051/8751、8088 到 PC 計算機,高度智能
25、的后臺監控及 CPU 選擇開關令目標 CPU 的切換靈活自如。獨創的 ISA 通用插座設計,充分開放,自由設計,使接口實驗項目由平面到立體無限延伸,可適配達愛思 ISA 實驗擴展卡,亦可由學生自行設計實驗模塊,培養獨立設計與動手能力,直接面向課程設計、畢業設計及電子競賽。PCI 總線實驗支持,強大的 PC 計算機資源與實驗裝置的完美組合,支持Win9X/2000/NT/XP/2003 及 DOS 操作系統,支持實模式、保護模式下的 I/O 設備、存儲器及中斷的訪問,支持匯編語言及高級語言編程(PCI 卡需要另購) 。高效的 PACK 實驗擴展,靈活設計,任意疊加,對創新實驗項目 USB1.1/
26、2.0、TCP/IP、CAN-bus 等完美擴展支持。工作模式單片機:分別支持 8051 模式和 8751 模式(采用專用芯片、下載式技術實現 P0、P2 的 I/O 功能)。微機:8086 最小系統和 32 位 PCI 總線擴展方式(PCI 卡需另購) ,采用 PCI9052,實現對實驗箱的 I/O、存儲器、中斷的訪問。使學生練習并掌握 WDM 驅動程序的編寫,以及用 C/C+、匯編語言實現各個實驗程序的設計,支持最新的 Windows 版本!51 單片機:分別支持 8051 模式和 8751 模式(采用專用芯片、下載式技術實現 P0、P2 的 I/O 功能) 。系統組成如圖 5-1 所示。
27、 圖 5-1 實驗系統組成+.17.2、集成軟件環境、集成軟件環境系統配有 Intel8086 集成開發環境,提供全屏幕編輯、8086 和 8051 匯編與連接、DEBUG 動態調試以及 PC 示波器功能。打開 Windows 開始菜單,啟動 Intel8086 集成開發環境,顯示程序主窗口,如圖 5-2 所示。在程序主窗口中,可以打開全屏幕編輯窗口、寄存器窗口、調試窗口及示波器窗口,可以完成程序的編輯、匯編、連接、調試及運行。圖 5-2 Intel8086 集成開發環境主窗口三、實驗環境三、實驗環境運行 Windows 系統微機一臺DAIS-2CPU+實驗臺一臺串行通信電纜一根四、實驗內容四
28、、實驗內容使用串行通信電纜連接 PC 機和實驗臺。進入 Intel8086 集成開發環境,在主菜單上選擇實驗臺對應串口號(COM1 或 COM2) ,單擊文件菜單的新建命令或新建工具,出現全屏幕文本編輯窗口。1、清零程序實驗把 RAM 區內 4000H40FFH 單元的內容清零。參考程序如下:CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3000HS1: MOV BX,4000H MOV Al,00H MOV CX,0010HL1: MOV BX,AX INC BX not al LOOP L1 JMP $CODE ENDS END S1實驗步
29、驟LED 環境.18. 在“P”狀態下按“0EV/UN”,裝載實驗所虛的代碼程序。 在“P”狀態下鍵入 3000,然后按“STEP”或“EXEC”進入實驗項目的調試與運行。PC 環境 在與 PC 聯機狀態下,編譯、連接、裝載 PHSE01.ASM,用連續或單步方式運行。運行結果檢查 在單步運行時,每走一步可觀察其運行結果。 在連續運行狀態下,應按“暫停圖標”或實驗臺上的“暫停按鈕” ,使系統無條件推出用戶運行狀態返回監控,然后再用相應的命令鍵觀察與檢查 4000-40FFH 中執行程序前后內容的變化。 2、數據區移動程序把 4100H 源 RAM 區首地址內的 16 字節數據傳送到 4200H
30、 目標 RAM 區。設計思想:程序要求把內存中一數據區(稱為源數據塊)傳送到另一存儲區(稱為目的數據塊) 。源數據塊和目的數據塊在存儲器中可能有三種情況,如圖 5-3:圖 5-3對于兩個數據分離的情況,如圖(a),數據的傳送從數據塊的首地址開始,或者從數據塊的末地址開始均可。但對于有部分重疊的情況,則要加以分析,否則重疊部分會因“搬移”而遭破壞。可以得出如下結論:當源數據首址大于目的塊首址時,從數據塊首址開始傳送數據。當源數據首址小于目的塊首址時,從數據塊末址開始傳送數據。參考程序如下:CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3060HS
31、4: MOV CX,0010H MOV SI,4100H MOV DI,4200H CMP SI,DI JA A42 ADD SI,CX ADD DI,CXA41: DEC SI DEC DI MOV AL,SI MOV DI,AL LOOP A41 JMP $A42: MOV AL,SI MOV DI,AL INC SI INC DI LOOP A42.19. JMP $CODE ENDS END S4實驗步驟LED 環境 在“P”狀態下按“0EV/UN”,裝載實驗所虛的代碼程序。 在“P”狀態下鍵入 3060,然后按“STEP”或“EXEC”進入實驗項目的調試與運行。PC 環境 在與 PC
32、 聯機狀態下,編譯、連接、裝載 PHSE04.ASM,用連續或單步方式運行。運行結果檢查 在單步運行時,每走一步可觀察其運行結果。 在連續運行狀態下,應按“暫停圖標”或實驗臺上的“暫停按鈕” ,使系統無條件推出用戶運行狀態返回監控,檢查 4100-410FH 中執內容是否和 4200-420FH 中內容完全一致。五、實驗報告五、實驗報告 DAIS-2CPU+實驗系統的基本組成和 Intel8086 集成軟件環境的主要功能。 回答程序裝入實驗臺后重新啟動 PC 機,實驗臺中程序是否存在。 假使把 4000H40FFH 中的內容改成 FFh,如何修改程序。.20.S1 S0 L1 L0 M2 M1
33、 M0BCD實驗六、實驗六、8253 定時計數器實驗定時計數器實驗一、實驗目的一、實驗目的掌握 8253 的工作原理及其應用。二、實驗原理二、實驗原理1、 8253 芯片芯片8253 是可編程定時/計數器接口芯片,內部具有三個獨立的 16 位計數器,最高計數速率為2.6MHz。8253 的外部引腳和內部結構如圖 6-1 所示。8253 每個通道有六種工作方式,分別是方式 0 至方式 5,通過方式控制字選擇,8253 的方式控制字如圖 6-2 所示。 2、實驗系統中的、實驗系統中的 8253實驗系統中裝有一片 8253,線路圖如圖 6-3 所示,通道 0 輸入 1.19MHz 的時鐘,輸出送 8
34、259的 IRQ0,作為實時時鐘信號。通道 1 輸入 1.8432MHz 的時鐘,以 12 分頻后輸出 153.6KHz 方波送8251,作為串行通信的收發時鐘。通道 2 以排針形式引出,供用戶實驗使用,系統中的 8253 的端口地址為 40H43H,地址分配如表 6-1 所示。 表 6-1 8253 端口地址分配表通道選擇00選擇通道 001選擇通道 110選擇通道 210選擇通道 3計數方式0二進制1二十進制工作方式000方式 0001方式 110方式 211方式 3100方式 4101方式 5操作方式00鎖存計數值01讀/寫計數器低字節10讀/寫計數器高字節11先讀/寫計數器低字節再讀/
35、寫計數器高字節數據總線緩沖器讀/寫控制邏輯控制寄存器通道0通道1通道2CLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2RDWRA0A1CSD7D01234ABCD4321DCBAD08OUT010D17GATE011D26CLK09D35D44D53D62OUT113D71GATE114CLK115CS21RD22WR23OUT217A019GATE216A120CLK2188253圖 6-1 8253 內部結構和外部引腳圖 6-2 8253 的控制字.21. 圖 6-3 8253三、實驗環境三、實驗環境運行 Windows 系統微機一臺Dais-IP2.0 實驗
36、臺一臺示波器一臺四、實驗內容四、實驗內容1、 8253 的的 0 通常工作在方式通常工作在方式 3,產生方波。,產生方波。 程序流程圖 6-4 程序流程圖 實驗電路圖 6-5 實驗電路圖 編程提示8253 芯片介紹8253 是一種可編程定/計數器,有三個十六位計數器,其計數頻率范圍為 02MHZ,用+5V單電源供電。寄存器地址通道 0 計數器40H通道 1 計數器41H通道 2 計數器42H控制寄存器43H.22.8253 的功能用途:延時中斷實時時鐘可編程頻率發生器數字單穩事件計數器復雜的電機控制器二進制倍頻器8253 的六種工作方式:方式 0:計數結束中斷方式 3:方波頻率發生器方式 1:
37、可編程頻率發生方式 4:軟件觸發的選通信號方式 2:頻率發生器方式 5:硬件觸發的選通信號8253 的 0 號通道工作在方式 3,產生方波。 定時/計數器8253 方波參考程序CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3490HH9: MOV DX,0FFE3H MOV AL,36H OUT DX,AL MOV DX,0FFE0H MOV AL,00H OUT DX,AL MOV AL,10H OUT DX,AL JMP $CODE ENDS END H9 實驗步驟1、實驗連線連接 138 譯碼輸入端 A.B.C,其中 A 連 A2,B 連
38、 A3,C 連 A4,138 使能控制輸入端G 與總線單元上方的 GS 相連。定時計數單元 CLK0 與分頻單元 T2 相連,GATE0 與 5V 相連,8253CS 與譯碼單元 Y0相連。用 8 芯扁平電纜將 8251 串行通信單元的數據總線插座與數據總線單元任一插座相連。2、LED 環境(1)在“P.”狀態下按“0EV/UN” ,裝載實驗所需的代碼程序。(2)在“P.”狀態下鍵入 3490,然后按“EXEC”進入實驗項目的運行。3、PC 環境.23.在與 PC 聯機狀態下,編譯、連接、下載 PH88he09.asm,用連續方式運行程序。4、觀察運行結果以連續方式運行程序,用示波器觀察 OU
39、T0 應有方波輸出。5、終止運行按“暫停圖標”或實驗箱上的“暫停按鈕” ,使系統無條件退出該程序的運行返回監控狀態。2、 電子發聲實驗(選做)電子發聲實驗(選做)8253 通道 2 工作在方式 3(方波發生器) ,CLK2 輸入 1.1925MHz 的 OPCLK 信號,根據音階給8253 送不同的定時初值,OUT2 輸出不同頻率的方波,送蜂鳴器發聲。利用延時程序作音樂節拍,每過一定時間(一拍) ,給 8253 送下一拍的計數初值,實驗接線如圖 6-6 所示,實驗參考程序如下:STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSDATA SEGMENTTABLE
40、DB 33H,33H,3DH,33H,26H,26H,26H,26HDB 2DH,2DH,26H,26H,33H, 33H,33H,33H ;DB 33H,33H,4DH,45H,3DH,3DH,45H,4DHDB 45H,45H,45H,45H,45H,45H,45H,45H ;DB 33H,33H,3DH,33H,26H,26H, 26H,28HDB 2DH,2DH,26H,26H,33H,33H,33H,33H ;DB 33H,33H,45H,3DH,39H, 39H,39H,52HDB 4DH,4DH,4DH,4DH,4DH,4DH,4DH,4DH ;DB 2DH,2DH, 26H,2
41、6H,26H,26H,26H,26HDB 28H,28H,2DH,28H,26H,26H,26H, 26H ;DB 2DH,28H,26H,2DH,2DH,33H,3DH,4DHDB 45H,45H,45H,45H, 45H,45H,45H,45H ;DB 33H,33H,3DH,33H,26H,26H,26H,28HDB 2DH, 2DH,26H,26H,33H,33H,33H,33H ;DB 33H,33H,45H,3DH,39H,39H, 39H,52HDB 4DH,4DH,4DH,4DH,4DH,4DH,4DH,4DH, 00HDATA ENDSCODE SEGMENTASSUME C
42、S:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV BX,OFFSET TABLEMOV AL,BXMOV AH,00HA1:MOV DL,0FHMUL DLPUSH AXMOV AL,0B6HOUT 43H,ALPOP AXOUT 42H,ALMOV AL,AHOUT 42H,ALINC BXMOV AH,00H.24.MOV AL,BXAND AL,0FFHJZ A3MOV CX,77FFHA2:PUSH AXPOP AXLOOP A2JMP A1A3:MOV BX,OFFSET TABLEMOV AL,BXMOV AH,00HJMP A1CODE EN
43、DSEND START實驗步驟:按圖接線。輸入程序,經匯編、連接后裝入實驗系統。運行程序,觀察蜂鳴器發出的音樂聲。五、實驗報告五、實驗報告記錄實驗過程,分析程序,總結 8253 各種工作方式的作用。OPCLK1.1925MHzCLK2OUT2SPKSPK UNIT8253圖 6-6 電子發聲實驗接線圖系統總線.25.實驗七、實驗七、8255 并行接口實驗并行接口實驗一、實驗目的一、實驗目的掌握可編程 I/O 接口芯片 8255 的接口原理使用,熟悉對 8255 初始化編程和輸入、輸出軟件的設計方法。掌握 8255 芯片的內部結構和外部引腳。掌握 8255A 的工作方式和編程原理。二、實驗原理二
44、、實驗原理1、8255 簡介簡介8255 是可編程并行接口芯片,一片 8255 提供 A、B、C 三個 8 位并行口,外部引腳如圖 7-1 所示。其中 A 口有方式 0、方式 1、方式 2 三種工作方式,B 口有方式 0、方式 1 兩種工作方式,C 口既可以用作一個 8 位數據端口,也可以用作兩個 4 位數據端口,還可以按位置位或復位(位操作) 。在 A口、B 口工作方式 1 或方式 2 時,C 口的部分甚至全部口線作為 A 口、B 口的聯絡控制信號。一片 8255 占用四個端口地址,用 A1、A0兩根地址線選擇。當 A1A0=00 時,選擇 A 口當 A1A0=01 時,選擇 B 口當 A1
45、A0=10 時,選擇 C 口當 A1A0=11 時,選擇控制寄存器各端口的工作方式由方式控制字決定,控制字的格式如圖 7-2 所示。方式 0 為基本的輸入或輸出方式;方式 1 為帶選通的輸入或輸出方式;方式 2(僅 A 口允許)為帶選通的雙向方式。C 口位操作控制字如圖 7-3 所示。1 D6 D5 D4 D3 D2 D1 D00:PC3PC0 輸出1:PC3PC0 輸入0:端口 B 輸出1:端口 B 輸入0:端口 B 方式 01:端口 B 方式 10:PC7PC4 輸出1:PC7PC4 輸入0:端口 A 輸出1:端口 A 輸入00:端口 A 方式001:端口 A 方式11:端口 A 方式 2
46、圖 7-2 8255 方式控制字8255APA7PA0PB7PB0PC7PC0D7D0RDWRA1A0CS圖 7-1 8255 的外部引腳0 D6 D5 D4 D3 D2 D1 D00:復位1:置位000:PC0001:PC1010:PC2011:PC3100:PC4101:PC5110:PC6111:PC7無關圖 7-3 C 口位操作控制字.26.2、實驗單元電路、實驗單元電路8255 實驗單元 Dais 實驗臺右下角有一片 8255 芯片,其數據線、片選信號線、地址線、讀寫控制信號等分別與系統總線相連,A、B、C 三個并行口引腳全部以排針形式引出,供實驗使用。線路圖如圖 7-4 所示,端口
47、地址如表 7-1 所示。開關和發光二極管實驗單元實驗用開關和發光二極管單元電路如圖 7-5 所示。三、實驗環境三、實驗環境運行 Windows 系統微機一臺Dais 實驗臺一臺串行通信電纜一根四、實驗內容四、實驗內容1、8255A.B.C 口波形測試。口波形測試。 程序流程圖 7-6 程序流程圖 8255A 并行口實驗方波參考程序CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 32C0HH1: JMP STARTP1PA EQU 0FFD8H端口地址A 口60HB 口61HC 口62H控制寄存器63HRDWRCSA1A0RESET系統總線PA7P
48、A0PB7PB0PC7PC0D7D0圖 7-4 Dais 中的 8255表 7-1 8255 端口地址D0D7+5VK0K7+5圖 7-5 SW-LED 單元電路.27.PB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHSTARTP1:MOV DX,PCTL MOV AL,80H OUT DX,AL MOV AL,55HP11: MOV DX,PA OUT DX,AL INC DX OUT DX,AL INC DX OUT DX,AL MOV CX,8000H LOOP $ NOT AL JMP P11CODE ENDS END H1 實驗步驟1、LED 環境(
49、1)在“P.”狀態下按“0EV/UN” ,裝載實驗所需的代碼程序。(2)在“P.”狀態下鍵入 32C0,然后按“EXEC”進入實驗項目的運行。2、PC 環境在與 PC 聯機狀態下,編譯、連接、下載 PH88he01.asm,用連續方式運行程序。3、觀察運行結果以連續方式運行程序,用 8255A、B、C 口分別用插針連接 L1-L8,觀察發光二極管變化情況,用萬用表測量 8255A、B、C 口應有高低電平輸出。4、終止運行按“暫停圖標”或實驗箱上的“暫停按鈕” ,使系統無條件退出該程序的運行返回監控狀態。2、用、用 8255 PA 作開關量輸入口,作開關量輸入口,PB 作輸出口。作輸出口。 程序
50、流程圖 7-7 程序流程圖 實驗電路.28.圖 7-8 實驗電路圖 編程提示(1)8255A 芯片簡介8255A 可編程外圍接口芯片是 Intel 公司生產的通用并行接口芯片,它具有A、B、C 三個并行接口,用+5V 電源供電,能在以下三種方式下工作: 方式 0:基本輸入/輸出方式方式 1:選通輸入/輸出方式方式 2:雙向選通工作方式(2)使 8255A 端口 A 工作在方式 0 并作為輸入口,讀取 K1K8 八個開關量,送 PB 口顯示。PB 口工作在方式 0 作為輸出口。 8255A 并行口實驗PA 輸入,PB 輸出參考程序CODE SEGMENT ASSUME CS:CODE,DS:CO
51、DE,ES:CODE ORG 32E0HPA EQU 0FFD8HPB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHH2: MOV DX,PCTL MOV AL,90H OUT DX,ALP2: MOV DX,PA IN AL,DX INC DX OUT DX,AL JMP P2CODE ENDS END H2 實驗步驟 按實驗電路圖連接線路: 8255A 芯片 A 口的 AP0PA7 依次和開關量輸入插孔 K1K8 相連。 8255A 芯片 B 口的 AB0PB7 依次接 L1L8 運行實驗程序。1、LED 環境 在系統處“P.”狀態時按“0EV/UN” ,裝
52、載實驗所需的代碼程序。輸入 32E0,按 EXEC 鍵,撥動 K1K8、L1L8 會跟著亮滅。2、PC 環境在與 PC 聯機狀態下,編譯、連接、下載 PH88he02.asm,用連續方式運行程序。 撥動 K1K8、L1L8 會跟著亮滅。.29.3、 用用 8255 作輸出口,控制十二個發光二極管燃滅,模擬交通燈管理。作輸出口,控制十二個發光二極管燃滅,模擬交通燈管理。 編程提示(1) 、通過 8255A 控制發光二極管 PB3、PB0、PA5、PA2 對應黃燈,PB1、PA6、PA3、PA0 對應紅燈,PB2、PA7、PA4、PA1 對應綠燈,以模擬交通路燈的管理。(2) 、要完成本實驗,必須
53、先了解交通路燈的亮滅規律,沒有一個十字路口 1、3 為南北方向,2、4 為東西方向,初始狀態為四個路口的紅燈全亮。之后,1、3 路口的綠燈亮,2、4 路口的紅燈亮,1、3 路口方向通車。延時一段時間后,1、3 路口的綠燈熄滅,而 1、3 路口的黃燈開始閃爍,閃爍若干次以后,1、3 路口紅燈亮,而同時 2、4 路口的綠燈亮,2、4 路口方向通車,延時一段時間后,2、4 路口的綠燈熄滅,而黃燈開始閃爍,閃爍若干次以后,再切換到 1、3 路口方向,之后,重復上述過程。(3) 、程序中設定好 8255A 的工作模式,及三個端口均工作在方式 0,并處于輸出狀態。(4) 、各發光二極管共陽極,使其點亮應使
54、 8255A 相應端口的位清 0,邏輯 1 熄滅。 程序流程圖 7-9 程序流程圖 實驗電路.30.圖 7-10 實驗電路圖實驗步驟按實驗電路圖連接線路: 8255APA0-L15 PA1-L14 PA2-L13 PA3-L11 PA4-L10 PA5-L9 PA6-L7 PA6-L6 PB0-L5PB1-L3 PB2-L2 PB3-L1運行實驗程序:1、LED 環境 在系統處“P.”狀態時按“0EV/UN” ,裝載實驗所需的代碼程序。輸入 32F0,按 EXEC 鍵,L1L12 發光二極管模擬交通燈顯示。2、PC 環境在與 PC 聯機狀態下,編譯、連接、下載 PH88he03.asm,用連續
55、方式運行程序。L1L12 發光二極管模擬交通燈顯示。3、觀察運行結果 以連續方式運行程序,觀察發光二極管變化情況,記錄初始態以及變化狀態。五、實驗報告五、實驗報告復習 8255 的工作方式及控制字,仔細分析實驗參考程序的指令功能。分析實驗電路圖,寫出實驗步驟。如果利用 8255A 口輸出數據到 LED 數碼顯示器,使循環顯示 09 十個數字,該如何連線,實驗程序如何修改?實驗臺實驗臺 LED 數碼顯示單元電路圖數碼顯示單元電路圖74LS0774LS07X1adpX2X3X4+5V+5VY1Y201237654.31.實驗八、實驗八、8251 串行接口實驗串行接口實驗一、實驗目的一、實驗目的熟悉
56、串行通信的基本概念掌握 8251 串行接口芯片的工作方式及其應用。二、實驗原理二、實驗原理1、8251A 串行接口芯片串行接口芯片8251A 是串行通信接口芯片,主要功能為:允許同步或異步通信,同步通信波特率為 064K,異步通信波特率為 019.2K。同步通信時,允許內同步,也允許外同步,允許單同步字符或雙同步字符。異步通信時,字符長度為 58 位,停止位為 12 位,允許奇偶校驗或不帶校驗,具有奇偶錯誤、溢出錯誤和幀錯誤檢測能力。8251A 的內部結構如圖 8-1 所示,其方式控制字、命令控制字和狀態字格式如圖 8-2 所示。8251 通過 C/D 信號選擇內部命令寄存器和數據寄存器,當
57、C/D 與地址線 A0 相連時,一片8251A 占用兩個端口地址,其中奇地址為控制端口,偶地址為數據端口。8251A 的方式控制字和命令控制字是由寫入的先后順序決定的,復位后第一次寫入的控制字為方式控制字,以后寫入的為操作控制字。如果要改變 8251A 的工作方式,需通過外部 RESET 信號或復位命令字實施對 8251A 的復位操作。 00無效011 位停止位101.5 位停止位異步112 位停止位002 個同步字符,內同步,SYNDET 輸出012 個同步字符,外同步,SYNDET 輸入101 個同步字符,內同步,SYNDET 輸出同步111 個同步字符,外同步,SYNDET 輸入數據總線
58、緩沖讀寫控制邏輯調制/解調控制RESETCLKC/DRDWRCSD7D0發送緩沖器發送移位寄存器發送控制電路接收緩沖器接收移位寄存器接收控制電路RxDTxDRxRDYRxCSYNDETTxRDYTxEMPTYTxCDSRDTRCTSRTS圖 8-1 8251A 內部結構.32.圖 8-2 8251A 控制字格式2、實驗系統中的、實驗系統中的 8251實驗系統中的 8251,如圖 8-3、圖 8-4 所示。8251A 的端口地址見表 8-1。TxDGNDRxDDSRCTSRTS圖 8-3 實驗單元中的 8251DTREH IR RTSER SBRK RxE DTR TxEN1:允許發送1:DTR
59、 有效1:允許接收1:發送斷缺字符0:正常工作1:清除錯誤標志1:RTS 有效1:內部復位1:進入同步字符搜索方式(b) 8251A 操作控制字DSR SYNDET/BRKDET FE OE PE TxEMPTY RxRDY TxRDY為 1 時,相應引腳信號有效(c) 8251A 狀態字S2 S1 EP PEN L2 L1 B2 B100:同步方式01:異步方式(1)10:異步方式(16)11:異步方式(64)00:5 位01:6 位10:7 位11:8 位0:不帶奇偶校驗01:奇校驗11:偶校驗(a) 8251A 方式控制字.33.表 8-1 8251 端口地址分配芯片端口地址數據C0H系
60、統 8251控制C1H數據80H實驗單元 8251控制81H三、實驗環境三、實驗環境運行 Windows 系統微機一臺Dais-IP2.0 實驗臺一臺示波器一臺四、實驗內容四、實驗內容1、利用本實驗系統內的、利用本實驗系統內的 8251 接口芯片,采用自發自收的方法,實現數據收發通信實驗。發送的數接口芯片,采用自發自收的方法,實現數據收發通信實驗。發送的數據為據為 4000H 開始的開始的 16 個源個源 RAM 區單元內容,接收到的數據放在區單元內容,接收到的數據放在 5000H 開始的開始的 RAM 單元中,核單元中,核對接收的數據是否和發送的數據一致。對接收的數據是否和發送的數據一致。 編程提示數據發送
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030肺氣腫治療行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國轉基因種子行業發展分析及發展前景與投資報告
- 二年級語文下冊味道類詞語品鑒課件
- 2025年中國LED數碼變色管數據監測報告
- 2025年中國8芯電話線數據監測研究報告
- 2025至2030中國汽車香水行業供需分析及發展前景報告
- 2025至2030中國汽車清潔劑行業產業運行態勢及投資規劃深度研究報告
- 2025至2030中國汽車多功能升降機行業產業運行態勢及投資規劃深度研究報告
- 2025至2030中國氯化硫行業市場深度調研及發展趨勢與投資方向報告
- 2025至2030中國正火鋼板行業市場占有率及投資前景評估規劃報告
- 外科病應急預案嵌頓疝病人應急預案
- 孤獨癥康復教育人員上崗培訓練習題庫及答案
- 機械設備投入計劃及保證措施
- 東南大學附屬中大醫院ECMO操作記錄單
- 每月防火檢查及記錄表(每月一次)
- DFMEA編制作業指導書新版
- 工程項目成本預算表
- GB∕T 3639-2021 冷拔或冷軋精密無縫鋼管
- DB51∕T 2628-2019 司法所外觀及室內標識規范
- 一般自我效能感量表(GSES)
- 2022版義務教育語文課程標準(2022版含新增和修訂部分)
評論
0/150
提交評論