實驗 實驗指導(dǎo)書《單片機技術(shù)》_第1頁
實驗 實驗指導(dǎo)書《單片機技術(shù)》_第2頁
實驗 實驗指導(dǎo)書《單片機技術(shù)》_第3頁
實驗 實驗指導(dǎo)書《單片機技術(shù)》_第4頁
實驗 實驗指導(dǎo)書《單片機技術(shù)》_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗 實驗指導(dǎo)書單片機技術(shù) 作者: 日期:2 個人收集整理 勿做商業(yè)用途單片機技術(shù)實 驗 指 導(dǎo) 書(電子信息工程專業(yè))周建壯 編渤海大學(xué)工學(xué)院實驗報告撰寫注意:渤海大學(xué)學(xué)生實驗報告(工學(xué)院) 要求:1、預(yù)習(xí):實驗前詳細認真閱讀實驗指導(dǎo)書。2、操作:嚴格遵守實驗室守則和實驗注意事項.3、報告:認真撰寫實驗報告并于下次實驗時上交。(由班長負責(zé)收齊并按學(xué)號排列)。 注意事項:1、保持實驗室衛(wèi)生。2、設(shè)備輕拿輕放,尤其注意仿真器與實驗板連接的針腳.3、調(diào)試前仔細檢查電源、引線等是否連接正確,檢查正確后再接通電源.需要改動時先關(guān)閉電源,調(diào)整檢查后再接通電源。4、做完實驗后將實驗設(shè)備擺放好,關(guān)閉實驗板電

2、源及計算機,整理好桌椅。 以下各項為各次實驗均相同的填寫內(nèi)容:課程名稱:單片機技術(shù)開課實驗室:單片機實驗室實驗室位置:理工3樓801室實驗題目:實驗 (如:實驗一 仿真器的使用)院(系、部):工學(xué)院專業(yè)/年級/班:電子信息工程/08/1、2姓名:學(xué)號:實驗環(huán)境:良好指導(dǎo)教師:實驗設(shè)備(名稱、型號):清華同方超越E675計算機、MINI51單片機仿真器、Dais5103-I/II實驗板、ZLG7289BP鍵盤顯示實驗板、WD990微機電源和連接導(dǎo)線等 第五項、實驗結(jié)果及誤差分析:根據(jù)所編寫的程序進行調(diào)試,對調(diào)試結(jié)果進行描述和分析。如:1、程序運行后對寄存器(A、PSW等SFR及Rn、PC等)的修

3、改情況。 2、程序運行后對存儲器的修改情況.3、實驗板上各部件的變化情況.等4、分析程序的功能,通過對1、2、3等項的分析驗證程序功能是否達到設(shè)計要求。5、仿照教科書中示例對實驗中的程序進行注釋。 第六項、討論及改進實驗的建議:寫下對此次實驗的思考及建議。及從每實驗后的題目中任選2個作答:目 錄引 言1實驗一仿真器的使用2實驗二簡單程序調(diào)試15實驗三復(fù)雜編程調(diào)試17實驗四串行口實驗19實驗五8155接口及顯示實驗24實驗六鍵盤顯示實驗26實驗七中斷系統(tǒng)實驗29實驗八電子鐘設(shè)計131實驗九7289應(yīng)用33實驗十電子鐘設(shè)計236實驗十一 步進電機驅(qū)動44引言單片機技術(shù)這門課的主要內(nèi)容有MCS51單

4、片機的內(nèi)部結(jié)構(gòu)、指令系統(tǒng)、程序設(shè)計、擴展接口以及系統(tǒng)設(shè)計等。主要通過課堂的理論教學(xué)讓學(xué)生掌握單片機各個部分的基本原理和使用方法,掌握程序設(shè)計的方法和技巧,掌握擴展接口的設(shè)計原理和實現(xiàn)以及掌握設(shè)計單片機應(yīng)用系統(tǒng)的能力.而要深刻理解、融會貫通理論教學(xué)內(nèi)容,全面掌握單片機技術(shù)這門課程,則必須經(jīng)過大量的實驗,通過實際操作與編程調(diào)試使學(xué)生對所學(xué)的知識能夠進一步掌握和理解,對單片機的軟硬件開發(fā)設(shè)計了解和熟悉,為單片機應(yīng)用系統(tǒng)設(shè)計打下良好的基礎(chǔ).為此,我們選擇了以下的實驗參考題目及思考題,以使學(xué)生加深對所學(xué)單片機開發(fā)應(yīng)用技術(shù)的理解和掌握。主要題目有:實驗一仿真器的使用實驗二簡單程序調(diào)試實驗三復(fù)雜編程調(diào)試實驗

