單片機EL型微機教學(xué)實驗系統(tǒng)結(jié)構(gòu)實驗指導(dǎo)_第1頁
單片機EL型微機教學(xué)實驗系統(tǒng)結(jié)構(gòu)實驗指導(dǎo)_第2頁
單片機EL型微機教學(xué)實驗系統(tǒng)結(jié)構(gòu)實驗指導(dǎo)_第3頁
單片機EL型微機教學(xué)實驗系統(tǒng)結(jié)構(gòu)實驗指導(dǎo)_第4頁
單片機EL型微機教學(xué)實驗系統(tǒng)結(jié)構(gòu)實驗指導(dǎo)_第5頁
已閱讀5頁,還剩50頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

實驗 指導(dǎo)書 山東英才學(xué)院 計算機電子信息工程學(xué)院 目錄 第一部分 系統(tǒng)介紹 . 1 一、整機介紹 . 1 二、系統(tǒng)特點 . 1 三、 8051 單元概述 . 2 第二部分 8051 調(diào)試軟件的使用 . 5 一、主窗口簡介 . 5 二、編輯程序 . 6 三、編譯調(diào)試 . 6 第三部分 基本試驗 . 7 實驗一 P1 口實驗 . 7 實驗(一) P1 口實驗一 . 7 實驗(二) P1 口實驗二 . 10 實驗二 簡單 I/O 口擴展實驗 . 13 實驗(一)簡單 I/O 口擴展實驗一 . 13 實驗(二)簡單 I/O 口擴展實驗二 . 16 實驗三 中斷 實驗 . 18 實驗四 定時器實驗 . 22 實驗五 8255A 可編程并行接口實驗 . 25 實驗(一) 8255A 可編程并行接口實驗一 . 25 實驗(二) 8255A 可編程并行接口實驗二 . 27 實驗六 數(shù)碼顯示實驗 . 33 實驗七 D/A 轉(zhuǎn)換實驗 . 39 實驗八 A/D 轉(zhuǎn)換實驗 . 44 實驗九 存儲器擴展實驗 . 48 實驗十 LCD 顯示實驗 . 50 山東英才學(xué)院 第 1 頁 共 55 頁 第一部分 系統(tǒng)介紹 一、整機介紹 1、 EL 型微機教學(xué)實驗系統(tǒng)結(jié)構(gòu) EL-MUT-III 型微機教學(xué)實驗系統(tǒng)由電源、系統(tǒng)板、 CPU 板、可擴展的實驗?zāi)0濉⑽C串口通訊線、 JTAG 通訊線及通用連接線組成。系統(tǒng)板的結(jié)構(gòu)簡圖見下圖。 二、系統(tǒng)特點 EL-MUT-III 型微機 /單片機教學(xué)實驗系統(tǒng)是北京精儀達盛科技有限公司根據(jù)廣大學(xué)者和許多高等院校實驗需求,結(jié)合電子發(fā)展情況而研制的具有開發(fā)、應(yīng)用、實驗相結(jié)合的高科技實驗設(shè)備。旨在盡快提高我國電子科技 發(fā)展水平,提高實驗者的動手能力、分析解決問題能力。系統(tǒng)具有以下特點: 1、 CPU 可選用 80C31、 8086、 80C196 中任一種 CPU,系統(tǒng)功能齊全,涵蓋了微機 /單片機教學(xué)實驗課程的大部分內(nèi)容。 2、 系統(tǒng)采用開放式模塊化結(jié)構(gòu)設(shè)計,通過兩組相對獨立的總線最多可同時擴展 2 塊應(yīng)用實驗板,用戶可根據(jù)需要購置相應(yīng)實驗板,降低了成本,提高了靈活性,便于升級換代。 3、 配有兩塊可編程器件: EPM7128 被系統(tǒng)占用。另一塊 EPM7032 供用戶實驗用。兩塊器件皆可通過 JTAG 接口在線編程。使用十分方便。 4、 靈活的電源接口:配有 PC 機電源插 座,可由 PC 提供電源。另外還配有外接開關(guān)電源,提供所需的 +5V, 12V,其輸入為 220V 的交流電。 5、 系統(tǒng)的聯(lián)機運行模式:配有系統(tǒng)調(diào)試軟件,系統(tǒng)調(diào)試軟件分 DOS 版和 WINDOWS 版兩山東英才學(xué)院 第 2 頁 共 55 頁 種,均為中文多窗口界面。調(diào)試程序時可以同時打開寄存器窗口、內(nèi)存窗口、變量窗口、反匯編窗口、波形顯示窗口等等,極大地方便了用戶的程序調(diào)試。該軟件集源程序編輯、編譯、鏈接、調(diào)試與一體,每項功能均為中文下拉菜單,簡明易學(xué)。經(jīng)常使用的功能均備有熱鍵,這樣可以提高程序的調(diào)試效率。 8051 調(diào)試軟件不僅支持匯編語言,而且還支持 C 語言編輯調(diào)試。 6、 系統(tǒng)的單機運行模式:系統(tǒng)在沒有與計算機連接的情況下,自動運行在單機模式,在此模式下,用戶可通過鍵盤輸入運行程序(機器碼),和操作指令,同時將輸入信息及操作的結(jié)果在 LED 數(shù)碼管上顯示出來。 7、 系統(tǒng)功能齊全,可擴展性強。本實驗系統(tǒng)不僅完全能滿足教學(xué)大綱規(guī)定的基本接口芯片實驗,其靈活性和可擴展性(數(shù)據(jù)總線、地址總線、控制總線為用戶開放)亦能輕松滿足其課程設(shè)計、畢業(yè)設(shè)計使用等。 三、 8051單元概述 1)、微處理器: i80c31,它的 P1 口、 P3 口皆對用戶開放,供用戶使用。 2)、時鐘頻率: 6.0MHz 3)、存儲 器:程序存儲器與數(shù)據(jù)存儲器統(tǒng)一編址,最多可達 64k,板載 ROM(監(jiān)控程序27C256)12k; RAM1(程序存儲器 6264)8k 供用戶下載實驗程序,可擴展達 32k; RAM2(數(shù)據(jù)存儲器 6264)8k 供用戶程序使用,可擴展達 32k。 (RAM 程序存儲器與數(shù)據(jù)存儲器不可同時擴至32k,具體與廠家聯(lián)系 )。(見圖 1-1:存儲器組織圖)。在程序存儲器中, 0000H-2FFFH為監(jiān)控程序存儲器區(qū),用戶不可用, 4000H-5FFFH 為用戶實驗程序存儲區(qū),供用戶下載實驗程序。數(shù)據(jù)存儲器的范圍為: 6000H-7FFFH,供用戶實驗程序使用。 注意:因用戶實驗程序區(qū)位于 4000H-5FFFH,用戶在編寫實驗程序時要注意,程序的起始地址應(yīng)為 4000H,所用的中斷入口地址均應(yīng)在原地址的基礎(chǔ)上,加上 4000H。例如:外部中斷 0 的原中斷入口為 0003H,用戶實驗程序的外部中斷 0 的中斷程序入口為 4003H,其他類推,見表 1-1。 4)、可提供的對 8051 的基本實驗 為了提高微機教學(xué)實驗質(zhì)量,提高實驗效率,減輕主講教師和實驗教師的勞動強度,在該系統(tǒng)的實驗板上,除微處理器外、程序存儲器、數(shù)據(jù)存儲器外,還增加了 8255 并行接口、 8250 串行控制器、 8279 鍵盤、顯示控制器、 8253 可編程定時器、 A/D、 D/A 轉(zhuǎn)換、單脈沖、各種頻率的脈沖發(fā)生器、輸入、輸出電路等模塊,各部分電路既相互獨立、又可靈活組合,能滿足各類學(xué)校,不同層次微機實驗與培訓(xùn)要求??商峁┑膶嶒炄缦拢?( 1)、 8051P1 口輸入、輸出實驗 ( 2)、簡單的擴展輸入、輸出實驗 ( 3)、 8051 定時器 /計數(shù)器實驗( 4)、 8051 外中斷實驗 ( 5)、 8279 鍵盤掃描、 LED 顯示實驗 ( 6)、 8255 并行口輸入、輸出實驗 ( 7)、交通燈控制實驗 ( 8)、 8259 中 斷實驗 ( 10)、 A/D 轉(zhuǎn)換實驗 (11)、 D/A 轉(zhuǎn)換實驗 ( 12)、存儲器擴展實驗 用戶 I/O 區(qū) FFFFH 山東英才學(xué)院 第 3 頁 共 55 頁 系統(tǒng) I/O 區(qū) CFEFH 用戶 I/O 區(qū) CFBFH RAM2 用戶實驗程序區(qū) 供用戶下載實驗 程序 FFFH RAM1 用戶實驗程序 數(shù)據(jù)區(qū) 4FFFH ROM 系統(tǒng)監(jiān)控程序區(qū) 2FFFH 0000H 圖 1:存儲器系統(tǒng)組織圖 中斷名稱 8051 原中斷程序入口 用戶實驗程序響應(yīng)程序入口 外中斷 0 0003H 4003H 定時器 0 中斷 000BH 400BH 外中斷 1 0013H 4013H 定時器 1 中斷 001BH 401BH 串行口中斷 0023H 4023H 表 1-1:用戶中斷程序入口表 5) 、 資源分配 本系統(tǒng)采用可編程邏輯器件( CPLD) EPM7128 做地址的編譯碼工作,可通過芯片的 JTAG接口與 PC 機相連,對芯 片進行編程。此單元也分兩部分:一部分為系統(tǒng) CPLD,完成系統(tǒng)器件,如監(jiān)控程序存儲器、用戶程序存儲器、數(shù)據(jù)存儲器、系統(tǒng)顯示控制器、系統(tǒng)串行通訊控制器等的地址譯碼功能,同時也由部分地址單元經(jīng)譯碼后輸出(插孔 CS0-CS5)給用戶使用,他們的地址固定,用戶不可改變。具體的對應(yīng)關(guān)系見表 1-2。另一部分為用戶 CPLD,它完全對用戶開放,用戶可在一定的地址范圍內(nèi),進行編譯碼,輸出為插孔 LCS0-LCS7,用戶可用的地址范圍見表 1 2,注意,用戶的地址不能與系統(tǒng)相沖突,否則將導(dǎo)致錯誤。 山東英才學(xué)院 第 4 頁 共 55 頁 地 址范圍 輸出孔 /映射器件 性質(zhì)(系統(tǒng) /用戶) 0000H-2FFFH 監(jiān)控程序存儲器 系統(tǒng) * 3000H-3FFFH 數(shù)據(jù)存儲器 系統(tǒng) * 4000H-7FFFH 用戶程序存儲器 系統(tǒng) * 8000H-CFDFH LCS0-LCS7 用戶 CFE0H PC 機串行通訊芯片 8250 系統(tǒng) * CFE8H 顯示、鍵盤芯片 8279 系統(tǒng) CFA0H-CFA7H CS0 系統(tǒng) CFA8H-CFAFH CS1 系統(tǒng) CFB0H-CFB7H CS2 系統(tǒng) CFB8H-CFBFH CS3 系統(tǒng) CFC0H-CFC7H CS4 系統(tǒng) CFC8H-CFCFH CS5 系統(tǒng) CFD0H-FFFFH LCS0-LCS7 用戶 注:系統(tǒng)地址中,除帶“ *”用戶既不可用,也不可改外,其他系統(tǒng)地址用戶可用但不可改。 表 1 2: CPLD 地址分配表 山東英才學(xué)院 第 5 頁 共 55 頁 第二部分 8051 調(diào)試軟件的使用 一、主窗口簡介 主窗口共有以下幾個區(qū)域組成:最上部為此集成開發(fā)環(huán)境的程序名稱及打開的文件名稱(當(dāng)沒有文件打開時,則無文件名稱顯示),一般為藍底白字。它的下部為主菜單,主菜單的項目與工作狀態(tài)有關(guān):當(dāng)沒有文件打開或運行時,只有三項 :文件、查看、幫助。 而當(dāng)有文件打開時,則共有九項:文件、編輯、查看、編譯、調(diào)試、控制對象、選項、窗口、幫助(主菜單的功能見功能詳解)。在主菜單的下部為工具欄,自左至右為:新建 C文件( )、新建匯編文件( )、打開(文件)( )、文件保存(存盤)( )、剪切( )、復(fù)制( )、粘貼( )、 C 程序編譯命令 (Ctrl+F7)( )、 C 程序連接命令 (Shift+F7)( )、C 程序編譯連接命令 (F3)( )、匯編命令 (F3)( )、開始調(diào)試 (F5)( )、停止調(diào)試Shift+F5( )、程序復(fù)位 Ctrl+F2( )、設(shè)置 /清除斷點 Ctrl+F8( )、跟蹤調(diào)試F7( )、單步執(zhí)行 F8( )、執(zhí)行到光標(biāo)行 F4( )、運行 F9( )、反匯編窗口Alt+5( )、寄存器窗口 Alt+2( )、內(nèi)部數(shù)據(jù)存儲器窗口 Alt+3( )、外部數(shù)據(jù)存儲器窗口 Alt+4、幫助( )這些工具并不是同時有效。 山東英才學(xué)院 第 6 頁 共 55 頁 在主界面的中央的大面積區(qū)域為文件的編輯區(qū),可打開匯編文件、 C 文件及其他形式的文本文件。在主界面的下部為狀態(tài)欄,最左邊為命令 /提示欄,顯示當(dāng)前正在執(zhí)行的命令或工作狀態(tài),當(dāng)光標(biāo)指向一個按鈕時,此欄也顯示此按鈕的功能。第二欄為光標(biāo)在編輯區(qū)域中所處的行、列位置,右邊的兩欄分別顯示當(dāng)前鍵盤字母鍵的大 /小寫狀態(tài)及小鍵盤的狀態(tài)(數(shù)字 /命令) 二、編輯程序 主窗口下。在“文件”中選擇“新建” 菜單,可進行 C 語言編輯或匯編語言編輯。也可以選擇“打開”,打開現(xiàn)有的實驗程序(選擇后綴 .ASM 或 .C,可分別打開匯編語言程序和 C語言實驗程序)。 三、編譯調(diào)試 程序編輯完成后 ,即可進行編譯調(diào)試。主菜單中有“編譯”欄,可對當(dāng)前文件進行編譯。“調(diào)試”欄可進行系統(tǒng)復(fù)位及其他調(diào)試手段?!斑x項”欄“通訊串口選項”可進行通訊口設(shè)置?!安榭础睓诳纱蜷_內(nèi)存、外存、寄存器等窗口,通過修改存儲器地址可查看不同地址區(qū)的內(nèi)容,也可以對其進行修改。 山東英才學(xué)院 第 7 頁 共 55 頁 第三部分 基本試驗 實驗一 P1口實驗 實驗(一) P1 口實驗一 一、 實驗?zāi)康模?1 學(xué)習(xí) P1 口的使用方法。 2 學(xué)習(xí)延時子程序的編寫和使用。 二、 實驗設(shè)備: EL-MUT-III 型單片機實驗箱、 8051CPU 模塊 三、 實驗內(nèi)容: 1 P1 口做輸出口,接八只發(fā)光二極管,編寫程序,使發(fā)光二極管循環(huán)點亮。 2 P1 口做輸入口,接八個按紐開關(guān),以實驗箱上 74LS273 做輸出口,編寫程序讀取開關(guān)狀態(tài),在發(fā)光二極管上顯示出來。 四、 實驗原理: P1 口為準(zhǔn)雙向口, P1 口的每一位都能獨立地定義為輸入位或輸出位。作為輸入位時,必須向鎖存器相應(yīng)位寫入“ 1”,該位才能作為輸入。 8031 中所有口鎖存器在復(fù)位時均置為“ 1”,如果后來在口鎖存器寫過“ 0”,在需要時應(yīng)寫入一個“ 1”,使它成為一個輸入。 可以用第二個實驗做一下實驗。先按要求編好程序并調(diào)試成功后,可將 P1 口鎖存器中置“ 0”,此時將 P1 做輸入口,會有什么結(jié)果。 再來看一下延時程序的實現(xiàn)?,F(xiàn)常用的有兩種方法,一是用定時器中斷來實現(xiàn),一是用指令循環(huán)來實現(xiàn)。在系統(tǒng)時間允許的情況下可以采用后一種方法。 本實驗系統(tǒng)晶振為 6.144MHZ,則一個機器周期為 12 6.144us 即 1 0.512us。現(xiàn)要寫一個延時 0.1s 的程序,可大致寫出如下: MOV R7, #X ( 1) DEL1: MOV R6, #200 ( 2) DEL2: DJNZ R6, DEL2 ( 3) DJNZ R7, DEL1 ( 4) 上面 MOV、 DJNZ 指令均需兩個機器周期,所以每執(zhí)行一條指令需要 1 0.256us,現(xiàn)求出 X 值: 1 0.256+X( 1 0.256+200 1 0.256+1 0.256) =0.1 10 指令( 1) 指令( 2) 指令( 3) 指令( 4) 所需時間 所需時間 所需時間 所需時間 X=(0.1 10-1 0.256)/( 1 0.256+200 1 0.256+1 0.256) =127D=7FH 經(jīng)計算得 X=127。代入上式可知實際延時時間約為 0.100215s,已經(jīng)很精確了。 五、 實驗原理圖: 山東英才學(xué)院 第 8 頁 共 55 頁 P1 口輸出實驗 P1 口輸入實驗 六、實驗步驟: 執(zhí)行程序 1(T1_1.ASM)時: P1.0 P1.7 接發(fā)光二極管 L1 L8。 執(zhí)行程序 2(T1_1.ASM)時: P1.0 P1.7 接平推開關(guān) K1 K8; 74LS273的 O0 O7 接發(fā)光二極管 L1 L8; 74LS273 的片選端 CS273接 CS0(由程序所選擇的入口地址而定,與 CSOCS7 相應(yīng)的片選地址請查看第一部分系統(tǒng)資源,以后不贅述)。 七、程序框圖: 程 序 初 始 化 , 設(shè) 置P 1 口 寄 存 器 的 初 值為 F E H延 時 0 . 1 秒 , 使 顯示 穩(wěn) 定將 P 1 口 寄 存 器 的 數(shù)值 逐 位 左 移 1 位循環(huán)點亮發(fā)光二極管 程 序 初 始 化 , 設(shè) 置P 1 口 為 輸 入 口將 P 1 口 數(shù) 值 讀 入 累加 器 A將 累 加 器 A 的 數(shù) 值 送到 2 7 3 顯 示通過發(fā)光二極管將 P1 口的狀態(tài)顯示 山東英才學(xué)院 第 9 頁 共 55 頁 八、參 考程序: 1、循環(huán)點亮發(fā)光二極管 NAME T1_1 ;P1 口輸實驗 CSEG AT 0000H LJMP START CSEG AT 4100H START: MOV A,#0FEH LOOP: RL A ; 左移一位,點亮下一個發(fā)光二極管 MOV P1,A LCALL DELAY ;延時 0.1 秒 JMP LOOP DELAY: MOV R1,#127 ; 延時 0.1 秒 DEL1: MOV R2,#200 DEL2: DJNZ R2,DEL2 DJNZ R1,DEL1 RET END 2、通過發(fā)光二極管將 P1 口的狀態(tài)顯示 NAME T1_2 ;P1 口輸入實驗 OUT_PORT EQU 0CFA0H CSEG AT 0000H LJMP START CSEG AT 4100H START: MOV P1,#0FFH ;復(fù)位 P1 口為輸入狀態(tài) MOV A,P1 ;讀 P1 口的狀態(tài)值入累加器 A MOV DPTR,#OUT_PORT ;將輸出口地址賦給地址指針 DPTR MOVX DPTR,A ;將累加器 A 的值賦給 DPTR 指向的地址 JMP START ;繼續(xù)循環(huán)監(jiān)測端口 P1 的狀態(tài) END 山東英才學(xué)院 第 10 頁 共 55 頁 實驗(二) P1 口實驗二 一、實驗?zāi)康模?1 學(xué)習(xí) P1 口既做 輸入又做為輸出的使用方法。 2 學(xué)習(xí)數(shù)據(jù)輸入、輸出程序的設(shè)計方法。 二、實驗設(shè)備: EL-MUT-III 型單片機實驗箱、 8051CPU 模塊 三、實驗原理: P1 口的使用方法這里不講了。有興趣者不妨將實驗例程中的“ SETB P1.0, SETB P1.1”中的“ SETB”改為“ CLR”看看會有什么結(jié)果。 另外,例程中給出了一種 N 路轉(zhuǎn)移的常用設(shè)計方法,該方法利用了 JMP A+DPTR 的計算功能,實現(xiàn)轉(zhuǎn)移。該方法的優(yōu)點是設(shè)計簡單,轉(zhuǎn)移表短,但轉(zhuǎn)移表大小加上各個程序長度必須小于 256 字節(jié)。 四、實驗原理圖: P1 口輸入、輸出實驗 五、實驗步驟: 平推開關(guān)的輸出 K1 接 P1.0; K2 接 P1.1; 發(fā)光二極管的輸入 L1 接 P1.2; L2 接 P1.3; L5 接 P1.4; L6接 P1.5。 運行實驗程序, K1 做為左轉(zhuǎn)彎開關(guān), K2 做為右轉(zhuǎn)彎開關(guān)。 L5、 L6 做為右轉(zhuǎn)彎燈, L1、L2 做為左轉(zhuǎn)彎燈。 結(jié)果顯示: 1: K1 接高電平 K2 接低電平時,右轉(zhuǎn)彎燈( L5、 L6)滅,左轉(zhuǎn)彎燈( L1、 L2)以一定山東英才學(xué)院 第 11 頁 共 55 頁 頻率閃爍; 2: K2 接高電平 K1 接低電平時,左轉(zhuǎn)彎燈( L1、 L2)滅,右轉(zhuǎn)彎燈( L5、 L6)以一定頻率閃爍; 3: K1、 K2 同時接低電平時,發(fā)光二極管全滅; 4: K1、 K2 同時接高電平時,發(fā)光二極管全亮。 六、參考程序: NAME T2 ;P1 口輸入輸出實驗 CSEG AT 0000H LJMP START CSEG AT 4100H START: SETB P1.0 SETB P1.1 ;用于輸入時先置位口內(nèi)鎖存器 MOV A,P1 ANL A,#03H ;從 P1 口讀入開 關(guān)狀態(tài) ,取低兩位 MOV DPTR,#TAB ;轉(zhuǎn)移表首地址送 DPTR MOVC A,A+DPTR JMP A+DPTR TAB: DB PRG0-TAB DB PRG1-TAB DB PRG2-TAB DB PRG3-TAB PRG0: MOV P1,#0FFH ;向 P1 口輸出 #0FFH,發(fā)光二極管全滅 ;此時 K1=0,K2=0 JMP START PRG1: MOV P1,#0F3H ;只點亮 L5、 L6,表示左轉(zhuǎn)彎 ACALL DELAY ;此時 K1=1,K2=0 MOV P1,#0FFH ;再熄滅 0.5 秒 ACALL DELAY ;延時 0.5 秒 JMP START PRG2: MOV P1,#0CFH ;只點亮 L7、 L8,表示右轉(zhuǎn)彎 ACALL DELAY ;此時 K1=0,K2=1 MOV P1,#0FFH ;再熄滅 0.5 秒 ACALL DELAY JMP START PRG3: MOV P1,#00H ;發(fā)光二極管全亮 ,此時 K1=1,K2=1 JMP START ; DELAY: MOV R1,#5 ;延時 0.5 秒 DEL1: MOV R2,#200 DEL2: MOV R3,#126 DEL3: DJNZ R3,DEL3 DJNZ R2,DEL2 DJNZ R1,DEL1 RET 山東英才學(xué)院 第 12 頁 共 55 頁 ; END 七、程序框圖: 上 電 , 程 序 初 始 化 , 設(shè)置 P 1 口 為 輸 入 、 輸 出 雙線 口 ( P 1 . 0 、 P 1 . 1 為 輸入 口 , P 1 . 2 、 P 1 . 3 、P 1 . 4 、 P 1 . 5 為 輸 出 口采 集 P 1 . 0 、 P 1 . 1 輸 入 口的 值 進 入 A 累 加 器 ,根 據(jù) 累 加 器 A 的 值 調(diào) 轉(zhuǎn) 到相 應(yīng) 的 子 程 序 入 口給 P 1 口 賦 值0 F F H ( 四 個 發(fā)光 二 極 管 全滅 )依 次 給 P 1 口 賦值 0 F 3 H 和 0 F F H ,每 種 狀 態(tài) 延 時0 . 5 秒給 P 1 口 賦 值0 0 H ( 四 個 發(fā) 光二 極 管 全 亮 )依 次 給 P 1 口 賦值 0 C F H 和0 F F H , 每 種 狀態(tài) 延 時 0 . 5 秒A = 0 0A = 0 1 A = 1 0A = 1 1山東英才學(xué)院 第 13 頁 共 55 頁 實驗二 簡單 I/O口擴展實驗 實驗(一)簡單 I/O 口擴展實 驗一 交通燈控制實驗 一、實驗?zāi)康模?1 學(xué)習(xí)在單片機系統(tǒng)中擴展簡單 I/O 接口的方法。 2 學(xué)習(xí)數(shù)據(jù)輸出程序的設(shè)計方法。 3 學(xué)習(xí)模擬交通燈控制的實現(xiàn)方法。 二、實驗設(shè)備: EL-MUT-III 型單片機實驗箱、 8051CPU 模塊 三、實驗內(nèi)容: 擴展實驗箱上的 74LS273 做為輸出口,控制八個發(fā)光二極管亮滅,模擬交通燈管理。 四、實驗原理: 要完成本實驗,首先必須了解交通路燈的亮滅規(guī)律。本實驗需要用到實驗箱上八個發(fā)光二極管中的六個,即紅、黃、綠各兩個。不妨將 L1(紅 )、 L2(綠)、 L3(黃)做為東西方向的指示燈,將 L5(紅)、 L6(綠)、 L7(黃)做為南北方向的指示燈。而交通燈的亮滅規(guī)律為:初始態(tài)是兩個路口的紅燈全亮,之后,東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時一段時間后,東西路口綠燈滅,黃燈開始閃爍。閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通車,延時一段時間后,南北路口的綠燈滅,黃燈開始閃爍。閃爍若干次后,再切換到東西路口方向,重復(fù)上述過程。各發(fā)光二極管的陽極通過保護電阻接到 +5V 的電源上,陰極接到輸入端上,因此使其點亮應(yīng)使相應(yīng)輸入端為低電平。 五、實驗原理圖 六、實驗步驟: 74LS273 的輸出 O0 O7 接發(fā)光二極管 L1 L8, 74LS273 的片選 CS273 接片選信號 CSO,此時 74LS273 的片選地址為 CFA0H CFA7H 之間任選。 運行實驗程序,觀察 LED 顯示情況是否與實驗內(nèi)容相符。 山東英才學(xué)院 第 14 頁 共 55 頁 七、程序框圖: 八、參考程序: T3.ASM NAME T3 ;I/O 口擴展實驗一 PORT EQU 0CFA0H ;片選地址 CS0 CSEG AT 0000H LJMP START CSEG AT 4100H START: MOV A,#11H ;兩個紅燈亮,黃燈、綠燈滅 ACALL DISP ;調(diào)用 273 顯示單元(以下雷同) ACALL DE3S ;延時 3 秒 LLL: MOV A,#12H ;東西路口綠燈亮 ;南北路口紅燈亮 ACALL DISP ACALL DE10S ;延時 10 秒 MOV A,#10H ;東西路口綠燈滅 ;南北路口紅燈亮 ACALL DISP 山東英才學(xué)院 第 15 頁 共 55 頁 MOV R2,#05H ;R2 中的值為黃燈閃爍次數(shù) TTT: MOV A,#14H ;東西路口黃燈亮 ;南北路口紅燈亮 ACALL DISP ACALL DE02S ;延時 0.2 秒 MOV A,#10H ;東西路口黃燈滅 ;南北路口紅燈亮 ACALL DISP ACALL DE02S ;延時 0.2 秒 DJNZ R2,TTT ;返回 TTT,使東西路口黃燈閃爍五次 MOV A,#11H ;兩個紅燈亮,黃燈、綠燈滅 ACALL DISP ACALL DE02S ;延時 0.2 秒 MOV A,#21H ;東西路口紅燈亮 ;南北路口綠燈亮 ACALL DISP ACALL DE10S ;延時 10 秒 MOV A,#01H ;東西路口紅燈亮 ;南北路口綠燈滅 ACALL DISP MOV R2,#05H ;黃燈閃爍五次 GGG: MOV A,#41H ;東西路口紅燈亮 ;南北路口黃燈亮 ACALL DISP ACALL DE02S ;延時 0.2 秒 MOV A,#01H ;東西路 口紅燈亮 ;南北路口黃燈滅 ACALL DISP ACALL DE02S ;延時 0.2 秒 DJNZ R2,GGG ;返回 GGG,使南北路口 ;黃燈閃爍五次 MOV A,#03H ;兩個紅燈亮,黃燈、綠燈滅 ACALL DISP ACALL DE02S ;延時 0.2 秒 JMP LLL ;轉(zhuǎn) LLL 循環(huán) DE10S: MOV R5,#100 ;延時 10 秒 JMP DE1 DE3S: MOV R5,#30 ;延時 3 秒 JMP DE1 DE02S: MOV R5,#02 ;延時 0.2 秒 DE1: MOV R6,#200 DE2: MOV R7,#126 DE3: DJNZ R7,DE3 DJNZ R6,DE2 DJNZ R5,DE1 RET DISP: MOV DPTR,#PORT ;273 顯示單元 CPL A MOVX DPTR,A RET END 山東英才學(xué)院 第 16 頁 共 55 頁 實驗(二)簡單 I/O 口擴展實驗二 一、實驗?zāi)康模?1 學(xué)習(xí)在單片機系統(tǒng)中擴展簡單 I/O 口的方法。 2 學(xué)習(xí)數(shù)據(jù)輸入,輸出程序的編制方法。 二、實驗設(shè)備: EL-MUT-III 型單片機實驗箱、 8051CPU 模塊 三、實驗原理: MCS-51 外部擴展空間很大,但數(shù)據(jù)總線口和控制信號線的負載能力是有限的。若需要擴展的芯片較多,則 MCS-51 總線口的負載過重 , 74LS244 是一個擴展輸入口,同時也是一個單向驅(qū)動器,以減輕總線口的負擔(dān)。 程序中加了一段延時程序,以減少總線口讀寫的頻繁程度。延時時間約為 0.01 秒,不會影響顯示的穩(wěn)定。 四、實驗內(nèi)容: 利用 74LS244 做為輸入口,讀取開關(guān)狀態(tài),并將此狀態(tài)通過發(fā)光二極管顯示出來。 五、實驗原理圖: 簡單 I/O 實驗 2 六、實驗步驟: 1 74LS244 的 IN0 IN7 接開關(guān)的 K1 K8,片選信號 CS244 接 CS1。 2 74LS273 的 O0 O7 接發(fā)光二極管的 L1 L8,片選信號 CS273 接 CS2。 3 編程、全速執(zhí)行。 4 撥動開關(guān) K1 K8,觀察發(fā)光二極管狀態(tài)的變化。 七、程序框圖: 山東英才學(xué)院 第 17 頁 共 55 頁 八、參考程序: NAME T4 ;I/O 口擴展實驗 CSEG AT 0000H LJMP START CSEG AT 4100H INPORT EQU 0CFA8H ;74LS244 端口地址 OUTPORT EQU 0CFB0H ;74LS273 端口地址 START: MOV DPTR,#INPORT LOOP: MOVX A,DPTR ;讀開關(guān)狀態(tài) MOV DPTR,#OUTPORT MOVX DPTR,A ;顯示開關(guān)狀態(tài) MOV R7,#10H ;延時 DEL0: MOV R6,#0FFH DEL1: DJNZ R6,DEL1 DJNZ R7,DEL0 JMP START END 山東英才學(xué)院 第 18 頁 共 55 頁 實驗三 中斷實驗 有急救車的交通燈控制實驗 一、 實驗?zāi)康模?1 學(xué)習(xí)外部中斷技術(shù)的基本使用方法。 2 學(xué)習(xí)中斷處理程序的編程方法。 二、實驗設(shè)備: EL-MUT-III 型單片機實驗箱、 8051CPU 模塊 三、實驗內(nèi)容: 在實驗三的內(nèi)容的基礎(chǔ)上增加允許急救車優(yōu)先通過的要求。當(dāng)有急救車到達時,兩個方向上的紅燈亮,以便讓急救車通過,假定急救車通過路口的時間為 10 秒,急救車通過后,交通燈恢復(fù)中斷前的狀態(tài)。本實驗以單脈沖為中斷申請,表示有急救車通過。 四、實驗原理: 交通燈的燃滅規(guī)律見實驗三。 本實驗中斷處理程序的應(yīng)用,最主要的地方是如何保護進入中斷前的狀態(tài),使得中斷程序 執(zhí)行完畢后能回到交通燈中斷前的狀態(tài)。要保護的地方,除了累加器 ACC、標(biāo)志寄存器 PSW外,還要注意:一是主程序中的延時程序和中斷處理程序中的延時程序不能混用,本實驗給出的程序中,主程序延時用的是 R5、 R6、 R7,中斷延時用的是 R3、 R4 和新的 R5。第二,主程序中每執(zhí)行一步經(jīng) 74LS273 的端口輸出數(shù)據(jù)的操作時,應(yīng)先將所輸出的數(shù)據(jù)保存到一個單元中。因為進入中斷程序后也要執(zhí)行往 74LS273 端口輸出數(shù)據(jù)的操作,中斷返回時如果沒有恢復(fù)中斷前 74LS273 端口鎖存器的數(shù)據(jù),則顯示往往出錯,回不到中斷前的狀態(tài)。 還要注意一點,主程序中往端口輸出數(shù)據(jù)操作要先保存再輸出 ,例如有如下操作: MOV A, #0F0H ( 0) MOVX R1, A ( 1) MOV SAVE, A ( 2) 程序如果正好執(zhí)行到( 1)時發(fā)生中斷,則轉(zhuǎn)入中斷程序,假設(shè)中斷程序返回主程序前需要執(zhí)行一句 MOV A, SAVE 指令,由于主程序中沒有執(zhí)行( 2),故 SAVE 中的內(nèi)容實際上是前一次放入的而不是( 0)語句中給出的 0F0H,顯示出錯,將( 1)、( 2)兩句順序顛倒一下則沒有問題。發(fā)生中斷時兩方向的紅燈一起 亮 10 秒,然后返回中斷前的狀態(tài)。 五、實驗原理圖: (同實驗二(一) ) 六、實驗步驟: 74LS273 的輸出 O0 O7 接發(fā)光二極管 L1 L8, 74LS273 的片選 CS273接片選信號 CS2,此時 74LS273 的片選地址為 CFB0H CFB7H 之間任選。單脈沖輸出端 P-接 CPU 板上的 INT0。 山東英才學(xué)院 第 19 頁 共 55 頁 七、程序框圖: 主程序框圖 中斷程序框圖 八、參考程序: NAME T5 ;中斷控制實驗 OUTPORT EQU 0CFB0H ;端口地址 SAVE EQU 55H ;save 保存從端口 cfa0 輸出的數(shù)據(jù) CSEG AT 0000H LJMP START CSEG AT 4003H LJMP INT CSEG AT 4100H START: SETB IT0 SETB EX0 SETB EA 山東英才學(xué)院 第 20 頁 共 55 頁 MOV A,#11H ;置首顯 示碼 MOV SAVE,A ;保存 ACALL DISP ;顯示輸出 ACALL DE3S ;延時 3 秒 LLL: MOV A,#12H ;東西路口綠燈亮,南北路口紅燈亮 MOV SAVE,A ACALL DISP ACALL DE10S ;延時 10 秒 MOV A,#10H ;東西路口綠燈滅 MOV SAVE,A ACALL DISP MOV R2,#05H ;東西路口黃燈閃爍 5 次 TTT: MOV A,#14H MOV SAVE,A ACALL DISP ACALL DE02S MOV A,#10H MOV SAVE,A ACALL DISP ACALL DE02S DJNZ R2,TTT MOV A,#11H ;紅燈全亮 MOV SAVE,A ACALL DISP ACALL DE02S ;延時 0.2 秒 MOV A,#21H ;東西路口紅燈亮,南北路口綠燈亮 MOV SAVE,A ACALL DISP ACALL DE10S ;延時 10 秒 MOV A,#01H ;南北路口綠燈滅 MOV SAVE,A ACALL DISP MOV R2,#05H ;南北路口黃燈閃爍 5 次 GGG: MOV A,#41H MOV SAVE,A ACALL DISP ACALL DE02S MOV A,#01H MOV SAVE,A ACALL DISP ACALL DE02S DJNZ R2,GGG MOV A,#11H ;紅燈全亮 MOV SAVE,A 山東英才學(xué)院 第 21 頁 共 55 頁 ACALL DISP ACALL DE02S ;延時 0.2 秒 JMP LLL ;轉(zhuǎn) LLL 循環(huán) DE10S: MOV R5,#100 ;延時 10 秒 JMP DE1 DE3S: MOV R5,#30 ;延時 3 秒 JMP DE1 DE02S: MOV R5,#02 ;延時 0.2 秒 DE1: MOV R6,#200 DE2: MOV R7,#126 DE3: DJNZ R7,DE3 DJNZ R6,DE2 DJNZ R5,DE1 RET INT: CLR EA PUSH ACC ;中斷處理 PUSH PSW MOV A,R5 PUSH ACC MOV A,#11H ;紅燈全亮,綠、黃燈全滅 ACALL DISP DEL10S: MOV R3,#100 ;延時 10 秒 DEL1: MOV R2,#200 DEL2: MOV R5,#126 DEL3: DJNZ R5,DEL3 DJNZ R4,DEL2 DJNZ R3,DEL1 MOV A,SAVE ;取 SAVE 中保存數(shù)據(jù)輸出到 cfa0 端口 ACALL DISP POP ACC ;出棧 MOV R5,A POP PSW POP ACC SETB EA ;允許外部中斷 RETI DISP: MOV DPTR,#OUTPORT CPL A MOVX DPTR,A RET END 山東英才學(xué)院 第 22 頁 共 55 頁 實驗四 定時器實驗 循環(huán)彩燈實驗 一、實驗?zāi)康模?1 學(xué)習(xí) 8031 內(nèi)部計數(shù)器的使用和編程方法。 2 進一步掌握中斷處理程序的編寫方法。 二、實驗設(shè)備: EL-MUT-III 型單片機實驗箱、 8051CPU 模塊 三、實驗原理: 1 定時常數(shù)的確定 定時器 /計數(shù)器的輸入脈沖周期與機器周期一樣,

溫馨提示

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

最新文檔

評論

0/150

提交評論