單片機廣告燈試驗_第1頁
單片機廣告燈試驗_第2頁
單片機廣告燈試驗_第3頁
全文預覽已結束

付費下載

下載本文檔

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

文檔簡介

《單片機基礎》第1次實驗報告實驗內(nèi)容實驗十廣告燈實驗(實驗手冊P28頁)姓名學號班級實驗準備:按要求完成以下步驟:1、匯編源程序“ZYADV.ASM”已粘貼在下方,看懂源程序后對每條指令加上注釋信息,注釋信息以分號開始,將注釋信息的字體設置為‘綠色’。RG0MAIN: MOV DPTR,#TAB ;轉移表首地址送數(shù)據(jù)指針DPTR MOV R5,#71H ;把循環(huán)次數(shù)71H送到R5中LOOP: MOV A,#00H ;00H送入A中 MOVC A,@A+DPTR;將表中第一個數(shù)據(jù)取出送入A中 MOV P1,A ;將A中數(shù)據(jù)從P1口輸出 ACALL DELAY ;調(diào)用延時子程序 ACALL DELAY ;調(diào)用延時子程序 INC DPTR ;DPTR后移,指向下一個地址單元 DJNZ R5,LOOP ;判斷循環(huán)是否結束,若R5自減1不等于0,則繼續(xù)循環(huán),否則順序執(zhí)行 LJMP MAIN ;跳到主函數(shù)DELAY: MOV R7,#00H ;將00H送到R7中,控制內(nèi)循環(huán)次數(shù) MOV R6,#00H ;將00H送到R6中,控制外循環(huán)次數(shù)DE: DJNZ R7,$ ;判斷內(nèi)循環(huán)是否結束,R7自減1不為0,本地跳轉,否則順序執(zhí)行 DJNZ R6,DE ;判斷外循環(huán)是否結束,R6自減1不為0,跳到DE處,否則順序執(zhí)行 RET;子程序返回TAB: DB 0FEH, 0FDH, 0FBH, 0F7H, 0EFH, 0DFH, 0BFH, 7FH DB 0FFH, 7FH, 0BFH, 0DFH, 0EFH, 0F7H, 0FBH, 0FDH DB 0FEH, 0FFH, 0FEH, 0FCH, 0F8H, 0F0H, 0E0H, 0C0H DB 80H, 00H, 80H, 0C0H, 0E0H, 0F0H, 0F8H, 0FCH DB 0FEH, 0FFH, 7FH, 3FH, 1FH, 0FH, 07H, 03H DB 01H, 00H, 01H, 03H, 07H, 0FH, 1FH, 3FH DB 7FH, 0FFH, 7EH, 3CH, 18H, 00H, 18H, 3CH DB 7EH, 0FFH, 0FEH, 0FCH, 0FCH, 0F9H, 0F3H, 0E7H DB 0CFH, 9FH, 3FH, 7FH, 0FFH, 7FH, 3FH, 9FH DB 0CFH, 0E7H, 0F3H, 0F9H, 0FCH, 0FEH, 0FFH DB 0FEH, 0FCH, 0F8H, 0F0H, 0E0H, 0C0H, 80H, 00H DB 80H, 40H, 20H, 10H, 08H, 04H, 02H, 01H, 00H DB 01H, 02H, 04H, 08H, 10H, 20H, 40H, 80H, 00H DB 80H, 0C0H, 0E0H, 0F0H, 0F8H, 0FCH, 0FEH, 0FFH ENDC語言程序#include<reg51.h>voidmain(void){//定義花樣數(shù)據(jù)constunsignedchartab[113]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xFF, 0x7F,0xBF,0xDF,0xEF,0xF7, 0xFB,0xFD,0xFE,0xFF,0xFE,0xFC, 0xF8,0xF0,0xE0,0xC0,0x80,0x00,0x80,0xC0,0xE0,0xF0,0xF8, 0xFC, 0xFE,0xFF,0x7F,0x3F,0x1F,0x0F,0x07,0x03,0x01,0x00,0x01,0x03, 0x07,0x0F,0x1F, 0x3F,0x7F,0xFF,0x7E,0x3C,0x18,0x00,0x18, 0x3C,0x7E,0xFF,0xFE,0xFC,0xFC,0xF9,0xF3,0xE7,0xCF,0x9F,0x3F,0x7F, 0xFF,0x7F,0x3F,0x9F,0xCF, 0xE7,0xF3,0xF9,0xFC,0xFE,0xFF,0xFE,0xFC, 0xF8,0xF0,0xE0,0xC0,0x80,0x00,0x80,0x40,0x20,0x10,0x08,0x04, 0x02,0x01,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x00, 0x80,0xc,0xE0,0xF0,0xF8,0xFC,0xFE,0xFF}; unsignedinta;//定義延遲變量 unsignedchardatab;//定義循環(huán)變量 do { for(b=0;b<113;b++) {for(a=0;a<30000;a++);//延遲一段時間 P0=tab[b];//讀取已定義的花樣數(shù)據(jù)并將數(shù)據(jù)傳給P0口 } }while(1);}2、觀察實驗現(xiàn)象,閱讀源程序,思考并回答以下問題。(1)將程序正確下載到實驗箱后,觀察程序全速運行的現(xiàn)象。思考燈的閃爍有何規(guī)律?源程序是如何控制燈閃爍的?答:LED燈先從L7到L0順序點亮,再從L0到L7順序點亮,再從兩邊往中間亮,又從中間往兩邊亮。(2)按F10功能鍵進行單步執(zhí)行程序,觀察流程是否會進入表格首地址。答:通過觀察,會進入表格首地址。(3)在單步執(zhí)行程序過程中,觀察燈閃爍的規(guī)律,思考LED燈是“共陽極”接法,還是“共陰極”接法?答:由于送0時,LED點亮,送1時LED燈滅,所以LED燈是“共陽極”接法(4)思考源程序中寄存器R5的初值為何是“71H”?“ACALLDELAY”指令為何調(diào)用兩次,如果只調(diào)用一次現(xiàn)象有何改變?答:因為71H轉換成十進制為113,TAB表格中共有113個數(shù)據(jù),故循環(huán)次數(shù)R5初值為113(71H);ACALLDELAY”指令調(diào)用兩次是為了增加延時,便于觀察燈的亮滅;如果只調(diào)用一次,LED燈將閃爍得更快。(5)假設單片機實驗箱的晶振頻率為12MHz,請計算DELAY標號開始的延時程序具體延時了多長時間?寫出計算公式。并思考,如果需要控制燈閃爍加快,或者減慢應如何修改程序?DELAY: MOV R7,#00H ;1us MOV R6,#00H ;1usDE: DJNZ R7,$ ;2us DJNZ R6,DE ;2usRET答:如果需要控制燈閃爍加快可以多調(diào)用幾次延遲子程序,可以在延遲子程序中多嵌套幾層循環(huán);若要減慢燈的閃爍,可以減小R7、R6的初值,可以只調(diào)用一次延遲子程序,可以在延遲子程序中只用一層循環(huán)。假設單片機實驗箱時鐘頻率為12MHz,使用單片機的定時器T0,編程控制燈閃爍周期為100ms,將匯編源程序粘貼在此處。RG0MAIN:MOVTMOD,#01HMOVTH0,#3CHMOVTL0,#0B0HSETBTR0MP1:MOV DPTR,#TAB MOV R5,#71H MOV R1,#02HMP2:MOV A,#00H MOVC A,@A+DPTRJBCTF0,$MOVTH0,#3CHMOVTL0,#0B0HJBCTF0,$MOVTH0,#3CHMOVTL0,#0B0H MOV P1,A INC DPTR DJNZ R5,MP2 LJMP MP1 TAB: DB 0FEH, 0FDH, 0FBH, 0F7H, 0EFH, 0DFH, 0BFH, 7FH DB 0FFH, 7FH, 0BFH, 0DFH, 0EFH, 0F7H, 0FBH, 0FDH DB 0FEH, 0FFH, 0FEH, 0FCH, 0F8H, 0F0H, 0E0H, 0C0H DB 80H, 00H, 80H, 0C0H, 0E0H, 0F0H, 0F8H, 0FCH DB 0FEH, 0FFH, 7FH, 3FH, 1FH, 0FH, 07H, 03H DB 01H, 00H, 01H, 03H, 07H, 0FH, 1FH, 3FH DB 7FH, 0FFH, 7EH, 3CH, 18H, 00H, 18H, 3CH DB 7EH, 0FFH, 0FEH, 0FCH, 0FCH, 0F9H, 0F3H, 0E7H DB 0CFH, 9FH, 3FH, 7FH, 0FFH, 7FH, 3FH, 9FH DB 0CFH, 0E7H, 0F3H, 0F9H, 0FCH, 0FEH, 0FFH

溫馨提示

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

最新文檔

評論

0/150

提交評論