5、四串行口通信實驗五8155接口及顯示實驗六鍵盤顯示實驗實驗七中斷系統(tǒng)實驗實驗八電子鐘設(shè)計1實驗九7289應(yīng)用實驗十電子鐘設(shè)計2實驗十一步進電機驅(qū)動實驗儀器:清華同方超越E675計算機、MINI51單片機仿真器、Dais5103-I/II實驗板、ZLG7289BP鍵盤顯示實驗板、WD990微機電源和連接導(dǎo)線等實驗一仿真器的使用一、實驗?zāi)康?、掌握單片機運行的基本原理.2、學(xué)會使用仿真器與Keil軟件環(huán)境下的單片機程序編寫與調(diào)試。二、實驗原理(一)、硬件環(huán)境:MINI51單片機仿真器使用說明MINI 51單片機仿真器體積小巧、價格低廉且功能強大,是在產(chǎn)品開發(fā)階段替代用單片機寫入器來反復(fù)寫入單片機應(yīng)

6、用程序進行軟硬件調(diào)試的非常有力的開發(fā)工具。使用MINI 51單片機仿真器可以對51系列單片機程序進行單步、全速、運行到光標(biāo)處和斷點等手段的調(diào)試,可監(jiān)測程序運行中51系列單片機RAM、用戶自定義的變量以及寄存器內(nèi)容等的變化、觀察程序的運行情況和對硬件電路進行實時的測試等;使用MINI 51單片機仿真器也可以迅速發(fā)現(xiàn)、糾正程序中的錯誤,從而大大縮短單片機開發(fā)的周期.1、主要功能和特性MINI 51單片機仿真器外型如下圖所示:(1)、主要功能MINI 51單片機仿真器完全仿真P0、P1、P2和除P3.0及P3。1以外的P3口,用戶程序從0000H地址開始仿真。支持89C52等嵌入式CPU硬件仿真,可

7、以仿真標(biāo)準(zhǔn)的89C51,89C52,89C58等標(biāo)準(zhǔn)8051內(nèi)核的單片機。具有32K程序空間。仿真晶體震蕩器頻率為11.0592MHz.支持單步、斷點、運行到光標(biāo)處和全速運行等實時仿真調(diào)試功能。支持匯編、C語言及匯編和C語言混合調(diào)試,隨時查看內(nèi)部數(shù)據(jù)或內(nèi)部資源,可在線修改源程序等程序或數(shù)據(jù)。(2)、功能限制MINI 51單片機仿真器占用串口(P3.0和P3。1引腳)和單片機定時器2,以便于與PC機的KEIL C仿真調(diào)試軟件進行通訊,故不支持串口及定時器2的仿真功能。其他所有片內(nèi)資源均向用戶開放并可由用戶加以使用。有幾種建議解決的辦法可避開這種限制,如果系統(tǒng)使用了串口的I/O,可以用剩余未用的其

8、他I/O來替代。2、連線及設(shè)置(1)、連接通信線串行線插頭接入計算機,并記下是COM1還是COM2,另一頭接MINI51仿真器上的3腳插座。(2)、插入仿真器、接通電源MINI 51單片機仿真器按正確方向插入用戶板的單片機40腳CPU插座(MINI51單片機仿真器上的復(fù)位按鈕對應(yīng)用戶板單片機40腳CPU插座的豁口方向),仿真器由用戶板供電,應(yīng)接通用戶板的5V電源,則通過KEIL C 的IDE開發(fā)仿真環(huán)境UV2 即可下載用戶程序進行仿真、調(diào)試。(二)、軟件環(huán)境:Keil 軟件使用指南1、Keil軟件的基本知識Keil軟件是德國Keil Software/Keil Elektronik公司所開發(fā)的

