2012級單片機實驗指導書_第1頁
2012級單片機實驗指導書_第2頁
2012級單片機實驗指導書_第3頁
2012級單片機實驗指導書_第4頁
2012級單片機實驗指導書_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

一、基本控制語句應用——簡單廣告牌霓虹燈設計1.實驗目的:a.理解左移RL、右移RR指令的功能。b.延時程序DELAY的具體執(zhí)行過程、延時量控制等。c.掌握通過設置程序的跳轉(zhuǎn)來實現(xiàn)程序循環(huán)的方法。2.實驗設備使用:計算機一臺、單片機實驗箱一套、KeliC軟件一套。開始P0及累加器A初始化化開始P0及累加器A初始化化A內(nèi)容賦予P0A內(nèi)容左移跳轉(zhuǎn)至LOOP結(jié)束(1)源程序及流程圖:ORG0000HAJMPMAINORG0030HMAIN:MOVP0,#00HMOVA,#01HLOOP:MOVP0,ARLAJMPLOOPEND(2)電路原理圖:4.實驗內(nèi)容:a.編寫一程序,可實現(xiàn)數(shù)據(jù)左移并通過I/O口輸出顯示。b.加入延時程序,觀察實驗現(xiàn)象是否有所變化。c.實現(xiàn)左移及右移的循環(huán)輸出。d.實現(xiàn)16盞LED的移位顯示。5.實驗步驟:(1)基本步驟:a.讀懂程序,分析程序中哪一句為控制語句,起到什么控制作用以及最終實現(xiàn)何功能。b.運行程序,觀察結(jié)果是否與程序相符,如不相符請分析出現(xiàn)問題的原因所在。c.試著向源程序中加入延時語句,觀察現(xiàn)象是否有所改變。ORG0000HAJMPMAINORG0030HMAIN:MOVP0,#00HMOVA,#01HLOOP:MOVP0,ARLAACALLDELAYJMPLOOP;*****延時子程序******;DELAY:MOVR2,#10HLOOP1:MOVR1,#0FFHLOOP2:DJNZR1,LOOP2DJNZR2,LOOP1RETENDd.適當修改延時量,使LED閃爍更為明顯,易于肉眼觀察。e.適當修改程序,使程序最終實現(xiàn)一只LED作流水狀移動。(2)發(fā)揮部分:①能自左向右——自右向左——自左向右反復循環(huán)來控制一只發(fā)光管如反彈狀移動。②能通過兩組I/O口組合實現(xiàn)16只LED的流水燈效果。6.實驗報告要求:a.記錄實驗每一步驟的具體過程及實驗現(xiàn)象。b.敘述實驗步驟中發(fā)揮部分程序的具體構(gòu)思,同時將調(diào)試過程作詳細記錄。c.記錄發(fā)揮部分的完整程序,同時將程序分塊化,并且標注好每部分程序塊功能及關(guān)鍵語句的作用。d.總結(jié)本次實驗知識點及編程調(diào)試心得體會。7.實驗預習思考題:a.匯編語言控制語句應用。b.程序的循環(huán)、子程序調(diào)用、程序跳轉(zhuǎn)等。c.單片機基本I/O口的驅(qū)動方式、特點等。d.讀懂以下C語言程序:#include<AT89X51.H>unsignedchari,c,d,temp=0xfe;voiddelay(void){unsignedchara,b;for(a=0;a<255;a++){for(b=0;b<200;b++);}}voidmain(void){while(1){ for(i=0;i<8;i++){c=temp<<i;d=temp>>(8-i);P0=c|d;delay();}}}二、單片機I/O口輸入——獨立按鍵識別1.實驗目的:a.掌握JB、CPL語句的具體使用方法。b.延時程序的具體執(zhí)行過程、延時量控制等。c.掌握通過設置程序的跳轉(zhuǎn)來執(zhí)行相應語句的方法。d.體會按鍵抖動對單片機系統(tǒng)所造成的影響,以及如何通過軟件延時去抖動方法來消除按鍵抖動。2.實驗設備使用:計算機一臺、單片機實驗箱一臺、KeliC軟件一套。開始P0及累加器A初始化化開始P0及累加器A初始化化A內(nèi)容賦予P0判斷是否有鍵按下結(jié)束對A取反NY(1)源程序及流程圖:ORG0000HAJMPMAINORG0030H;*****主程序*****;MAIN:MOVP0,#0FFHMOVA,#0FFHWAIT:MOVP0,AJBP1.0,WAITCPLAJMPWAITEND(2)電路原理圖:4.實驗內(nèi)容:a.編寫一程序,實現(xiàn)P1.0口作輸入,同時輸出內(nèi)容隨P1.0口狀態(tài)變化而變化。b.加入按鍵去抖動程序,觀察實驗結(jié)果與之前有何不同。c.實現(xiàn)按鍵復用功能。5.實驗步驟:(1)基本步驟:a.讀懂并理解程序,根據(jù)程序定義,將P1.0端口用單芯導線連接至單片機芯片下方的獨立式鍵盤中(平時按鍵抬起時為高電平,按下按鍵時為低電平),將P0口通過8芯排線連接至8路發(fā)光管中。b.運行以上程序,同時反復按下連接至P1.0口的輕觸開關(guān),觀察LED發(fā)光情況。(2)發(fā)揮部分:①由于按鍵抖動,使LED的亮滅情況無法通過按鍵準確控制,試著通過前面一節(jié)的實驗,在程序適當?shù)奈恢眉尤胙訒r程序,實現(xiàn)軟件去抖動。實現(xiàn)按鍵復用功能,即短按按鍵實現(xiàn)LED亮滅控制;長按按鍵(如按下按鍵時間大于1秒時)進入LED流水燈狀態(tài)(可只需流動一遍便結(jié)束,然后再次等待按鍵動作)。6.實驗報告要求:a.記錄實驗每一步驟的具體過程及實驗現(xiàn)象。b.敘述實驗步驟中發(fā)揮部分程序的具體構(gòu)思,同時將調(diào)試過程作詳細記錄。c.記錄發(fā)揮部分的完整程序,同時將程序分塊化,并且標注好每部分程序塊功能及關(guān)鍵語句的作用。d.總結(jié)本次實驗知識點及編程調(diào)試心得體會。7.實驗預習思考題:a.獨立式按鍵的連接。b.匯編語句對按鍵是否按下的具體判斷、按鍵按下后所執(zhí)行的跳轉(zhuǎn)等。c.按鍵抖動對單片機所造成的影響以及如何消除抖動對單片機在執(zhí)行程序上所產(chǎn)生的影響。d.讀懂以下C語言程序:#include<AT89X51.H>sbitkey=P1^0;unsignedchara=0;voidmain(void){while(1){P0=a;if(key==0){a=~a;}}}三、外部中斷應用——按鍵計數(shù)器1.實驗目的:a.理解中斷服務程序的入口地址并將其熟記。b.掌握中斷控制字TCON、IE、IP的具體含義及正確定義等。c.掌握中斷服務程序的具體執(zhí)行過程。d.體會按鍵抖動對單片機系統(tǒng)所造成的影響及如何消除按鍵抖動。2.實驗設備使用:計算機一臺、單片機實驗箱一臺、KeliC軟件一套。開始外中斷及數(shù)據(jù)初始化化開始外中斷及數(shù)據(jù)初始化化死循環(huán)判斷是否有中斷結(jié)束對A累加計數(shù)NY(1)源程序及流程圖:ORG0000HAJMPMAINORG0003HAJMPDEALORG0030HMAIN:SETBEASETBEX0SETBIT0MOVA,#00HMOVP0,#0FFHWAIT:SJMPWAITDEAL:INCACPLAMOVP0,ACPLARETIEND(2)電路原理圖:4.實驗內(nèi)容:a.編寫一程序,可實現(xiàn)按鍵執(zhí)行外中斷程序。b.加入延時程序,避免中斷的頻繁執(zhí)行。c.實現(xiàn)計數(shù)值連加功能。5.實驗步驟:(1)基本步驟:a.閱讀并理解程序,理解程序第三行的“ORG0003H”及“MAIN”程序中初始化部分的具體含義。b.將單片機外中斷(P3.2/INT0)用單芯導線連接至獨立式按鍵中,P0口通過8芯排線接至LED。c.運行程序,通過反復按下獨立式按鍵,觀察LED顯示結(jié)果。(2)發(fā)揮部分:①通過以上實驗結(jié)果得出:由于按鍵抖動,導致P3.2/INT0口頻繁出現(xiàn)高低變化的電平,致使單片機多次執(zhí)行中斷服務程序。能否在程序的適當部分加入延時程序,成功解決按鍵抖動問題?②如何實現(xiàn)計數(shù)值連加功能(即按下按鍵不放,計數(shù)值不斷自動累加)?6.實驗報告要求:a.記錄實驗每一步驟的具體過程及實驗現(xiàn)象。b.敘述實驗步驟中發(fā)揮部分程序的具體構(gòu)思,同時將調(diào)試過程作詳細記錄。c.記錄發(fā)揮部分的完整程序,同時將程序分塊化,并且標注好每部分程序塊功能及關(guān)鍵語句的作用。d.總結(jié)本次實驗知識點及編程調(diào)試心得體會。7.實驗預習思考題:a.單片機中斷系統(tǒng)基本功能、中斷控制字定義以及外中斷觸發(fā)方式等。b.中斷服務程序入口地址、中斷斷點及中斷返回。c.按鍵抖動對中斷所造成的影響。d.讀懂以下C語言程序:#include<AT89X51.H>unsignedchara=0;voidint0(void)interrupt0using0{a++;a=~a;P0=a;a=~a;}voidmain(void){EA=1;EX0=1;IT0=1;while(1);}四、8*8LED點陣顯示基礎(chǔ)1.實驗目的:a.掌握LED8*8與單片機的連接方法。b.掌握段代碼表的推算及變址尋址的具體含義。c.掌握判斷語句的具體用法。2.實驗設備使用:計算機一臺、單片機實驗箱一臺、KeliC軟件一套。3.實驗基本原理:(1)源程序及流程圖:ORG0000HAJMPMAINORG0030HMAIN:MOVR0,#00H;列地址MOVR1,#0FEH;行選擇MOVR3,#00H;按鍵次數(shù)的計數(shù)MOVR2,#08H;顯示一個數(shù)的循環(huán)次數(shù)MOVR5,#00H;行地址MOVDPTR,#DISPBIT;字型首地址LOOP:MOVR0,#00HMOVR1,#0FEHMOVR2,#08HJBP3.2,LOOP1ACALLDELAYJBP3.2,LOOP1INCR3JNBP3.2,$CJNER3,#10,NEXTMOVR3,#00HNEXT:MOVA,R3 ;每一行是8個字節(jié),所以顯示下一行的數(shù)乘8是讓地址移到一下開始的位置MOVB,#8;MULABMOVR5,ALOOP1:MOVA,R5ADDA,R0MOVCA,@A+DPTRMOVP1,AMOVP2,R1MOVA,R1RLAMOVR1,AACALLDELAYINCR0DJNZR2,LOOP1SJMPLOOPDELAY:MOVR6,#10DLP1:MOVR7,#50DLP2:NOPNOPDJNZR7,DLP2DJNZR6,DLP1RETDISPBIT:DB0FFH,0C3H,0BDH,0BDH,0BDH,0BDH,0C3H,0FFH;0DB0FFH,0E7H,0E7H,0E7H,0E7H,0E7H,0E7H,0FFH;1DB0FFH,81H,0BFH,0BFH,81H,0FDH,0FDH,81H;2DB0FFH,81H,0BFH,0BFH,81H,0BFH,0BFH,81H;3DB0FFH,0EDH,0EDH,0EDH,081H,0EFH,0EFH,0EFH;4DB0FFH,0C3H,0FBH,0C3H,0DFH,0DFH,0C3H,0FFH;5DB0FFH,0C3H,0FBH,0C3H,0DBH,0DBH,0C3H,0FFH;6DB0FFH,0C3H,0DFH,0DFH,0DFH,0DFH,0DFH,0FFH;7DB0FFH,0C3H,0DBH,0DBH,0C3H,0DBH,0DBH,0C3H;8DB0FFH,0C3H,0DBH,0DBH,0C3H,0DFH,0DFH,0DFH;9END(2)電路原理圖:P1接到C3區(qū)的LD_1-LD-8P2接到C3區(qū)的LD_A-LD_H4.實驗內(nèi)容:a.編寫一程序,可實現(xiàn)按鍵按下次數(shù)的顯示。b.加入延時程序,消除按鍵抖動。c.實現(xiàn)0~9計數(shù)加1計數(shù)。5.實驗步驟:(1)基本步驟:(2)發(fā)揮部分:①使程序?qū)崿F(xiàn)0~9計數(shù)減1計數(shù),即按下按鍵時能從0~9顯示。6.實驗報告要求:a.記錄實驗每一步驟的具體過程及實驗現(xiàn)象。b.敘述實驗步驟中發(fā)揮部分程序的具體構(gòu)思,同時將調(diào)試過程作詳細記錄。c.記錄發(fā)揮部分的完整程序,同時將程序分塊化,并且標注好每部分程序塊功能及關(guān)鍵語句的作用。d.總結(jié)本次實驗知識點及編程調(diào)試心得體會。五、單片機定時/計數(shù)器——秒脈沖定時器1.實驗目的:a.理解中斷服務程序的入口地址及熟記各中斷服務程序入口地址。b.掌握定時/計數(shù)控制字TMOD、TCON的具體含義及正確定義等。c.掌握不同工作方式下定時時間初值的具體算法。2.實驗設備使用:計算機一臺、單片機實驗箱一臺、KeliC軟件一套。3.實驗基本原理:開始系統(tǒng)初始化開始系統(tǒng)初始化進入死循環(huán)有無定時中斷請求結(jié)束進入中斷重裝值并對P1.0取反NYORG0000HLJMPMAINORG000BHLJMPINTT0ORG0030HMAIN:MOVTMOD,#01HMOVTL0,#0B0HMOVTH0,#3CHSETBEASETBET0SETBTR0SJMP$INTT0:MOVTL0,#0B0HMOVTH0,#3CHCPLP1.0RETIEND(2)電路原理圖:4.實驗內(nèi)容:a.編寫一程序,通過啟動定時/計數(shù)器可實現(xiàn)P1.0口輸出精確穩(wěn)定的脈沖信號。b.改變定時器初值并通過軟件計數(shù)方法精確得到1秒定時。c.加入數(shù)碼管顯示,實現(xiàn)秒個位指示功能。d.加入判斷語句,實現(xiàn)LED計數(shù)值控制。5.實驗步驟:(1)基本步驟:a.根據(jù)程序定義將P1.0口通過單芯排線連接至LED中。b.運行以上程序,觀察所連接LED的閃爍情況。(2)發(fā)揮部分:①精確定義一秒鐘時間,并結(jié)合前面學過的知識,能通過數(shù)碼管顯示出秒鐘的個位信息(注意秒鐘個位為十進制,即0~9)(結(jié)合實驗五電路圖連接)。②控制一LED,要求當秒個位內(nèi)容小于3時點亮,大于等于時熄滅。6.實驗報告要求:a.記錄實驗每一步驟的具體過程及實驗現(xiàn)象。b.敘述實驗步驟中發(fā)揮部分程序的具體構(gòu)思,同時將調(diào)試過程作詳細記錄。c.記錄發(fā)揮部分的完整程序,同時將程序分塊化,并且標注好每部分程序塊功能及關(guān)鍵語句的作用。d.總結(jié)本次實驗知識點及編程調(diào)試心得體會。7.實驗預習思考題:a.定時/計數(shù)器控制字定義。b.中斷服務程序入口地址、中斷斷點及中斷返回。c.單片機定時時長計算方法、間接定時獲取長時間定時方法。六、單片機串行口應用1.實驗目的:a.掌握單片機串行口收發(fā)數(shù)據(jù)的全過程。b.掌握串行口控制寄存器SCON的具體定義;數(shù)據(jù)發(fā)送過程中中斷請求標志位的相應變化;欲發(fā)送的數(shù)據(jù)必須先送入緩沖區(qū)等。c.掌握74LS164芯片的工作原理、連接方法等。2.實驗設備使用:計算機一臺、單片機實驗箱一臺、KeliC軟件一套。3.實驗基本原理:(1)源程序:ORG0000HAJMPMAINORG0030HMAIN:MOVSCON,#00HMOVA,#0FEHCLRTILOOP1:MOVSBUF,ALOOP:JBCTI,NEXTSJMPLOOPNEXT:RRAACALLDELAYSJMPLOOP1DELAY:MOVR6,#200DLP1:MOVR7,#200DLP2:NOPNOPDJNZR7,DLP2DJNZR6,DLP1RETEND(2)電路原理圖:利用C5的74LS164與8個LED相連接,其中74LS164的/CLR接C1的VCC,74LS164的CLK接TXD,74LS164的RXD接DINA。4.實驗內(nèi)容:a.編寫一程序,實現(xiàn)單片機串行口輸出串行信號,經(jīng)串并轉(zhuǎn)換驅(qū)動數(shù)碼管顯示。b.實現(xiàn)兩位秒信息顯示。c.加入判斷語句實現(xiàn)滿足特定條件時執(zhí)行相應操作。5.實驗步驟:(1)基本步驟:(2)發(fā)揮部分:6.實驗報告要求:a.記錄實驗每一步驟的具體過程及實驗現(xiàn)象。b.敘述實驗步驟中發(fā)揮部分程序的具體構(gòu)思,同時將調(diào)試過程作詳細記錄。c.記錄發(fā)揮部分的完整程序,同時將程序分塊化,并且標注好每部分程序塊功能及關(guān)鍵語句的作用。d.總結(jié)本次實驗知識點及編程調(diào)試心得體會。7.實驗預習思考題:a.串行口基本定義;RXD、TXD信號實現(xiàn)串行數(shù)據(jù)發(fā)送。b.串行口控制寄存器SCON具體定義;中斷請求的標志位等。c.74LS164芯片串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)的硬件連接。七、單片機系統(tǒng)設計——秒表設計1.實驗目的及要求:a.能夠系統(tǒng)性地總結(jié)掌握的知識,將單元模塊知識有機的結(jié)合在一起。b.能夠充分協(xié)調(diào)好硬件與軟件之間的相互結(jié)合,合理設計硬件電路。c.掌握單片機匯編語言判斷語句、分支語句以及子程序調(diào)用等編程知識。2.實驗基本原理與功能:利用定時計數(shù)器實現(xiàn)1秒定時,通過LED8*8顯示0-9,實現(xiàn)0-9的倒計時。3.實驗主要技術(shù)指標:(1)實現(xiàn)正確穩(wěn)定地顯示秒的倒計時。(2)通過按鍵分別暫停、開始、清零。4.實驗設計、調(diào)試:(1)根據(jù)動態(tài)掃描電路圖將電路正確連接。(2)根據(jù)動態(tài)掃描原理編寫正確的控制程序。(3)程序運行后如出現(xiàn)閃爍問題應對程序加以調(diào)試并解決該問題。5.設計舉例:設計并調(diào)試一秒表,分別滿足以下設計要求:(1)實現(xiàn)正確穩(wěn)定秒計時,同時數(shù)碼管應無閃爍問題。(2)通過按鍵分別實現(xiàn)秒表的暫停、停止、開始、清零,方便用戶對時間的校準。6.設計性實驗任務或綜合性實驗任務:(1)參考代碼:ORG0000HAJMPMAINORG0030HMAIN:MOVR0,#00HMOVR1,#0FEHMOVR3,#00HMOVR2,#08HMOVR4,#100MOVDPTR,#DISPBITLOOP:MOVA,R3MOVB,#8MULABMOVR5,AMOVR4,#50LOOP2:MOVR0,#00HMOVR1,#0FEHMOVR2,#08HLOOP1:MOVA,R5ADDA,R0MO

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論