基本操作 閃爍燈 流水燈[特制材料]_第1頁
基本操作 閃爍燈 流水燈[特制材料]_第2頁
基本操作 閃爍燈 流水燈[特制材料]_第3頁
基本操作 閃爍燈 流水燈[特制材料]_第4頁
基本操作 閃爍燈 流水燈[特制材料]_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗一:硬件,軟件介紹以及閃爍燈和流水燈一實驗?zāi)康?.認識單片機以及外圍硬件。 2.掌握KEIL軟件的基本操作。3.掌握單片機編程的一般流程。二實驗內(nèi)容1.認識單片機開發(fā)板上的硬件,串口以及usb轉(zhuǎn)串口線。2.使用keil軟件建立工程并編寫閃爍燈程序,下載到開發(fā)板上進行驗證。3.改寫閃爍燈程序,進一步熟悉操作。3.編寫流水燈程序并下載到開發(fā)板上進行驗證。三實驗設(shè)備電腦,單片機開發(fā)板,串口線,usb轉(zhuǎn)串口線。四硬件介紹1.51單片機介紹圖1-1 開發(fā)板的硬件資源圖1-1為本實驗中用到的單片機開發(fā)板,該開發(fā)板包含了較多的硬件資源。這里主要介紹一下主芯片stc89c52,其它大部分硬件在以后相應(yīng)的實

2、驗中再做介紹。上圖中間最大的那個黑色長方塊就是單片機,使用單片機就可以控制開發(fā)板上其他的硬件,此單片機全名為STC89C52RC,其中STC代表生產(chǎn)該單片機的廠家,8代表單片機是8051內(nèi)核,9代表內(nèi)部有EEPROM存儲器,C表示該器件是CMOS產(chǎn)品,5是固定不變的數(shù)字,2表示單片機內(nèi)部含有8KB的程序存儲空間(如果是1表示4KB,如果是3表示12KB,以此類推。),RC表示內(nèi)部的隨機存儲器RAM大小為512B。除了這些文字還有標明單片機的最大接入頻率,產(chǎn)品級別,封裝形式,生產(chǎn)日期,以及生產(chǎn)工藝的文字,這里就不一一說明。2.串口線以及usb轉(zhuǎn)串口線的介紹圖1-2 串口線串口線如圖1-2所示,串

3、口線主要用來給單片機下載程序以及串口通訊時使用,其結(jié)構(gòu)以及通訊方式將在串口通訊實驗時介紹,開始只拿串口下載程序使用。一般的臺式機都會有串口,將串口線一段插在臺式機上一段插在單片機上,接上電源就可以給單片機下載程序。但是很多時候使用的是筆記本,筆記本上很少有串口,所以就需要使用usb轉(zhuǎn)串口線,如圖1-3所示。圖1-3 usb轉(zhuǎn)串口線usb轉(zhuǎn)串口線將usb接口通過芯片和程序虛擬出一個串口來進行電腦與單片機的通訊,所以使用時還需給筆記本安裝驅(qū)動,芯片一般為PL2303或者HL340,根據(jù)usb轉(zhuǎn)串口使用的芯片不同安裝不同的驅(qū)動。3.led燈的硬件電路圖1-4 led燈的電路如圖所示,8個led燈的陽

4、極通過排阻接到了電源上,陰極接到了74hc573鎖存器的輸出口,輸入口與單片機的P1口連接,鎖存器的鎖存口L與單片機的P2.5連接。鎖存器的功能如圖1-5所示。圖1-5 鎖存器功能表如上圖,為使能端口,低電平有效。L為鎖存口,當鎖存口L為高時,輸入和輸出口的狀態(tài)一致,當L為低時鎖存上一個L為高時的狀態(tài)。4.建立第一個工程首先,在桌面新建一個文件夾,然后打開keil軟件,顯示如圖1-6。圖1-6 打開keil然后,單擊菜單欄的project,在彈出的子菜單中點擊new uvision project,在彈出的對話框中給工程命名(這里命名為閃爍燈或者其他)并將工程保存在剛才新建的文件夾之中。如圖1

5、-7。圖1-7點擊保存,會彈出選擇單片機的對話框,選擇STC89C52RC,單擊OK,如圖1-8。然后會彈出一個對話框問你是否添加啟動代碼,單擊 是(Y)。圖1-8下來,單擊菜單欄的file在子菜單中單擊new,此時會生成一個文本輸入框text1,然后單擊filesave,將該文件保存為 閃爍燈,如圖1-9.圖1-9在軟件左側(cè)project窗口中打開文件夾target,在子文件夾中右鍵單擊source group 1,在彈出的菜單中單擊add files to group source group 1,在彈出的對話框中選擇剛才保存好的 流水燈.c 點擊add,然后點擊close關(guān)閉對話框。如圖

6、1-10,1-11所示。圖1-10圖1-11這樣,一個工程就建立好了,如圖1-12,接下來就是在閃爍燈.c中編寫程序了。圖1-12 建立工程完畢5.閃爍燈程序的編寫要想使led燈產(chǎn)生一明一暗的閃爍效果,根據(jù)電路圖1-4,可以將鎖存器的鎖存端L置高電平,然后通過編程使片機的P1口每隔一段時間為高電平一段時間為低電平,而led燈的陽極接電源所以當P1口為低電平時led燈亮,P1為高電平時led燈滅。如圖1-13.圖1-13 P1口的狀態(tài)在閃爍燈.c中輸入程序如圖1-14,(/以及后面的文字是注釋,用來解釋程序可以不輸)。圖1-14首先介紹頭文件,reg52.h文件定義了stc89c52單片機內(nèi)部的