9、功能比較完善的仿真軟件??梢栽陂_發(fā)平臺上編寫源程序、編譯和連接程序軟件模擬仿真的驗證和排錯,也可以利用仿真器進行硬件仿真和調(diào)試,直到設(shè)計出最終完成產(chǎn)品。2、Keil uVision2 IDE界面簡要在Keil的uVision2 IDE中,管理文件使用工程文件而不是以前的單一文件的模式,C51源程序、匯編源程序、頭文件等都可放在工程里統(tǒng)一管理。菜單條提供各種操作菜單,工具條按鈕、鍵盤快捷鍵允許快速執(zhí)行uVision2 命令.下面列出了uVision2常用菜單項命令、工具條圖標(biāo)、默認的快捷鍵以及它們的描述:(1)文件菜單和命令(File)菜單快捷鍵描述NewCtrl+N創(chuàng)建新文件SaveCtrl+

10、S保存當(dāng)前文件Save as另取名保存文件Device Database管理器件庫(2)編輯菜單和編輯器命令(Edit) Goto Matching Brace尋找匹配大括號圓括號方括號(3)視圖菜單(View)Status Bar顯示/隱藏狀態(tài)條File Toolbar顯示/隱藏文件菜單條Build Toolbar顯示/隱藏編譯菜單條Debug Toolbar顯示/隱藏調(diào)試菜單條Project Window顯示/隱藏工程窗口Output Window顯示/隱藏輸出窗口Source Browser打開資源瀏覽器Disassembly Window顯示/隱藏反匯編窗口Watch Call Sta

11、ck Win顯示/隱藏觀察和堆棧窗口Memory Window顯示/隱藏存儲器窗口Code Coverage Window顯示/隱藏代碼報告窗口PerformanceAnalyzer Window顯示/隱藏性能分析窗口Symbol Window顯示/隱藏字符變量窗口Serial Window #1顯示/隱藏串口1 的觀察窗口Serial Window 2顯示/隱藏串口2 的觀察窗口Toolbox顯示/隱藏自定義工具條Periodic Window Update程序運行時刷新調(diào)試窗口Workbook Mode工作本框架模式(4)工程菜單和工程命令(Project) New Project創(chuàng)建新工

12、程Target Environment定義工具包含文件和庫的路徑Targets,Groups,Files維護工程的對象文件組和文件File Extensions選擇不同文件類型的擴展名Select Device for Target選擇對象的CPUOptionsAlt+F7設(shè)置對象組或文件的工具選項Build TargetF7編譯修改過的文件并生成應(yīng)用Rebuild Target重新編譯所有的文件并生成應(yīng)用TranslateCtrl+F7編譯當(dāng)前文件Stop Build停止生成應(yīng)用的過程(5)調(diào)試菜單和調(diào)試命令(Debug)Start/Stop DebuggingCtrl+F5開始/停止調(diào)試模

13、式GoF5運行程序直到遇到一個中斷StepF11單步執(zhí)行程序遇到子程序則進入Step overF10單步執(zhí)行程序跳過子程序Step out of Current function執(zhí)行到當(dāng)前函數(shù)的結(jié)束Run to Cursor line運行到光標(biāo)行Stop RunningESC停止程序運行Breakpoints打開斷點對話框Insert/Remove Breakpoint設(shè)置/取消當(dāng)前行的斷點Enable/Disable Breakpoint使能/禁止當(dāng)前行的斷點Disable All Breakpoints禁止所有的斷點Kill All Breakpoints取消所有的斷點Show Next

