單片機技術實驗指導書(河北聯合大學)_第1頁
單片機技術實驗指導書(河北聯合大學)_第2頁
單片機技術實驗指導書(河北聯合大學)_第3頁
單片機技術實驗指導書(河北聯合大學)_第4頁
單片機技術實驗指導書(河北聯合大學)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 北京華晟高科教學儀器有限公司單片機技術實驗指導書河北聯合大學輕工學院地址: 北京上地七街1號匯眾大廈510室 郵編:100085 電話: (8610)82782355 傳真:82780155 網址:/ 河北聯合大學輕工學院 單片機技術實驗指導書 概述概述本文中所述之實驗,均以河北聯合大學輕工學院電子技術綜合實驗平臺學習系統為平臺。本文主要講述了將電子技術綜合實驗平臺配置為單片機實驗系統時的實驗設置、實驗原理以及實驗步驟等。由于電子技術綜合實驗平臺的模塊化設計,產品的選購與配置靈活多樣,而實驗的設置與此有關,不可能一一詳述。所以下文均參照幾種常用配置,在相應的章節(jié)開始處會給出對應的詳細配置表。

2、如果實際選購的模塊與文中的配置不同,請在實際使用時做出相應調整。如果您需要更多的信息,請與河北聯合大學輕工學院電氣信息實驗中心聯系。河北聯合大學輕工學院 單片機技術實驗指導書 目錄目錄概述1目錄2第一章 單片機應用基礎實驗3實驗1-1、單片機開發(fā)環(huán)境的熟悉實驗3一、實驗目的3二、實驗設備3三、實驗要求3四、實驗原理3五、實驗步驟3六、實驗報告10第二章 輸入輸出類實驗11實驗2-1、數碼管靜態(tài)顯示實驗11一、實驗目的11二、實驗設備11三、實驗要求11四、實驗原理11五、實驗步驟11六、實驗報告12實驗2-2、獨立式鍵盤輸入實驗13一、實驗目的13二、實驗設備13三、實驗要求13四、實驗原理1

3、3五、實驗步驟13六、實驗報告14實驗2-3、數碼管動態(tài)掃描顯示實驗15一、實驗目的15二、實驗設備15三、實驗要求15四、實驗原理15五、實驗步驟15六、實驗報告16第三章 綜合性實驗17實驗3-1、中斷定時實驗17一、實驗目的17二、實驗設備17三、實驗要求17四、實驗報告171河北聯合大學輕工學院 單片機技術實驗指導書 第一章 單片機應用基礎實驗第一章 單片機應用基礎實驗實驗1-1、單片機開發(fā)環(huán)境的熟悉實驗一、實驗目的認識單片機開發(fā)的軟硬件工具,了解單片機開發(fā)的一般流程,為以后的實驗和開發(fā)奠定基礎。二、實驗設備1 單片機仿真器及單片機集成開發(fā)軟件keil。2 51單片機核心卡3 發(fā)光二極

4、管陣列模塊三、實驗要求將單片機核心卡的P0口和一列發(fā)光二極管陣列相連接,使得8個發(fā)光二極管依次被點亮并且不斷循環(huán)四、實驗原理單片機開發(fā)的一般流程大致可分為:1 需求分析2 單片機選型和電路設計、程序規(guī)劃3 印刷電路板的制作和元器件焊接4 程序流程圖的繪制5 編寫源代碼6 程序的編譯連接7 下載到仿真器然后仿真運行8 除錯修改直至電路和程序功能調試正常9 燒寫單片機,完成樣機制作10.可靠性實驗,批量試制直至批量生產以上步驟隨開發(fā)人員的工作習慣和開發(fā)項目的復雜程度可能會有所不同。對于我們的實驗來說,一般只需要完成其中的第4步到第8步的工作即可,但是在之前要正確的實驗連線。其中,第5步到第8步,即

5、源程序的編寫、編譯連接、下載運行、除錯,都可以在單片機集成開發(fā)軟件KEIL中完成。具體的方法,將在實驗步驟中逐步講解。五、實驗步驟5.1操作環(huán)境建立1實驗連線示例如下圖:2連接仿真頭和8051單片機核心卡,注意仿真頭的方向要和芯片座一致。3打開電子技術綜合實驗平臺的電源,在實驗箱的右側面,并按上面的連線圖連線。4.在硬盤上建立一個文件夾,比如在桌面上建立一個名為“LED”的文件夾,當然也可以是其他名字。 5.啟動 Keil C51 軟件。您可以通過雙擊電腦桌面上的“Keil uVision3”快捷方式圖標來啟動。 6.執(zhí)行Keil C51 軟件的菜單“Project | New Project

