安徽大學(xué)歷次單片機(jī)實(shí)驗(yàn)報(bào)告_第1頁(yè)
安徽大學(xué)歷次單片機(jī)實(shí)驗(yàn)報(bào)告_第2頁(yè)
安徽大學(xué)歷次單片機(jī)實(shí)驗(yàn)報(bào)告_第3頁(yè)
安徽大學(xué)歷次單片機(jī)實(shí)驗(yàn)報(bào)告_第4頁(yè)
安徽大學(xué)歷次單片機(jī)實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)實(shí)驗(yàn)報(bào)告學(xué)號(hào):姓名:一、實(shí)驗(yàn)?zāi)康模? .實(shí)驗(yàn)一的目的:掌握匯編語(yǔ)言設(shè)計(jì)和調(diào)試方法,熟悉鍵盤(pán)操作;2 .實(shí)驗(yàn)二的目的:掌握匯編語(yǔ)言設(shè)計(jì)和調(diào)試方法;3 .實(shí)驗(yàn)三的目的:進(jìn)一步掌握匯編語(yǔ)言設(shè)計(jì)和調(diào)試方法。二、實(shí)驗(yàn)設(shè)備:裝有KeiluVision的計(jì)算機(jī)1臺(tái)(本人用的是裝有KeiluVision2的計(jì)算機(jī))三、實(shí)驗(yàn)內(nèi)容:實(shí)驗(yàn)一清零程序1 .實(shí)驗(yàn)內(nèi)容:把2000HH20FFH的內(nèi)容清零2 .我的流程圖、源程序及調(diào)試結(jié)果:流程圖(用EdrawMindMap7.8制作):DPTR=2000HRO=OFFHDPTR=0FFHDPTR=DPTR+1RO=RO-1End源程序:ORG0000HLJMPSTA

2、RTORG0100HSTART:MOVR0,#0FFHMOVDPTR,#2000HMOVA,#00HMAIN:MOVXDPTR,AINCDPTRDJNZR0,MAINSJMP$END調(diào)試結(jié)果:將源程序中的MOVA,#00H為MOVA,#0FFH以便觀察上述程序是否能夠?qū)崿F(xiàn)清零功能。dres:x:020ooh-.X:c013200(J:FFFFFFFFFFFFFFFFFFFFX:ch.no匚iLiCCd4門(mén)LiLlOLiC門(mén)亦一一二卜Memory火麟mo丁#2入Mwmcxy的入Mwrcry蝴/實(shí)驗(yàn)三拼字程序1.實(shí)驗(yàn)內(nèi)容:把2000H2001H的低位分別送入2002H高低位,一般本程序用于把顯示緩

3、沖區(qū)的數(shù)據(jù)取出拼裝成一字節(jié)。2.我的流程圖、源程序及調(diào)試結(jié)果:流程圖(用EdrawMindMap7.8制作):給2000H斌一個(gè) 值,并將其高位清 零再交換高低位后 保存在R0中給2001H賦一個(gè) 值,并將其高位清 零后保存在A中執(zhí)行ANL AR0后將A中的值聯(lián)給02H源程序:ORG0000HLJMPSTARTORG0100HSTART:MOVDPTR,#2000HMOVA,#0B2H給累加器A賦一個(gè)值MOVXDPTR,A;ANLA,#0FHSWAPA將累加器A中的內(nèi)容作為2000H的內(nèi)容MOVR0,AINCDPTRMOVA,#0E5HMOVXDPTR,A;ANLA,#0FHORLA,R0IN

4、CDPTRMOVXDPTR,ASJMP$END給累加器將累加器A賦一個(gè)值A(chǔ)中的內(nèi)容作為2001H的內(nèi)容調(diào)試結(jié)果:address:|i:02000kX:0x002000:B2E525000000000000000000X:0x002D0C:000000000000000000000000X:0k002Q18:00000000000000000000000X:0x002024:000000000000000000000000k:0x002030:000000000000000000000000X:Ok00203C:000000000000000000000000v.門(mén)nnn/io.nnnnnnnn