14、Statement顯示下一條指令Enable/Disable Trace Recording使能/禁止程序運行軌跡的標(biāo)識View Trace Records顯示程序運行過的指令Memory Map打開存儲器空間配置對話框Performance Analyzer打開設(shè)置性能分析的窗口Inline Assembly對某一個行重新匯編可以修改匯編代碼Function Editor編輯調(diào)試函數(shù)和調(diào)試配置文件(6)外圍設(shè)備菜單(Peripherals) Reset CPU復(fù)位CPUInterrupt打開片上外圍器件的設(shè)置對話框I/OPorts對話框的種類及內(nèi)容依賴于選擇的CPUSerial串口觀察Tim

15、er定時器觀察(7)工具菜單(Tool)利用工具菜單,可以配置,運行Gimpel PC-Lint,Siemens EasyCase和用戶程序。通過Customize Tools Menu菜單,可以添加想要添加的程序。Setup PC-Lint配置Gimpel Software的PCLint程序Lint用PCLint處理當(dāng)前編輯的文件Lint all C Source Files用PCLint處理工程中所有的C源代碼文件Setup EasyCase配置Siemens的EasyCase程序Start/Stop EasyCase運行/停止Siemens的Easy-Case程序Show File (L

16、ine)用EasyCase處理當(dāng)前編輯的文件Customize Tools Menu添加用戶程序到工具菜單中3、建立新工程的一般步驟在Keil IDE中不支持單文件的處理,只有建立一個工程并對該工程進行正確的設(shè)置后,才能使用Keil 進行編譯連接仿真等操作。(1)新建工程點擊菜單Project-New Project.。后,出現(xiàn)對話窗口,在對話框內(nèi)選擇工程目錄填寫新工程名稱點擊保存新建工程。(2)為工程選擇目標(biāo)器件在建立工程以后,還應(yīng)該為工程選擇合適的目標(biāo)器件,選擇目標(biāo)器件方法為:點擊菜單ProjectSelect Device for Targect后出現(xiàn)的對話框中,左邊的數(shù)據(jù)庫內(nèi)容:窗口中

17、廠商列表節(jié)可以單擊打開顯示對應(yīng)器件。(3)添加程序文件選擇目標(biāo)器件完畢后在Project 窗口出現(xiàn)一個Target1 的工程點,該目錄里面還會有“Source Group1"的分組名,可以在該組下放置源程序文件。用鼠標(biāo)右鍵點擊“Source Group1” ,在彈出的菜單中選擇“Add files to Group Source Group1”.在彈出的對話窗口中選擇待添加的程序文件,點擊“Add” 即可將此文件增加到源文件組內(nèi),點擊“Close”返回。如要增加新文件到文件組“Source Group1”, 要先使用“菜單File> New功能建立文件,再進行“添加程序文件”

18、。刪除則用鼠標(biāo)右鍵點擊文件或文件組在彈出的菜單中選擇“Remove”。最好把一個工程內(nèi)的所有文件放在一個目錄中或分類到一個目錄下的多個不同子目錄中。(4)工作環(huán)境和參數(shù)的設(shè)置在Keil的使用中,參數(shù)配置同樣重要。新工程所有的配置參數(shù)都會使用缺省數(shù)值,一般可以正常運行,使用初期用戶如果遇到不理解的配置參數(shù)可以不予理睬,在以后的應(yīng)用中再逐步弄懂各個參數(shù)的實際用處。但工程調(diào)試參數(shù)和“輸出Hex代碼文件”一定要設(shè)置,因為Keil的缺省設(shè)置是不生成Hex代碼文件。手動將輸出Hex文件控制打開方法如下:點擊工程組窗口的工程組名再點擊菜單“Project- Options for Target。.”,在工程

19、設(shè)置對話框中選擇“Output" 頁選中“Create Hex file”,同時也可選中“Debug Information”和“Browse Information",點擊“確定"退出后重新編譯連接工程,即可生成Hex代碼文件調(diào)試信息和瀏覽信息4、使用Keil進行調(diào)試的基本技巧(1)進入和退出仿真狀態(tài)只有在用戶程序編繹和連接成功后才能進行調(diào)試工作。點擊菜單DebugStart/StopDebug Session IDE 將進入/退出硬件仿真狀態(tài).(2)如何運行程序在Keil 的IDE 中有以下幾種運行方式:A) Run 全速運行遇到斷點停下或用戶按動Stop按鈕

