單片機實驗總結(jié)辦公文檔_第1頁
單片機實驗總結(jié)辦公文檔_第2頁
單片機實驗總結(jié)辦公文檔_第3頁
單片機實驗總結(jié)辦公文檔_第4頁
單片機實驗總結(jié)辦公文檔_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

lude<intrins.h>#defineucharunsignedchar#defineuint余數(shù)bmova,b//把b的數(shù)給acjnea,#0,L2//比較alude<intrins.h>#defineucharunsignedchar#defineuint余數(shù)bmova,b//把b的數(shù)給acjnea,#0,L2//比較a與0的大小,若不等跳至L2inc5{RI=0;if(SBUF>=0&&SBUF<=9)P0=DSYCODE[SBUF];elseP0=2=1;break;//全滅case'A':LED1=0;LED2=1;break;//LED1亮c計省去1萬字-----最終解釋歸410所有1.試編寫程序。統(tǒng)計片RAM30H~50H單元中FFH的個數(shù),并將統(tǒng)計結(jié)果存51H。向中若不一樣則R0加1(即把R0里的地址加1,R0將指下一個地址)2、從片RAM30H單元開始存放著一組無符號數(shù),其個數(shù)存在21H單元中。試編寫程序,找出其中最小的數(shù),并將其存入20H單元中。把30h賦給R0把R0所指30H中的數(shù)賦給a(a中就是地址30h中的無符號數(shù))加1(即R0將指向下一個地址)把R0所指地址的數(shù)給到地址30h中的數(shù)>30H中的數(shù),則Cy=0;否則相反3、設片外RAM2000H單元中有一個8位二進制數(shù),試編程將該數(shù)的低四位屏蔽');LED1=LED2=1;break;case1:send('A');LED1=~LED1;LElude<intrins.h>#defineucharunsignedchar#defineuint個地址)把R0所指地址的數(shù)給到地址30h中比較');LED1=LED2=1;break;case1:send('A');LED1=~LED1;LElude<intrins.h>#defineucharunsignedchar#defineuint個地址)把R0所指地址的數(shù)給到地址30h中比較a中的數(shù)與地址30h中的數(shù)的大小,若a中的數(shù)>30H中){uchartmp;P1=0xf0;delay(1);tmp=P1^0xf0;switch(tmp4、試編寫程序,求出片RAM20H單元中“1”的個數(shù),并將結(jié)果存入21H單元。的5、試編一程序,分別統(tǒng)計在部RAM的30H~50H單元的數(shù)據(jù)區(qū)中奇數(shù)和偶數(shù)的個數(shù),并將奇數(shù)和偶數(shù)的個數(shù)分別存放在51H和52H單元中。碼,并存入2005H開始的連續(xù)單元中。tch(OperationNo)//根據(jù)操作代碼發(fā)送A/B/C或停止發(fā)送{case0:send('X中斷while(1){DelayMS(100);if(K1==0)//tch(OperationNo)//根據(jù)操作代碼發(fā)送A/B/C或停止發(fā)送{case0:send('X中斷while(1){DelayMS(100);if(K1==0)//按下K1時選擇操作代碼0,1,;SCON=0x40;//串口模式1,允許接收TMOD=0x20;//T1工作模式2PCON=0x0le(1){DelayMS(100);if(K1==0)//按下K1時選擇操作代碼0,1,2,3{wEnd7、參考書中P109頁,編寫C語言和匯編語言的流水燈程序{}{{{}}}{ayms(300);}}}使用89C51的P1連接到8ayms(300);}}}使用89C51的P1連接到8顆LED,使用外部中斷方式,程序執(zhí)行時,當用戶}1按鍵顯示相應的數(shù)(數(shù)碼管)#include<reg51.h>#defineuintunsignele(1){DelayMS(100);if(K1==0)//按下K1時選擇操作代碼0,1,2,3{wp//R1減一,程序跳至loop繼續(xù)執(zhí)行,循環(huán)直至R1減到0mov20h,a//把a中的數(shù)賦到地址2}{{}}{EX0=1;EA=1;{{}}}{{,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//延時voidDelay0c);delayms(5);}voidmain(){e=0;init();wr(0x){uchartmp;P1=0xf0;delay(1);tmp=P1^0xf0;switch(tmp(1);for(;time>0;time--){for(j=0;j<120;j++);}}voidm,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//延時voidDelay0c);delayms(5);}voidmain(){e=0;init();wr(0x){uchartmp;P1=0xf0;delay(1);tmp=P1^0xf0;switch(tmp(1);for(;time>0;time--){for(j=0;j<120;j++);}}voidm}}{EX0=1;EA=1;}}{{}}{SCON=0x10;{P0=SBUF;P0=SBUF;}}//全滅case'A':LED1=0;LED2=1;break;//LED1case'B':LED22h//若相等地址52h中的數(shù)加一//全滅case'A':LED1=0;LED2=1;break;//LED1case'B':LED22h//若相等地址52h中的數(shù)加一jmpL3//跳至L3L2:inc51h//地址51h中的數(shù)加一L1甲機通過串口控制乙機LED閃爍甲機:#include<reg51.h>#defineucharun;SCON=0x40;//串口模式1,允許接收TMOD=0x20;//T1工作模式2PCON=0x0{{}}{SCON=0;{}}{}{,則程序跳至loop若Cy等于1,則地址21h中的數(shù)加1減,則程序跳至loop若Cy等于1,則地址21h中的數(shù)加1減1,程序跳至lop執(zhí)行直至R2=0,才執(zhí)行下面的end試編一程序,分別統(tǒng)計在部RAM的30H~50H單元的數(shù)據(jù)區(qū)中奇數(shù)和偶數(shù)的個數(shù),并將奇數(shù)和p繼續(xù)執(zhí)行mova,r0//把R0所指地址中的數(shù)給a,即把最小數(shù)賦給了alop:djnzr1,loo^7;ucharcodetable[]={"."};voiddelayms(t{}{}}{{{P0=DSY_CODE[no+1];}}}{}=0;LED1=1;break;//LED2case'C':LED1=LED2=0;//全亮}}}1NT0引腳有低電位的脈沖出現(xiàn)時,8個=0;LED1=1;break;//LED2case'C':LED1=LED2=0;//全亮}}}1NT0引腳有低電位的脈沖出現(xiàn)時,8個LED會一閃一滅4次。#include<reg51.h>#inctch(OperationNo)//根據(jù)操作代碼發(fā)送A/B/C或停止發(fā)送{case0:send('Xayms(300);}}}使用89C51的P1連接到8顆LED,使用外部中斷方式,程序執(zhí)行時,當用戶{{}}14、甲機通過串口控制乙機LED閃爍{}{SBUF=c;}{LED1=LED2=1;-)for(i=0;i<120;i++);}........//主程序voidmain(){LED1}}voidmain(){P0=0x00;while(1){P1=0xf0;if(P1!=0xf0)H1=0xfd;//波特率9600TL1=0xfd;PCON=0x00;//-)for(i=0;i<120;i++);}........//主程序voidmain(){LED1}}voidmain(){P0=0x00;while(1){P1=0xf0;if(P1!=0xf0)H1=0xfd;//波特率9600TL1=0xfd;PCON=0x00;//波特率不倍增RI=0;TarNumX=-1;//延時voidDelayMS(uintms){uchari;while(ms-{{{LED1=LED2=1;LED1=~LED1;LED2=1;LED2=~LED2;LED1=1;LED1=~LED1;LED2=LED1;}}}}ucharNumX=-1;{}H單元中“1”的個數(shù),并將結(jié)果存入21H單元。mov21h,#0h//movr2,#08h//movH單元中“1”的個數(shù),并將結(jié)果存入21H單元。mov21h,#0h//movr2,#08h//mov數(shù)等待end從片RAM30H單元開始存放著一組無符號數(shù),其個數(shù)存在21H單元中。試編寫程序,找出其中rt('B');LED2=~LED2;LED1=1;break;case3:PutctoSerial倍增RI=TI=0;........TR1=1;IE=0x90;while(1){DelayMS(1{LED1=LED2=1;{{{}}}}{key();if(Pre!=no){P0=DSYCODE[no+1];Pre=no;}delay(10);TI=0;}//主程序voidmain(){LED1=LED2=1;P0=0x00;SCON=UF)//根據(jù)所收到的不同命令字符完成不同動作{case'X':LED1=LED2=1;break;key();if(Pre!=no){P0=DSYCODE[no+1];Pre=no;}delay(10);TI=0;}//主程序voidmain(){LED1=LED2=1;P0=0x00;SCON=UF)//根據(jù)所收到的不同命令字符完成不同動作{case'X':LED1=LED2=1;break;hile(1){P1=0xfe;for(i=0;i<8;i++){P1=crol(P1,1);del}{SBUF=c;}{LED1=LED2=1;{{{LED1=LED2=1;LED1=~LED1;LED2=1;LED2=~LED2;LED1=1;2:no+=0;break;case4:no+=4;break;case8:no+=8;break;下面的end試編一程序,分別統(tǒng)計在部RAM的30H~50H2:no+=0;break;case4:no+=4;break;case8:no+=8;break;下面的end試編一程序,分別統(tǒng)計在部RAM的30H~50H單元的數(shù)據(jù)區(qū)中奇數(shù)和偶數(shù)的個數(shù),并將奇數(shù)和r#defineuintunsignedintsbitLED1=P1^0;sbitLED2=P1^3中斷while(1){DelayMS(100);if(K1==0)//按下K1時選擇操作代碼0,1,LED1=~LED1;LED2=LED1;}}}}{{if(SBUF>=0&&SBUF<=9)P0=DSY_CODE[SBUF];}}ucharNumX=-1;{}{LED1=LED2=1;a,20h//lop:rlca//jncloop//inc21h//loop:djnzr2,lop/gnedintsbitLED1=P0^0;sbitLED2=P0^3;sbitK2=P1^0;uchintdataa=1;SCON=0;clk=1;while(1){unsignedintj;SBUFPort('C');LED1=~LED1;LED2=LED1;break;}}}}乙機:#inclua,20h//lop:rlca//jncloop//inc21h//loop:djnzr2,lop/gnedintsbitLED1=P0^0;sbitLED2=P0^3;sbitK2=P1^0;uchintdataa=1;SCON=0;clk=1;while(1){unsignedintj;SBUFPort('C');LED1=~LED1;LED2=LED1;break;}}}}乙機:#inclu{{NumX=++NumX%11;生0~10圍的數(shù)字,其中10表示關閉SBUF=NumX;}}}{{{}}}16、LCD顯示{}亮亮ayms(300);}}}使用89C51的P1連接到8ayms(300);}}}使用89C51的P1連接到8顆LED,使用外部中斷方式,程序執(zhí)行時,當用戶n(){LED1=LED2=1;SCON=0x50;//串口模式1,允許接收TMOD=0x20;//k;}}}}//甲機串口接收中斷函數(shù)voidSerialINT()interrupt4{if(RI)');LED1=LED2=1;break;case1:send('A');LED1=~LED1;LE{}{}{{}}{}{20;i++);}//向串口

溫馨提示

  • 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

提交評論