5、nnnHinnnnJemury廿1A廿號(hào)優(yōu)叮四、實(shí)驗(yàn)小結(jié)此次實(shí)驗(yàn)讓我基本掌握了MOVXSWA這兩條從未用過(guò)的指令的用法,理解了地址高位與低位的含義,16位地址與8位地址的記法,DPTR乍為地址指針的重要作用,并讓我注意到了DEC!匕INC少一種用法,即有INCDPTR卻沒(méi)有DECDPTR第二次單片機(jī)實(shí)驗(yàn)報(bào)告學(xué)號(hào):姓名:一、實(shí)驗(yàn)?zāi)康模?1)學(xué)習(xí)P1口的使用方法;(2)學(xué)習(xí)延時(shí)子程序的編寫(xiě)。二、實(shí)驗(yàn)必備知識(shí):(1) P1口為準(zhǔn)雙向口,每一位都可獨(dú)立地定義為輸入或輸出,在作輸入線使用前,必須向鎖存器相應(yīng)位寫(xiě)入“1”,該位才能作為輸入。(2)本實(shí)驗(yàn)中延時(shí)子程序采用指令循環(huán)來(lái)實(shí)現(xiàn)。三、實(shí)驗(yàn)設(shè)備:裝有Ke

6、iluVision和STC_ISP的計(jì)算機(jī)1臺(tái)單片機(jī)芯片1片單片機(jī)綜合實(shí)驗(yàn)箱1個(gè)杜邦線若干四、實(shí)驗(yàn)內(nèi)容:P1口輸出口,接八只發(fā)光二極管,編寫(xiě)程序,使發(fā)光二極管循環(huán)點(diǎn)亮。五、我的電路原理圖、流程圖及源程序:1 .電路原理圖:因?yàn)闆](méi)有用實(shí)驗(yàn)室的設(shè)備完成實(shí)驗(yàn),所以我用的是自己的計(jì)算機(jī)和單片機(jī)完成實(shí)驗(yàn)的。其起作用的部分的電路圖如下圖用(Proteus7.8繪制)所示:叩叩十中叩卜叩卜叩十十十十口后nd圖9mdEsmdOSLLM-普EdIglN后南dOXULcndoxina9wed寸WzdELWSZdelwrjd二國(guó)EEdcl-WZNdWNdsa茍;od9左Eddwowsdd寸至?odEowmddg皂E

7、odLchndd曷sHdIsa91K-T/lxnD1LED-TEXT4D2D3R1260R2280R3LED*vTEXTmTEXI巨D(zhuǎn)4LED-RLED*TEXTAD5LED-D6D7D8LEDuTEXTnLEEREDwTEKlk.R4R5R6R7R8280TEXT280mTEX28。2sohTEX2.流程圖(用EdrawMindMap7.8制作):280TEXTs260+5開(kāi)始3.源程序:ORG0000HMOVA,#01111111BJMPSTARTORG0100HSTART:MOVP1,ACALLDEL100msRRA;將A中的內(nèi)容右移一位,相應(yīng)地,發(fā)光二極管中低電平所處位置左移一位JMP

8、STARTDEL100ms:MOVR7,#250DEL1:MOVR6,#200DEL2:DJNZR6,DEL2DJNZR7,DEL1RETEND六、思考:1 .改變延時(shí)常數(shù),使發(fā)光二極管閃亮?xí)r間改變。答:如下兩圖所示,將晶振頻率和時(shí)鐘頻率均選為12MHz則一個(gè)機(jī)器周期為1us,執(zhí)行一條DJN力旨令需要兩個(gè)機(jī)器周期,即2us.用R&R7分別表示其各自存儲(chǔ)的立即數(shù),則上述DEL100ms勺延時(shí)子程序所延長(zhǎng)的時(shí)間T=2*R&R7us,故改變R&R7中存儲(chǔ)的立即數(shù)即可改變延時(shí)子程序延長(zhǎng)的時(shí)間,從而使發(fā)光二極管閃亮?xí)r間改變。如:將DEL100ms勺延時(shí)子程序中的MOVR7,#25政為MOVR7,#125