20、或RST CPU按鈕停止.B) Step info 單步跟蹤運行一條指令,如果該語句為C 中的調(diào)用子程序語句或匯編中的CALL指令,Step info 指令將跟蹤進入子程序內(nèi)部。C) Step over 單步運行完一條指令,如果該語句為C 中的調(diào)用子程序語句或匯編中的CALL指令,Step over 指令將全速完成該子程序的運行,停在下一指令處。D) Run till Cursor Line 從當(dāng)前位置運行到光標(biāo)處。另外,用戶還必須注意,在C源程序窗口內(nèi)、匯編源程序窗口內(nèi)和在反匯編窗口內(nèi),以上命令表現(xiàn)會有所不同。(3)如何設(shè)置和刪除斷點設(shè)置斷點/刪除斷點最簡單的方法是用鼠標(biāo)雙擊待設(shè)置斷點的源程

21、序行或反匯編程序行,或用斷點設(shè)置命令 “bs ”。(4)如何查看和修改寄存器的內(nèi)容仿真時主寄存器的內(nèi)容顯示在主寄存器窗口,用戶除了可以觀察以外還可自行修改,用鼠標(biāo)點擊選中一個單元,例如單元DPTR,然后再單擊DPTR的數(shù)值位置,出現(xiàn)文字框后輸入相應(yīng)數(shù)值按回車鍵即可;另外的輸入方法是使用命令行窗口,例如輸入A=0X34將把A 的數(shù)值設(shè)置為0X34.(5)如何觀察和修改變量點擊“ViewWatch Call stack Window”出現(xiàn)相應(yīng)窗口選擇Watch 1-3中的任一個窗口,按動F2,在Name欄填入用戶變量名如Temp1 Counter等,但必須是存在的變量。如果想修改數(shù)值可單擊Valu

22、e欄出現(xiàn)文本框后輸入相應(yīng)數(shù)值。用戶可以連續(xù)修改多個不同的變量。uVision2 IDE提供了觀察變量更簡單的方法.在用戶程序停止運行時,移動鼠標(biāo)光標(biāo)到要觀察的變量上停大約一秒鐘,就彈出一個“變量提示”塊出來。(6)如何觀察存儲器區(qū)域在Keil 中可以區(qū)域性的觀察和修改所有的存儲器數(shù)據(jù),這些數(shù)據(jù)從Keil C51中獲取.Keil IDE把MCS51內(nèi)核的存儲器資源分成4個部分:A) 內(nèi)部可直接尋址RAM data,IDE表示為D:xx。B) 間接尋址RAM區(qū)idata,IDE表示為I:xx。C) RAM區(qū)xdata,IDE表示為X:xxxx。D) 代碼區(qū)code,IDE表示為C:xxxx。這四個

23、區(qū)域都可以在Keil的Memory Windows中觀察和修改。IDE集成環(huán)境中點擊菜單ViewMemory Windows,便會打開Memory窗口, Memory窗口,可以同時顯示4個不同的存儲器區(qū)域,點擊窗口下部分的編號可以相互切換顯示。在地址輸入欄內(nèi)輸入待顯示的存儲器區(qū)起始地址。如D:45h表示從內(nèi)部可直接尋址RAM的45H地址處開始顯示;x:3f00H顯示外部RAM,從3f00H地址開始;c:0X1234顯示代碼區(qū)域,從1234H地址開始.I:32H顯示內(nèi)部間接尋址空間,從32H地址開始.顯示格式的切換:在區(qū)域顯示中,缺省的顯示單元為字節(jié)(byte),但是可以選擇其他顯示方式,在Me