6、”,彈出一個名為“Create New Project”的對話框。輸入工程文件的文件名,我們這里命名為“LED”,選擇你要保存的路徑,我們這里保存到剛才建立的“LED”目錄中。 7.緊接著Keil C51彈出“Options for Target Target 1。要求你為剛才的項目選擇一個CPU,我們選擇ATMEL公司的AT89S52。選擇AT89S52后,右邊一欄是對該單片機的基本說明,然后點擊確定。8.接下來彈出一個如下圖所示的對話框。該對話框提示你是否要把標準 8051 的啟動代碼添加到項目中去。Keil C51既支持 C 語言編程也支持匯編語言編程。如果打算用匯編語言寫程序,則應當選

7、擇“(N)”。如果打算用 C 語言寫程序,一般也選擇“(N)”,但是,如果用到了某些增強功能需要初始化配置時,則可以選擇“是(Y)”。在這里,我們選擇“ (N)”,即不添加啟動代碼。 至此,一個空的 Keil C51項目建立完畢。 9.執(zhí)行菜單“File | New”,出現一個名為“Text 1”的文檔。 接著執(zhí)行菜單“File | Save”,彈出一個名為“Save As”的對話框。將文件名改為”LED.ASM”,然后保存。10.添加源程序文件到工程中?,F在,一個空的源程序文件“LED.ASM”已經建立,但是這個文件與剛才新建的工程之間并沒有什么內在聯系。我們需要把它添加到工程中去。單擊 K

8、eil C51 軟件左邊項目工作窗口“Target 1”上的“”,將其展開。然后右擊“Source Group 1”文件夾,會彈出如下圖所示的選擇菜單。單擊其中的“Add Files to Group 'Source Group 1'”項,將彈出如下圖所示的對話框。11.先選擇文件類型為“Asm Source file (*.s*; *.src; *.a*)”,這時,對話框內將出現剛才保存過的“LED.ASM”。單擊文件“LED.ASM”,再按一次“Add”按鈕,最后按“Close”按鈕。這時,源程序文件“LED.ASM”已經出現在項目工作窗口的“Source Group 1”

9、文件夾內,可以單擊左邊的“ +”展開查看。12.現在開始編寫源程序。先最大化“LED.ASM”源程序窗口,然后輸入程序代碼,輸入完成后,別忘了點擊一次保存按鈕。 13.點擊工具欄“Options for target”按鈕,如下圖箭頭所示。這時會彈出“Options for Target Target 1”對話框。 “Xtal”:定義CPU時鐘,填寫我們實際使用的晶振頻率,假設是11.0592M的晶振,在“Xtal”后邊框中填入“11.0592”。下面依次是編譯的存儲模式,程序空間大小等設置,均使用默認值即可。5.2 仿真器的軟件設置 1.點擊Keil的工具欄按鈕 ,在彈出的對話框中選擇“De

10、bug”選項頁。參見圖3.13中的設置步驟進行設置。 在下拉框中如果沒有發(fā)現SOFI ICE52B Emulator/Programmer選項, 可能是沒有安裝ICE52B的仿真驅動程序。2.接著點擊Debug選項頁中,右上角的Settings按鈕。軟件會彈出ICE52的仿真/編程設置對話框。 對于ICE52的仿真部分只有唯一的一個選項,即是否開啟運行中停止功能(夭折功能)。當開啟該功能之后,用戶不可以使用代碼區(qū)域中0x003b處的三個字節(jié),這個三個字節(jié)需要被仿真器占用。請參考后面 “調試程序”的“暫停功能”介紹。 回到“Options for Target”,按“確定”按鈕,完成設置。 3.

11、進行完以上設置后,編譯該項目,檢測編譯結果。編譯無誤后,便可進行仿真功能操作。點擊工具欄按鈕啟動調試模式, 代碼便開始下載到仿真頭中,下載完成后,Keil的信息輸出窗口顯示如下圖所示。 接下來就可以點擊Debug菜單下的仿真命令或者相應的工具欄按鈕, 即可進行仿真操作. 包括全速運行,單步運行,跨步運行,斷點的設置/取消等等。觀察/修改變量值、觀察/修改存儲器數據等操作。如果Keil彈出下圖提示信息框,標明仿真器與仿真頭通訊失??!請按提示信息的內容檢查。另外請參照前面圖3.13檢查是否選擇了正確的Keil驅動,如果USB驅動未正確安裝,也會導致連接失敗。5.3 調試程序 1.斷點設置與取消 I