9、貝UDEL100ms勺延時(shí)子程序延時(shí)的時(shí)間變?yōu)樵瓉?lái)100ms的一半,即50ms.但立即數(shù)的大小有范圍,對(duì)于8位單片機(jī)而言,其大小不能超過(guò)256,所以若想延長(zhǎng)更長(zhǎng)的時(shí)間,需要在延時(shí)程序中多加幾個(gè)循環(huán),或同時(shí)調(diào)用多個(gè)延時(shí)子程序。OptionsforTargetTargetVDeviceTargetOutputListing|C51|ASI|BL51LocateBL51Mise|DebugUtilitiesAtmelAT89C51Xtal(MHz):I?,。廠UseOn-chipROM(OxO-OxFFFMemoryModel:|Small:variablesinDATA三KeiluVision2中

10、的選項(xiàng)對(duì)話框闞笫輯元件兀件參考回|U1隱藏r元件值M:AT8SC51隱藏:rPCB Package:河口Program File:Documents of 51VL卅酬| Hide AlClock Frequency:12MHzHkieAII 二Advanced Praperties:Proteus7.8中的選項(xiàng)對(duì)話框2 .修改程序,使發(fā)光二極管閃亮移位方向改變。答:將上述源程序中的RRA改為RLA則可將發(fā)光燈泡流動(dòng)的方向由向左改為向右第三次單片機(jī)實(shí)驗(yàn)報(bào)告學(xué)號(hào):姓名:一、實(shí)驗(yàn)?zāi)康模赫莆展I(yè)順序控制程序的簡(jiǎn)單編程,中斷的使用。二、實(shí)驗(yàn)預(yù)備知識(shí):在工業(yè)控制中,象沖壓、注塑、輕紡、制瓶等生產(chǎn)過(guò)程,都

11、是一些繼續(xù)生產(chǎn)過(guò)程,按某種順序有規(guī)律地完成預(yù)定的動(dòng)作,對(duì)這類繼續(xù)生產(chǎn)過(guò)程的控制稱順序控制,象注塑機(jī)工藝過(guò)程大致按“合模-注射-延時(shí)-開(kāi)模-產(chǎn)伸一產(chǎn)退”順序動(dòng)作,用單片機(jī)最易實(shí)現(xiàn)。三、實(shí)驗(yàn)設(shè)備:裝有KeiluVision和STC_ISP的計(jì)算機(jī)1臺(tái)單片機(jī)芯片1片單片機(jī)綜合實(shí)驗(yàn)箱1個(gè)杜邦線若干四、實(shí)驗(yàn)內(nèi)容:由P1.01.6控制注塑機(jī)的七道工序,現(xiàn)模擬控制七只發(fā)光二極的點(diǎn)亮,設(shè)定每道工序時(shí)間轉(zhuǎn)換為延時(shí),P3.4為開(kāi)工啟動(dòng)開(kāi)關(guān),低脈沖有效。INT1為外部故障輸入模擬,低電平報(bào)警。P1.7為報(bào)警聲音輸出。(可設(shè)置聲光報(bào)警)五、我的電路原理圖、流程圖及源程序:1 .電路原理圖:因?yàn)闆](méi)有用實(shí)驗(yàn)室的設(shè)備完成實(shí)

12、驗(yàn),所以我用的是自己的計(jì)算機(jī)和單片機(jī)完成實(shí)驗(yàn)的。現(xiàn)在根據(jù)題意用Proteus7.8仿真如下,其中,AT89C51的晶振已設(shè)置為12MHz蜂鳴器的驅(qū)動(dòng)電壓已改為較低的1V,蜂鳴器的低電平端接紅色超亮發(fā)光二級(jí)光的正極:IS23XTAL1pomooXTAL2RSTPSENALEEAP1HP1.1P12PljPMPUSP1PITIPDLWD1P口詡UHpujwmPEL陽(yáng)D*PDSftDSP口-優(yōu)PO.7AD7P2IM唱PW1櫛P(pán)22M0P2311P2.UW12P2j513P2JS1iP2.7ffi15P3IM1XDP3.1HXD畤麗rrP3HH3Er圖一原理圖參輯元件幾件參考0:元件值M:BUZZ隱藏