24、mory 顯示區(qū)域內(nèi)按動鼠標(biāo)右鍵,在彈出的菜單中可以選擇的顯示方式為:Decimal按照十進制方式顯示Unsigned按照有符號的數(shù)字顯示又分char 單字節(jié)int 整型long長整型Singed按照無符號的數(shù)字顯示又分char 單字節(jié)int 整型long長整型ASCII按照ASCII 碼格式顯示Float按照浮點格式進行顯示Double按照雙精度浮點格式顯示在Memory窗口中顯示的數(shù)據(jù)可以修改,修改方法如下:在鼠標(biāo)對準(zhǔn)要修改的存儲器單元,按動鼠標(biāo)右鍵在彈出的菜單中選擇“Modify Memory at 0x”,在彈出對話框的文本輸入欄內(nèi)輸入相應(yīng)數(shù)值后按回車鍵,修改完成。注:代碼區(qū)數(shù)據(jù)不能更

25、改.三、實驗儀器清華同方超越E675計算機、MINI51單片機仿真器、Dais5103-I/II實驗板、ZLG7289BP鍵盤顯示實驗板、WD990微機電源和連接導(dǎo)線等四、實驗內(nèi)容與步驟(一)、Keil C51仿真器的使用示例進入Keil C51后,出現(xiàn)編輯界面。1、建立一個新工程單擊Project菜單,在彈出的下拉菜單中選中New Project選項。2、然后選擇保存的路徑,輸入工程文件的名字,比如保存到C51目錄里,工程文件的名字為C51。如下圖所示,然后點擊保存.3、這時會彈出一個對話框,要求選擇單片機的型號,可以根據(jù)使用的單片機來選擇,keil c51幾乎支持所有的51核的單片機,以A

26、tmel 89C51來說明,如下圖所示,選擇89C51之后,右邊欄是對這個單片機的基本的說明,然后點擊確定。4、完成上一步驟后,屏幕如下圖所示:下面開始編寫第一個程序.5、單擊“File”菜單,再在下拉菜單中單擊“New”選項。新建文件后屏幕如下圖所示:此時光標(biāo)在編輯窗口里閃爍,這時可以鍵入用戶的應(yīng)用程序了,建議首先保存該空白的文件,單擊菜單上的“File”,在下拉菜單中選中“Save As”選項單擊,屏幕如下圖所示,鍵入欲使用的文件名,同時必須鍵入正確的擴展名。注意,如果用語言編寫程序,則擴展名為(.c);如果用匯編語言編寫程序,則擴展名必須為(.asm)。然后,單擊“保存”按鈕。 6、回到

27、編輯界面后,單擊“Target 1”前面的“”號,然后在“Source Group 1”上單擊右鍵,彈出如下菜單,選擇“Add File to Group Source Group 1" ,屏幕如下圖所示:選中Test.c,然后單擊“Add ”,屏幕如下圖所示:則“Source Group 1”文件夾中多了一個子項“Text1.c”,子項的多少與所增加的源程序的多少相同。7、輸入如下的匯編語言源程序: ORG0000HMOVA, #30HSJMP$END在輸入上述程序時,Keil c51會自動識別關(guān)鍵字,并以不同的顏色提示用戶加以注意,這樣會使用戶少犯錯誤,有利于提高編程效

28、率,所以最好先將文件加入工程中。程序輸入完畢后保存。8、單擊“Project"菜單,再在下拉菜單中單擊“Built Target”選項(或者使用快捷鍵F7),下邊窗口顯示”exam1" 0 Errors(s),0 Warning(s)” ,如下圖:編譯成功后,再單擊“Debug”菜單,在下拉菜單中單擊“Start/Stop Debug Session"(或者使用快捷鍵Ctrl+F5),屏幕如下所示:9、調(diào)試程序:在上圖中,單擊“Debug”菜單,在下拉菜單中單擊“Go”選項,(或者使用快捷鍵F5),然后再單擊“Debug”菜單,在下拉菜單中單擊“Stop Runn