7、寄存器,為了使用方便將16進制地址的寄存器定義成了各種名稱,例如P1,P2等。sbit diola=P25; sbit是位定義,意思是說之后的diola對應(yīng)于單片機的P2.5腳,要注意的是,這里的P25中間的是異或的意思,是一個運算,不能直接使用。所以當使用單片機的一個引腳必須要對其重新定義。下來是延時函數(shù),延時函數(shù)主要是為了是單片機的引腳保持一種狀態(tài)一段時間,執(zhí)行一次for循環(huán)大概使用1us,這里的兩重for循環(huán)大概為0.5s。值得說明的是,每當單片機開始運行程序的時候是直接從主函數(shù)里運行的。diola=1;是將鎖存器設(shè)置為非鎖存狀態(tài),這樣輸入輸出就會保持一致。下來進入while(1)死循環(huán)

8、,進入死循環(huán)的好處是防止重復(fù)運行不必要的程序(diola=1這句話執(zhí)行一遍就夠了)。接下來就是讓led燈產(chǎn)生明暗變化,首先給P1賦值0xff,使得P1的8個引腳都為高電平,此時燈是滅的狀態(tài),保持0.5s左右,給P1賦值0,這樣8個引腳都變成了低電平,此時,led燈導(dǎo)通發(fā)光,延時保持一段時間后再運行P1=0xff; 讓led燈熄滅,就這樣一直運行下去,是8個led燈產(chǎn)生了閃爍燈的效果。6.編譯程序,并將程序下載到單片機開發(fā)板上運行程序編寫完后,點擊編譯按鈕如圖1-15中被圈起的按鈕。圖1-15如果程序沒有錯誤,那么會在窗口下方的build output窗口顯示如圖1-16.圖1-16如果出現(xiàn)錯誤

9、,檢查并修改程序,重新編譯,編譯成功后就要輸出hex文件,hex文件是直接下載到單片機中的程序文件,它是由keil軟件根據(jù)剛才編好的程序生成的單片機可以識別的16進制文件。點擊target options如圖1-17中被圈起的圖標。圖1-17再打開的對話框中選擇output選項卡,將creat hex file前勾起,如圖1-18。圖1-18點擊OK,然后再次點擊編譯按鈕,重新編譯程序,顯示編譯成功后,就會在工程所在的文件夾中生成一個閃爍燈.hex的文件。接下來就是下載程序到單片機,首先用串口線將電腦與開發(fā)板連接,然后用usb線把電腦與開發(fā)板連接(usb線主要是提供電源)。按下開關(guān)電源指示燈亮

10、說明沒有問題,再次按下開關(guān)關(guān)掉電源。打開stc-isp軟件(),在mcu type中選擇STC89C52RC,然后點擊打開程序文件按鈕,找到剛才生成的閃爍燈.hex文件,選擇合適的串口(comx不同的電腦串口不一樣),然后點擊download/下載,如圖1-19.圖1-19如圖1-19,當出現(xiàn)握手連接時,打開單片機開發(fā)板的電源,程序就會下載到單片機里面,下載完后程序就會自動運行,觀察程序運行狀態(tài)。7.修改程序,讓閃爍燈產(chǎn)生不同的閃爍效果,這里列舉兩例。(1)改變延時時間將程序中delay函數(shù)中的時間減小,將500改成200,如圖1-20.圖1-20重新編譯程序,生成hex文件,重復(fù)剛才的操作將

11、程序下載到單片機當中,會發(fā)現(xiàn)閃爍的頻率變快了。(2)改變閃爍燈樣式將程序中對P1的賦值改變,如圖1-21.圖1-21重復(fù)編譯,下載步驟,發(fā)現(xiàn)8個led燈前四個與后四個交替閃爍。8.流水燈的產(chǎn)生流水燈的原理與閃爍燈類似,只不過是讓8個led燈順序的點亮。將閃爍燈的程序刪掉,輸入以下程序,如圖1-22.圖1-22這個程序的原理是,先給P1口賦值0x01,這樣就會使第一個燈滅,剩下七個燈亮,接下來進入while(1)死循環(huán),先延時一段時間,然后對P1的數(shù)據(jù)左移,最后一位補零,這樣P1的數(shù)據(jù)變成了0x02,然后判斷P1是否為零,條件不滿足,重新執(zhí)行延時函數(shù),再左移,P1等于0x04,當P1左移變成0x00時,燈全亮,if條件滿足,執(zhí)行P1=0x01,然后再延時,左移,就這樣就產(chǎn)生了流水燈。編譯下載程序,觀察實際狀態(tài)。9.使用循環(huán)移動產(chǎn)生流水燈上面的流水燈比較容易理解,但是一個燈滅其他燈亮,不太好看,這里使用循環(huán)移動產(chǎn)生流水燈,程序更簡單。這個程序需要用到庫函數(shù)intrins.h中的

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論