13、:rr確定回BUZZER幫助舊LISAModelFile:BUZZERHideAll助消OperatingValtage:LoadResistance:Frequency:AdvarcedProperties:1,HideAll(12HideAll-三500Hz|HideAllSampleRate;J44100HideAllOtherProperties:圖二蜂鳴器的參數(shù)2.流程圖(用EdrawMindMap7.8制作)主程序中斷艱務(wù)子名字開(kāi)始保護(hù)現(xiàn)場(chǎng)P1口初始化預(yù)警并中斷工序恢復(fù)現(xiàn)場(chǎng)工序1廷時(shí)返回工序3廷時(shí)工序4廷時(shí)工序5延時(shí)工序6廷時(shí)工字7廷時(shí)等待中斷3.源程序:(1)仿真時(shí)用的程序,其原

14、理圖如圖一所示:ORG0000HJMPSTARTORG0013HJMPINT1ORG0100HJMPLIGHTSTART:MOVA,#0FEHMOVR0,#7HSETBIT0SETBEX1SETBEAMOVR1,#1HHERE: JB P3.4,HERE ;LIGHT: MOV P1,A保證只有開(kāi)工啟動(dòng)開(kāi)關(guān)按下時(shí)才執(zhí)行后續(xù)程序按鍵按下開(kāi)始工序CALLDELRLADJNZR0,LIGHTMOVP1,#0FFHJMP $INT 1: PUSH PSW等待中斷中斷工序并聲光報(bào)警PUSHACCMOVP1,#7FHPOPACCPOPPSWRETIDEL: MOV R7,#25延時(shí)1sDEL1:MOVR6

15、,#200DEL2:MOVR5,#100DEL3:DJNZR5,DEL3DJNZR6,DEL2DJNZR7,DEL1RETEND(2)做實(shí)驗(yàn)時(shí)用的程序(此程序是在以前寫(xiě)作業(yè)和自己訓(xùn)練時(shí)編寫(xiě)的程序上改編而成,因而不太簡(jiǎn)潔),其原理圖未畫(huà)出,但注釋中已解釋得很明白:ORG0000HJMPSTARTORG0013HJMPKEY1ORG0100HJMPMAINSTART:SETBIT0SETBEX1SETBEAMOVA,#0FEHHERE:JBP3.4,HERE;保證只有開(kāi)工啟動(dòng)開(kāi)關(guān)按下時(shí)才執(zhí)行后續(xù)程序MOVR3,#7HMAIN:MOVR1,#248;可與下一條語(yǔ)句及延時(shí)程序搭配,使2ms的延時(shí)程序變

16、為延時(shí)1s的程序MOVR2,#2LIGHT:MOVP1,A;按鍵按下開(kāi)始工序CALLDELDJNZR1,LIGHTMOVR1,#248DJNZR2,LIGHTRLADJNZR3,MAINMOVP1,#0FFHJMP$;等待中斷PUSH ACCMOV P1,#7FHCLR P2.3POP ACCKEY1:PUSHPSW中斷工序,光報(bào)警,我用的單片機(jī)的P1口全都接了發(fā)光二極管聲報(bào)警。我用白單片機(jī)的P2.3接的是蜂鳴器,低電平有效POPPSWRETIDEL:MOVR7,#25;延時(shí)2msDEL1:MOVR6,#40DEL2:DJNZR6,DEL2DJNZR7,DEL1RETEND六、思考:若報(bào)警解除后,工序需從頭開(kāi)始等待開(kāi)機(jī)信號(hào),如何編程?答:加一個(gè)標(biāo)志來(lái)表明是否是剛從中斷中退出來(lái),然后設(shè)置一個(gè)分支程序即可(由于RETI不同于RET所以沒(méi)有簡(jiǎn)單地將RETI換成相應(yīng)的JMN旨令跳轉(zhuǎn)到程序的起始處)如下(在仿真時(shí)用的程序上加了三條指令):ORG0000HJMPSTARTORG0013HJMPINT_1ORG0100HJMPLIGHTSTART:MOVA,#0FEHMOVR0,#7HSETBIT0SETBEX1SETBEAMOVR

溫馨提示

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

評(píng)論

0/150

提交評(píng)論