29、ing"選項(或者使用快捷鍵Esc);再單擊“View”菜單,再在下拉菜單中單擊“Serial Windows #1”選項,就可以看到程序運行后的結(jié)果,其結(jié)果如下圖所示:至此做了一個完整工程的全過程。但這只是純件的開發(fā)過程,以下說明如何使用仿真器調(diào)試程序。10、使用仿真器調(diào)試程序仿真器硬件安裝:Keil C51 仿真器通過RS232通訊線與PC交換信息,將RS232通訊線9腳插頭正確接入PC機的COM1或COM2。仿真器可以由目標(biāo)板提供電源,也可以獨立提供電源。建議使用經(jīng)穩(wěn)壓后的DC 5V直流電源,并注意電源聯(lián)線的正負極性。紅色線1、2芯為“+”,無標(biāo)記的3、4芯為“”。切勿連接錯誤

30、,否則將造成系統(tǒng)損壞。仿真器使用設(shè)置:仿真器采用Mon51協(xié)議,在使用之前應(yīng)對軟件項目進行如下設(shè)置:單擊“Project”菜單,再在下拉菜單中單擊“Options for Target Target 1" ,在“Target”標(biāo)簽下修改“Xtal(Mhz)”為“11.0592"在下圖中,單擊“Output”中單擊“Create HEX File” 選項,使程序編譯后產(chǎn)生HEX代碼,供仿真器使用。在“Debug”標(biāo)簽選中右側(cè)的“Use keil monitor-51 driver”選項,用鼠標(biāo)左鍵單擊該選項右側(cè)的”Setting"按鍵,根據(jù)記錄的微機上所用的串口,用

31、鼠標(biāo)選擇Port:為com1或com2等后用左鍵單擊"ok”按鍵,再選中右側(cè)的“Load Application at Start”和“Go till main()”,用鼠標(biāo)左鍵單擊”確認"按鍵,波特率可以根據(jù)晶振的使用來選擇,系統(tǒng)允許頻率 4-33 MHz 晶振可選, 波特率 4.8 Kbps 57。6 Kbps 自適應(yīng)。統(tǒng)配置 11。0592 MHz;可以通過跳線選擇使用系統(tǒng)提供的11.0592 MHz晶振還是用戶晶振.到此完成了仿真器使用設(shè)置?;氐絀DE界面點擊單擊“Debug”菜單,單擊“Start/Stop Debug Session”代碼便下載到仿真器中。在每一