12、CE52最大可以支持19個固定斷點(即地址斷點)和一個臨時斷點(用于跨步運行)。斷點的設置與取消操作比較簡單,僅需要將光標移到相應的源代碼行,然后點擊的Debug菜單中的Insert/Remove Breakpoint或者按一下鍵盤的F9鍵即可。在斷點使能后,在當前源代碼行的前面會顯示一個紅色的方塊標志,如下圖所示. 用戶設置的地址斷點不可以超過19個,如果斷點超過該限制,在開始全速運行或跨步運行時,Keil會在Command窗口中顯示如下圖所示的提示信息: 超過數量的斷點將自動被禁用,禁用的斷點會顯示成灰白色,如下圖所示: 2.仿真運行 進入仿真模式之后,可以通過菜單Debug已經相應的工具

13、欄按鈕執(zhí)行相應的運行操作。 3.暫停功能 暫停功能也叫夭折功能,在仿真器全速運行過程中,可以點擊Keil工具欄的按鈕,或者是菜單【Debug】【Stop Running】將仿真器暫停下載,暫停后可以再次點擊全速/單步運行和跨步運行。 此功能是一個可選項,需在ICE52對話框中進行設置,只有勾選此選項后,該功能才有效。 開啟該功能后, 仿真器需要占用代碼空間的003BH的三字節(jié)空間,用戶的代碼不可以使用該區(qū)域。對于C語言程序可以使用如下的代碼將該空間進行保留。 char code reserve 3 _at_ 0x3b; / 保留三字節(jié)對于匯編語言, 可以直接將主程序跳過該區(qū)域, 如將主程序定位

14、在0040H之后,代碼如下: ORG 0000HLJMP MAINORG 0040HMAIN:;主程序開始 該功能借助51的單片機的內部的中斷功能實現,所以在用戶的代碼中不可以關閉中斷功能(例如將EA設為了0),否則仿真器運行后,將無法暫停。軟件會顯示如下所示的提示: 4.仿真擴展RAM 仿真監(jiān)控CPU是一個增強型的51單片機,片內已帶有768字節(jié)的擴展RAM,在默認模式(上電復位后),MOVX指令對地址范圍000H2FFH的讀寫操作,將直接訪問片內的擴展RAM,當地址超過2FFH時,才會訪問片外擴展的RAM。 如果需要直接訪問片外RAM,可以將片內的擴展RAM禁用,通過設置AUXR寄存器的E

15、XTRAM位為1即可。5.脫機運行 POD52仿真頭支持脫機運行, 直接將POD52仿真頭插入目標板的CPU插座, 仿真頭便會自動運行上一次的調試過的程序。 脫機運行的程序也可以通過Keil的Flash Download功能重新下載。在ICE52的設置對話框中的下載編程設置區(qū)內選中“下載到仿真適配頭 (POD52)”, 然后執(zhí)行Keil的Flash Download命令, Keil自動將程序下載到仿真適配頭的CPU內, 然后開始全速運行,運行效果與一個真實的CPU完全相同。 6.退出仿真 點擊工具欄按鈕即可停止調試,退出仿真狀態(tài)!六、實驗報告1請寫出完成一個單片機實驗的一般步驟2在本實驗中,遇

16、到了哪些問題?是什么原因?如何解決的?3如果去掉程序中的延時,結果如何?河北聯合大學輕工學院 單片機技術實驗指導書 第二章 輸入輸出類實驗第二章 輸入輸出類實驗實驗2-1、數碼管靜態(tài)顯示實驗一、實驗目的1.學習靜態(tài)顯示的工作原理;2.學習靜態(tài)顯示的電路接口設計及程序設計。二、實驗設備1仿真器2單片機核心卡3數碼管靜態(tài)顯示模塊三、實驗要求要求在2位數碼管中顯示“1、2”兩個字符,隔2秒鐘后顯示“3、4”兩個字符,持續(xù)兩秒鐘后重復上述過程。四、實驗原理數碼管的靜態(tài)輸入在很多的儀表中經常見到,因為儀表用于顯示的位數一般在兩到三位,再加上靜態(tài)顯示的高亮度,因此它在現實中同樣得到了很多的應用。由于靜態(tài)輸