32、項工程中均需要對軟件進行設(shè)置,否則軟件將使用默認的軟件仿真,而造成目標(biāo)代碼無法下載至仿真器.代碼下載進程顯示窗口仿真器連接狀態(tài)顯示/調(diào)試指令輸入窗口這時可利用KEIL C51的IDE開發(fā)仿真環(huán)境中的快捷按鈕來進行單步、斷點及全速運行的實時仿真工作。比如壓下“RUN”按鈕,exam1。asm程序?qū)⑷龠\行,此時,MINI 51單片機仿真器上側(cè)面的綠色LED將閃爍(MINI 51單片機仿真器上側(cè)面綠色LED右側(cè)的三腳跳線短路LED一側(cè),則LED閃爍LED受P3.4的控制;三腳跳線短路非LED一側(cè),則P3。4將指向用戶板的CPU引腳??衫谩皃eripherals”菜單中的選項或KEIL C51的I

33、DE開發(fā)仿真環(huán)境中的快捷按鈕來查看各種信息。11、結(jié)束仿真調(diào)試欲停止debug,先壓下MINI 51單片機仿真器上“復(fù)位”按鍵,再用鼠標(biāo)左鍵單擊主菜單“Debug”內(nèi)的子菜單“Start/Stop Debug Session”即可完成該任務(wù).每次重新“debug"前要按一下在MINI 51單片機仿真器左前部的“復(fù)位”按鍵。12、注意事項未注冊軟件只能在2k范圍內(nèi)運行,注意ORG定義程序的起始位置及程序大小;適時加入SJMP 指令;如果沒有子程序調(diào)用則不使用RET指令.(二)、單片機仿真實驗板1、鍵盤、LED顯示實驗仿真板與電路圖:在P1口接有8個發(fā)光二極管,在P3口接有4個按鈕。2、

34、實驗仿真板與電路圖:在該板上有8個數(shù)碼管,16個按鍵(接成4*4的矩陣式),另外還有P1口接的8個發(fā)光管(同上),一個帶有計數(shù)器的脈沖發(fā)生器等資源.3、安裝方法:(1)將dll文件拷貝到uVision 的安裝目錄下的 KeilC51BIN 中。(2)修改 Tool.ini, 此文件位于 uVision 的安裝目錄 keil 下,將下面的內(nèi)容 添加到 C51 部分的后面。AGSI1=ledkey.dll (”ledkey”)AGSI2=simboard。dll (”simboard")(3)重啟uVision。 進入Debug 模式, 打開菜單Peripheral, 發(fā)現(xiàn)增加了2項:鍵

35、盤LED仿真板、51實驗仿真板。4、實例調(diào)試:以下以一個稍復(fù)雜的程序為例,說明鍵盤、LED顯示實驗仿真板的使用。該程序?qū)崿F(xiàn)的是可控流水燈,接P3。2的鍵為開始鍵,按此鍵則燈開始流動(由上而下),接P3.3的鍵為停止鍵,按此鍵則停止流動,所有燈暗,接P3。4的鍵為向上鍵,按此鍵則燈由上向下流動,接P3.5的鍵為向下鍵,按此鍵則燈由下向上流動.例:UpDownBIT00H;上下行標(biāo)志StartEndBIT01H;起動及停止標(biāo)志LAMPCODEEQU21H;存放流動的數(shù)據(jù)代碼ORG0000HAJMPMAINORG30HMAIN:MOVSP,5FHMOVP1,0FFHCLRUpDown;啟動時處于向上

36、的狀態(tài)CLRStartEnd;啟動時處于停止?fàn)顟B(tài)MOVLAMPCODE,01H;單燈流動的代碼 LOOP:ACALLKEY;調(diào)用鍵盤程序JNBF0,LNEXT;如果無鍵按下,則繼續(xù)ACALLKEYPROC;否則調(diào)用鍵盤處理程序LNEXT:ACALLLAMP;調(diào)用燈顯示程序AJMPLOOP;反復(fù)循環(huán),主程序到此結(jié)束DELAY:MOVR7,#100;延時程序,鍵盤處理中調(diào)用D1:MOVR6,#100DJNZR6,DJNZR7,D1RETKEYPROC: MOVA,B;從B寄存器中獲取鍵值JBACC。2,KeyStart;分析鍵的代碼,某位被按下,則該位為1JBACC.3,KeyOverJBACC.

37、4,KeyUpJBACC.5,KeyDownAJMPKEY_RETKeyStart: SETBStartEnd;第一個鍵按下后的處理AJMPKEY_RETKeyOver: CLRStartEnd;第二個鍵按下后的處理AJMPKEY_RETKeyUp: SETBUpDown;第三個鍵按下后的處理AJMPKEY_RETKeyDown: CLRUpDown;第四個鍵按下后的處理KEY_RET:RETKEY:CLRF0 ;清F0,表示無鍵按下。ORLP3,00111100B ;將P3口的接有鍵的四位置1MOVA,P3 ;取P3的值ORLA,#11000011B ;將其余4位置1CPLA;取反JZK_R

38、ET;如果為0則一定無鍵按下CALLDELAY;否則延時去鍵抖ORLP3,#00111100BMOVA,P3ORLA,#11000011BCPLAJZK_RETMOVB,A;確實有鍵按下,將鍵值存入B中SETBF0;設(shè)置有鍵按下的標(biāo)志;以下的代碼是可以被注釋掉的,如果去掉注釋,就具有判斷鍵是否釋放的功能,否則沒有K_RET:;ORLP3,#00111100B;此處循環(huán)等待鍵的釋放;MOVA,P3;ORLA,#11000011B;CPLA;JZK_RET1;讀取的數(shù)據(jù)取反后為0說明鍵釋放了;AJMPK_RET;K_RET1:CALLDELAY;消除后沿抖動RETD500MS:MOVR7,#255;流水燈的延遲時間D51:MOVR6,#255DJNZR6,$DJNZR7,D51RET LAMP:JB StartEnd,LampStart;如果StartE

溫馨提示

  • 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

提交評論