17、入,數碼管的每個段都占用了一根控制線,因此,單片機不必進行不間斷的掃描,就能實現數碼管的穩(wěn)定顯示,從而減輕了CPU的工作負擔。因為單片機的輸出驅動電流不大,為增加數碼管的亮度,在單片機輸出口和數碼管之間常常使用接口芯片驅動。數碼管中的每一段相當于一個發(fā)光二極管,8段數碼管則具有8個發(fā)光二極管。對于“共陰極”的數碼管,內部每個發(fā)光二極管的陰極被接在一起,成為該各段的公共端,在靜態(tài)顯示中,公共端是常通的;發(fā)光二極管的陽極則成為段選線。對于“共陽極”數碼管,則正好相反,內部發(fā)光二極管的陽極接在一起,陰極成為段選線。這兩種數碼管的驅動方式是不同的。數碼管的段位順序如右圖所示:如果P0口由從低位到高位的

18、順序連接abcdefg dp,要在一個“共陰極”數碼管上要顯示“1”,則b、c段需被點亮,因此在段選線中寫入06H。則使用下面的語句即可點亮數碼管: MOV P0,#06H相反地,如果P0口由從高位到低位的順序連接abcdefg dp,要在一個“共陰極”數碼管上要顯示“1”,則b、c段需被點亮,因此在段選線中寫入60H。則使用下面的語句即可點亮數碼管: MOV P0,#60H本實驗所用為共陰極數碼管。五、實驗步驟1用導線把數碼管靜態(tài)顯示模塊和單片機的系統核心卡的某個端口連接。例如下圖:2編制程序。3將程序調入仿真器進行調試,直至達到實驗要求。六、實驗報告 1寫出在一個由從低位到高位的順序連接a

19、bcdefg dp的共陰極數碼管上顯示0-9對應的段選碼。實驗2-2、獨立式鍵盤輸入實驗一、實驗目的1認識獨立式鍵盤工作原理;2學習獨立式鍵盤的接口設計。二、實驗設備1單片機核心卡2仿真器3獨立式按鍵模塊4靜態(tài)數碼管顯示模塊三、實驗要求要求由8個獨立按鍵和1個靜態(tài)數碼管組成實驗電路,當按下07號按鍵時數碼管顯示相應的按鍵號。四、實驗原理在單片機的應用中獨立按鍵是最常用的輸入設備,用來輸入用戶指令、狀態(tài)選擇等信號。獨立式鍵盤中,各按鍵相互獨立,每個按鍵各接一根輸入線,每根輸入線上的按鍵工作狀態(tài)不會影響其它輸入線上的工作狀態(tài)。因此,通過檢測輸入線的電平狀態(tài)就可以很容易的判斷按鍵是否被按下了。獨立式

20、鍵盤電路配置靈活,軟件結構簡單。但每個按鍵需占用一根輸入線,在按鍵數量較多時,輸入口浪費大,電路結構顯得很繁雜,故此種鍵盤適用于按鍵較少或操作速度較高的場合。下面介紹獨立式按鍵的接口方法。下圖(a)為中斷方式的獨立式鍵盤工作電路,圖(b)為查詢方式的獨立式按鍵工作電路,按鍵直接與89C51的I/O口線相接,通過讀I/O口,判定各I/O口線的電平狀態(tài),即可識別出按下的按鍵。(a)中斷方式 (b)查詢方式 獨立式鍵盤接口電路 此外,也可以用擴展I/O口連接獨立式鍵盤接口電路。 上述獨立式鍵盤電路中,各按鍵開關均采用了上拉電阻,這是為了保證在按鍵斷開時,各I/O口線有確定的高電平。在我們的鍵盤模塊中

21、,已經在鍵盤輸出端加上了上拉電阻,因此不用再額外加上。五、實驗步驟1按照下面的示例圖,用導線正確連接獨立式按鍵、發(fā)光二極管實驗模塊和單片機核心卡。2編寫程序。3將程序調入仿真器進行調試。六、實驗報告1畫出接口電路原理圖,并簡要分析電路工作原理。2給出針對實驗要求編寫的程序清單、程序流程圖、并給予適當注釋。3獨立式鍵盤的工作的原理是什么?4獨立式鍵盤的消抖的方法是什么?實驗2-3、數碼管動態(tài)掃描顯示實驗一、實驗目的1學習數碼管動態(tài)掃描的工作原理;2學習數碼管動態(tài)掃描的電路接口設計及程序編寫。二、實驗設備1仿真器2單片機核心卡3數碼管動態(tài)顯示模塊三、實驗要求 使8位數碼管顯示每個人學號的后8位。四、實驗原理在多位8段數碼管顯示時,為了簡化硬件電路,通常將所有位的段選線相應地并聯在一起,由一個單片機的8位I/O口控制,形成段選線的多路復用。而各位數碼管的共陽極或共陰極分別由單片機獨立的I/O口線控制,順序循環(huán)地點亮每位數碼管,這

溫馨提示

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

評論

0/150

提交評論