![單片機原理及應用實驗報告_第1頁](http://file4.renrendoc.com/view/dd08f4c554eb9b50790eb62c55a3005a/dd08f4c554eb9b50790eb62c55a3005a1.gif)
![單片機原理及應用實驗報告_第2頁](http://file4.renrendoc.com/view/dd08f4c554eb9b50790eb62c55a3005a/dd08f4c554eb9b50790eb62c55a3005a2.gif)
![單片機原理及應用實驗報告_第3頁](http://file4.renrendoc.com/view/dd08f4c554eb9b50790eb62c55a3005a/dd08f4c554eb9b50790eb62c55a3005a3.gif)
![單片機原理及應用實驗報告_第4頁](http://file4.renrendoc.com/view/dd08f4c554eb9b50790eb62c55a3005a/dd08f4c554eb9b50790eb62c55a3005a4.gif)
![單片機原理及應用實驗報告_第5頁](http://file4.renrendoc.com/view/dd08f4c554eb9b50790eb62c55a3005a/dd08f4c554eb9b50790eb62c55a3005a5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
單片機原理及應用實驗報告.z.《單片機原理及應用》實驗報告2017/2018學年第1學期系別計算機學院專業(yè)軟件工程班級17軟件工程班**********8888888888單片機原理及應用實驗報告全文共56頁,當前為第1頁。授課老師******單片機原理及應用實驗報告全文共56頁,當前為第1頁。.z.實驗一:流水燈實驗1.實驗目的(1)學習編譯和仿真環(huán)境使用(2)學習P3口的使用方法(3)學習延時子程序的編寫2實驗內容(1)通過對P3口地址的操作控制8位LED流水點亮,從而認識單片機的接口;(2)通過改變并行口輸出電平控制LED燈的點亮與否,通過延時程序控制亮燈時間。3.實驗運行結果圖4.源代碼//流水燈實驗#include<reg51.h>//包含單片機寄存器的頭文件sfr*=0*b0;//P3口在存儲器中的地址是b0H,通過sfr可定義8051內核單片機//的所有內部8位特殊功能寄存器,對地址*的操作也就是對P1口的操作/****************************************函數功能:延時一段時間*****************************************/voiddelay(void)單片機原理及應用實驗報告全文共56頁,當前為第2頁。{單片機原理及應用實驗報告全文共56頁,當前為第2頁。 unsignedchari,j; for(i=0;i<255i++) for(j=0;j<255j++) ;//利用循環(huán)等待若干機器周期,從而延時一段時間}/*****************************************函數功能:主函數******************************************/voidmain(void){while(1) {*=0*fe;//第一個燈亮 delay();//調用延時函數 *=0*fd;//第二個燈亮 delay();//調用延時函數*=0*fb;//第三個燈亮 delay();//調用延時函數*=0*f7;//第四個燈亮 delay();//調用延時函數*=0*ef;//第五個燈亮單片機原理及應用實驗報告全文共56頁,當前為第3頁。 delay();//調用延時函數單片機原理及應用實驗報告全文共56頁,當前為第3頁。*=0*df;//第六個燈亮 delay();//調用延時函數*=0*bf;//第七個燈亮 delay();//調用延時函數*=0*7f;//第八個燈亮 delay();//調用延時函數 }單片機原理及應用實驗報告全文共56頁,當前為第4頁。}單片機原理及應用實驗報告全文共56頁,當前為第4頁。.z.實驗二:中斷實驗1.實驗目的(1)熟悉51單片機中斷初始化編程方法。(2)掌握51單片機外部中斷源的設計使用。(3)中斷處理應用程序的設計與調試技巧。2.實驗內容通過對P3.2、P3.3引腳的電平控制,實現外部中斷處理,從而控制輸出口P1的輸出效果變化。3.實驗運行結果圖4.源代碼/用外中斷0的中斷方式進行數據采集和處理#include<reg51.h>//包含51單片機寄存器定義的頭文件sbitS=P3^2;//將S位定義為P3.2,/*******************************************函數功能:主函數******************************************/ voidmain(void){EA=1;//開放總中斷E*0=1;//允許使用外中斷IT0=1;//選擇負跳變來觸發(fā)外中斷單片機原理及應用實驗報告全文共56頁,當前為第5頁。P1=0*ff;單片機原理及應用實驗報告全文共56頁,當前為第5頁。 while(1);//無限循環(huán),防止程序跑飛}/**************************************************************函數功能:外中斷T0的中斷服務程序**************************************************************/voidint0(void)interrupt0using0//外中斷0的中斷編號為0{P1=~P1;//每產生一次中斷請求,P1取反一次。}//用外中斷0的中斷方式進行數據采集和處理#include<reg51.h>//包含51單片機寄存器定義的頭文件#defineucharunsignedcharvoidDelay(unsignedinti){ ucharj; for(;i>0;i--) for(j=0;j<125;j++) {;}}//sbitS=P3^2;//將S位定義為P3.2,單片機原理及應用實驗報告全文共56頁,當前為第6頁。/*******************************************單片機原理及應用實驗報告全文共56頁,當前為第6頁。函數功能:主函數******************************************/ voidmain(void){ uchardisplay[9]={0*ff,0*fe,0*fd,0*fb,0*f7,0*ef,0*df,0*bf,0*7f}; unsignedinta; while(1){ EA=1;//開放總中斷 E*0=1;//允許使用外中斷E*1=1; IT0=1;//選擇負跳變來觸發(fā)外中斷IT1=1; IP=0; for(a=0;a<9;a++){ Delay(500); P1=display[a]; } }}/**************************************************************函數功能:外中斷T0的中斷服務程序單片機原理及應用實驗報告全文共56頁,當前為第7頁。**************************************************************/單片機原理及應用實驗報告全文共56頁,當前為第7頁。voidint0_isr(void)interrupt0using1//外中斷0的中斷編號為1{ucharn;for(n=0;n<10;n++){ p1=0*0f; Delay(500); P1=0*f0; Delay(500);}}voidint1_isr(void)interrupt2using2{ ucharn; for(n=0;n<10;n++){ p1=0*ff; Delay(500); P1=0; Delay(500); }單片機原理及應用實驗報告全文共56頁,當前為第8頁。}單片機原理及應用實驗報告全文共56頁,當前為第8頁。.z.實驗三:定時器/計數器實驗1.實驗目的(1)熟悉51單片機中斷初始化編程方法(2)熟悉51單片機定時計數器的初始化編程方法(3)掌握定時計數器的應用2.實驗內容通過使用定時器T0的中斷來控制P2.0引腳的的LED的燈閃爍,要求閃爍時間2S,既亮1S,滅1S。3.實驗運行結果圖4.源代碼#include<reg51.h>//包含51單片機寄存器定義的頭文件sbitD1=P1^4;//將D1位定義為P1.4引腳unsignedcharCountor;//設置全局變量,儲存定時器T0中斷次數/**************************************************************函數功能:主函數**************************************************************/voidmain(void){EA=1;//開總中斷ET0=1;//定時器T0中斷允許 TMOD=0*01;//使用定時器T0的模式2單片機原理及應用實驗報告全文共56頁,當前為第9頁。 TH0=(65536-15536)/256;//定時器T0的高8位賦初值單片機原理及應用實驗報告全文共56頁,當前為第9頁。TL0=(65536-15536)%256;//定時器T0的高8位賦初值TR0=1;//啟動定時器T0 Countor=0;//從0開始累計中斷次數while(1)//無限循環(huán)等待中斷;}/**************************************************************函數功能:定時器T0的中斷服務程序**************************************************************/voidTime0(void)interrupt1using0//"interrupt"聲明函數為中斷服務函數//其后的1為定時器T0的中斷編號;0表示使用第0組工作寄存器{Countor++;//中斷次數自加1 if(Countor==20)//若累計滿20次,即計時滿1s { D1=~D1;//按位取反操作,將P2.0引腳輸出電平取反Countor=0;//將Countor清0,重新從0開始計數 } TH0=(65536-15536)/256;//定時器T0的高8位重新賦初值TL0=(65536-15536)%256;//定時器T0的高8位重新賦初值單片機原理及應用實驗報告全文共56頁,當前為第10頁。}單片機原理及應用實驗報告全文共56頁,當前為第10頁。.z.實驗四:串行口實驗1.實驗目的(1)掌握單片機的串行口的工作原理(2)掌握單片機串行口收發(fā)數據的方法2.實驗內容本實驗要求單片機U1通過其串行口T*D向單片機U2發(fā)送數據。單片機U1的P1口接8個開關,U2的P1口接8個發(fā)光二極管。U1設置為只能發(fā)送不能接收,U1讀入P1口的8個開關狀態(tài)后,通過串行口發(fā)送到U2,U2將接收到的數據送入P1口,由P1口上連接的8個發(fā)光二極管顯示8個開關的狀態(tài)。3.實驗運行結果圖4.源代碼/*********發(fā)送單片機的發(fā)送程序***********/#include<reg51.h>//包含寄存器的頭文件/*********向PC發(fā)送一個字節(jié)數據**************/voidSend(unsignedchardate){SBUF=date;while(TI==0);TI=0;}/*********延時約150ms*********/單片機原理及應用實驗報告全文共56頁,當前為第11頁。voiddelay(void)單片機原理及應用實驗報告全文共56頁,當前為第11頁。{unsignedcharm,n; for(m=0;m<200;m++) for(n=0;n<250;n++) ;}/*******函數功能:主函數*********/voidmain(void){unsignedchartemp;TMOD=0*20;//定時器T1工作于方式2SCON=0*40;//串口工作方式1PCON=0*00;//波特率9600TH1=0*fd;//根據規(guī)定給定時器T1賦初值TL1=0*fd;//根據規(guī)定給定時器T1賦初值TR1=1;//啟動定時器T1P1=0*ff; //讀取P1端口數據while(1){ temp=P1; Send(temp);//發(fā)送數據i單片機原理及應用實驗報告全文共56頁,當前為第12頁。 delay();//50ms發(fā)送一次檢測數據單片機原理及應用實驗報告全文共56頁,當前為第12頁。}}/**********接收單片機的接收程序***********/#include<reg51.h>//包含單片機寄存器的頭文件/**接收一個字節(jié)數據******/unsignedcharReceive(void){unsignedchardate;while(RI==0);//只要接收中斷標志位RI沒有被置“1”//等待,直至接收完畢(RI=1)RI=0;//為了接收下一幀數據,需將RI清0date=SBUF;//將接收緩沖器中的數據存于datreturndate;}/*****主函數*******/voidmain(void){TMOD=0*20;//定時器T1工作于方式2SCON=0*50;//SCON=01010000B,串口工作方式1,REN=1PCON=0*00;//PCON=00000000B,波特率9600TH1=0*fd;//根據規(guī)定給定時器T1賦初值單片機原理及應用實驗報告全文共56頁,當前為第13頁。TL1=0*fd;//根據規(guī)定給定時器T1賦初值單片機原理及應用實驗報告全文共56頁,當前為第13頁。TR1=1;//啟動定時器T1REN=1;//允許接收while(1){ P1=Receive();//將接收到的數據送P1口顯示}單片機原理及應用實驗報告全文共56頁,當前為第14頁。}單片機原理及應用實驗報告全文共56頁,當前為第14頁。.z.實驗五:輸入接口實驗1.實驗目的(1)掌握共陰極、共陽極LED的使用方法(2)掌握矩陣鍵盤輸入掃描和識別程序編寫2.實驗內容設計一個4*4的矩陣鍵盤,鍵盤的0~15,要求編寫出一個鍵盤輸入掃描程序,要求單片機能根據鍵盤排列順序,能將按下去鍵盤號正確識別出來,并采用兩個數碼管分別鍵盤的個位和十位。3.實驗運行結果圖4.源代碼#include<reg51.h>//包含51單片機寄存器定義的頭文件sbitP14=P1^4;sbitP15=P1^5;sbitP16=P1^6;sbitP17=P1^7;unsignedcharcodeTab[]={0*c0,0*f9,0*a4,0*b0,0*99,0*92,0*82,0*f8,0*80,0*90};//數字0~9的段碼unsignedcharkeyval;/**************************************************************函數功能:數碼管動態(tài)掃描延時**************************************************************/單片機原理及應用實驗報告全文共56頁,當前為第15頁。voidled_delay(void)單片機原理及應用實驗報告全文共56頁,當前為第15頁。{unsignedcharj; for(j=0;j<200;j++) ;}/**************************************************************函數功能:按鍵值的數碼管顯示子程序**************************************************************/voiddisplay(unsignedchark){P2=0*bf;P0=Tab[k/10];led_delay();P2=0*7f;P0=Tab[k%10]; led_delay();}/**************************************************************函數功能:軟件延時子程序**************************************************************/voiddelay20ms(void)單片機原理及應用實驗報告全文共56頁,當前為第16頁。{單片機原理及應用實驗報告全文共56頁,當前為第16頁。unsignedchari,j; for(i=0;i<100;i++) for(j=0;j<60;j++);}/**************************************************************函數功能:主函數**************************************************************/voidmain(void){EA=1; ET0=1; TMOD=0*01; TH0=(65536-500)/256; TL0=(65536-500)%256; TR0=1; keyval=0*00; while(1) { display(keyval); }單片機原理及應用實驗報告全文共56頁,當前為第17頁。}單片機原理及應用實驗報告全文共56頁,當前為第17頁。/**************************************************************函數功能:定時器0的中斷服務子程序,進行鍵盤掃描,判斷鍵位**************************************************************/voidtime0_interserve(void)interrupt1using1{TR0=0;P1=0*f0; if((P1&0*f0)!=0*f0) delay20ms(); if((P1&0*f0)!=0*f0) { P1=0*fe; if(P14==0)keyval=1;if(P15==0)keyval=2;if(P16==0)keyval=3;if(P17==0)keyval=4;P1=0*fd;單片機原理及應用實驗報告全文共56頁,當前為第18頁。 if(P14==0)單片機原理及應用實驗報告全文共56頁,當前為第18頁。keyval=5;if(P15==0)keyval=6;if(P16==0)keyval=7;if(P17==0)keyval=8;P1=0*fb; if(P14==0)keyval=9;if(P15==0)keyval=10;if(P16==0)keyval=11;if(P17==0)keyval=12;P1=0*f7; if(P14==0)keyval=13;if(P15==0)keyval=14;單片機原理及應用實驗報告全文共56頁,當前為第19頁。if(P16==0)單片機原理及應用實驗報告全文共56頁,當前為第19頁。keyval=15;if(P17==0)keyval=16;}TR0=1;TH0=(65536-500)/256; TL0=(65536-500)%256; 單片機原理及應用實驗報告全文共56頁,當前為第20頁。}單片機原理及應用實驗報告全文共56頁,當前為第20頁。.z.實驗六:LCD循環(huán)顯示實驗1.實驗目的(1)掌握單片機驅動顯示屏的方法(2)掌握LCD1602的使用方法2.實驗內容采用1602型LCD循環(huán)顯示字符串“WeletoHeifeiNormalUniversity”。其中LCD顯示模式為:16*2顯示、5*7點陣、8位數據口;顯示開、有光標開且光標閃爍;光標右移,字符不移。3.實驗運行結果圖4.源代碼#include<reg51.h>//包含單片機寄存器的頭文件#include<intrins.h>//包含_nop_()函數定義的頭文件sbitRS=P2^0;//寄存器選擇位,將RS位定義為P2.0引腳sbitRW=P2^1;//讀寫選擇位,將RW位定義為P2.1引腳sbitE=P2^2;//使能信號位,將E位定義為P2.2引腳sbitBF=P0^7;//忙碌標志位,,將BF位定義為P0.7引腳unsignedcharcodestring[]={"WeletoChina"};/*****************************************************函數功能:延時1ms(3j+2)*i=(3×33+2)×10=1010(微秒),可以認為是1毫秒***************************************************/單片機原理及應用實驗報告全文共56頁,當前為第21頁。voiddelay1ms()單片機原理及應用實驗報告全文共56頁,當前為第21頁。{unsignedchari,j; for(i=0;i<10;i++) for(j=0;j<33;j++) ; }/*****************************************************函數功能:延時若干毫秒入口參數:n***************************************************/voiddelay(unsignedcharn){unsignedchari; for(i=0;i<n;i++) delay1ms();}/*****************************************************函數功能:判斷液晶模塊的忙碌狀態(tài)返回值:result。result=1,忙碌;result=0,不忙***************************************************/unsignedcharBusyTest(void)單片機原理及應用實驗報告全文共56頁,當前為第22頁。{單片機原理及應用實驗報告全文共56頁,當前為第22頁。bitresult; RS=0;//根據規(guī)定,RS為低電平,RW為高電平時,可以讀狀態(tài)RW=1;E=1;//E=1,才允許讀寫_nop_();//空操作_nop_();_nop_();_nop_();//空操作四個機器周期,給硬件反應時間result=BF;//將忙碌標志電平賦給result E=0;returnresult;}/*****************************************************函數功能:將模式設置指令或顯示地址寫入液晶模塊入口參數:dictate***************************************************/voidWriteInstruction(unsignedchardictate){while(BusyTest()==1);//如果忙就等待RS=0;//根據規(guī)定,RS和R/W同時為低電平時,可以寫入指令單片機原理及應用實驗報告全文共56頁,當前為第23頁。RW=0;單片機原理及應用實驗報告全文共56頁,當前為第23頁。 E=0;//E置低電平(根據表8-6,寫指令時,E為高脈沖,//就是讓E從0到1發(fā)生正跳變,所以應先置"0" _nop_(); _nop_();//空操作兩個機器周期,給硬件反應時間P0=dictate;//將數據送入P0口,即寫入指令或地址_nop_(); _nop_(); _nop_(); _nop_();//空操作四個機器周期,給硬件反應時間E=1;//E置高電平_nop_(); _nop_(); _nop_(); _nop_();//空操作四個機器周期,給硬件反應時間E=0;//當E由高電平跳變成低電平時,液晶模塊開始執(zhí)行命令}/*****************************************************函數功能:指定字符顯示的實際地址單片機原理及應用實驗報告全文共56頁,當前為第24頁。入口參數:*單片機原理及應用實驗報告全文共56頁,當前為第24頁。***************************************************/voidWriteAddress(unsignedchar*){WriteInstruction(*|0*80);//顯示位置的確定方法規(guī)定為"80H+地址碼*"}/*****************************************************函數功能:將數據(字符的標準ASCII碼)寫入液晶模塊入口參數:y(為字符常量)***************************************************/voidWriteData(unsignedchary){while(BusyTest()==1); RS=1;//RS為高電平,RW為低電平時,可以寫入數據RW=0; E=0;//E置低電平(根據表8-6,寫指令時,E為高脈沖,//就是讓E從0到1發(fā)生正跳變,所以應先置"0" P0=y;//將數據送入P0口,即將數據寫入液晶模塊_nop_(); _nop_(); _nop_();_nop_();//空操作四個機器周期,給硬件反應時間單片機原理及應用實驗報告全文共56頁,當前為第25頁。E=1;//E置高電平單片機原理及應用實驗報告全文共56頁,當前為第25頁。_nop_(); _nop_(); _nop_(); _nop_();//空操作四個機器周期,給硬件反應時間E=0;//當E由高電平跳變成低電平時,液晶模塊開始執(zhí)行命令}/*****************************************************函數功能:對LCD的顯示模式進行初始化設置***************************************************/voidLcdInitiate(void){delay(15);//延時15ms,首次寫指令時應給LCD一段較長的反應時間WriteInstruction(0*38);//顯示模式設置:16×2顯示,5×7點陣,8位數據接口delay(5);//延時5msWriteInstruction(0*38); delay(5); WriteInstruction(0*38); delay(5); WriteInstruction(0*0f);//顯示模式設置:顯示開,有光標,光標閃爍單片機原理及應用實驗報告全文共56頁,當前為第26頁。delay(5);單片機原理及應用實驗報告全文共56頁,當前為第26頁。 WriteInstruction(0*06);//顯示模式設置:光標右移,字符不移delay(5); WriteInstruction(0*01);//清屏幕指令,將以前的顯示內容清除delay(5);}voidmain(void)//主函數{unsignedchari;LcdInitiate();//調用LCD初始化函數delay(10);while(1){WriteInstruction(0*01);//清顯示:清屏幕指令WriteAddress(0*00);//設置顯示位置為第一行的第5個字 i=0; while(string[i]!='\0') { //顯示字符WriteData(string[i]); i++; delay(150); } 單片機原理及應用實驗報告全文共56頁,當前為第27頁。for(i=0;i<4;i++)單片機原理及應用實驗報告全文共56頁,當前為第27頁。 delay(250); }單片機原理及應用實驗報告全文共56頁,當前為第28頁。}單片機原理及應用實驗報告全文共56頁,當前為第28頁。.z.實驗七:簡易計算器設計實驗1.實驗目的(1)學會將單片機的輸入、輸出和內部定時計數器等功能綜合應用(2)掌握各部分功能綜合調試能力2.實驗內容設計一個簡易計算器,能夠進行加減乘除運算。3.實驗運行結果圖4.源代碼#include<reg51.h>//包含單片機寄存器的頭文件#include<intrins.h>//包含_nop_()函數定義的頭文件//#include<at89*51.h>sbitP0_4=0*84;sbitP0_5=0*85;sbitP0_6=0*86;sbitP0_7=0*87;voiddelay10ms(){unsignedchara,b;for(a=100;a>0;a--)for(b=50;b>0;b--);}單片機原理及應用實驗報告全文共56頁,當前為第29頁。voiddelay1ms()單片機原理及應用實驗報告全文共56頁,當前為第29頁。{unsignedchara,b;for(a=10;a>0;a--)for(b=50;b>0;b--);}unsignedcharcodetab[]={0*3f,0*06,0*5b,0*4f,0*66,0*6d,0*7d,0*07,0*7f,0*6f,0*77,0*7c,0*39,0*5e,0*79,0*71};voidmain(){ unsignedcharm,i,j,k,l,p,cc2,cc3,cc4,cc5,o; unsignedlongc1,c2,cc; unsignedintcc1; unsignedcharaa0,aa1,aa2,aa3,bb0,bb1,bb2,bb3; unsignedchara0,a1,a2,a3,b0,b1,b2,b3; bitq,n; while(1){ staticdian=0*80,fuhao=0;單片機原理及應用實驗報告全文共56頁,當前為第30頁。 for(j=0;j<=3;j++)單片機原理及應用實驗報告全文共56頁,當前為第30頁。{k=0*fe<<j;l=0*fe>>(8-j);P0=k|l;if(P0_4==0){delay10ms();if(P0_4==0){ while(P0_4==0) { P2=b0; P1=0*fe; delay1ms(); P2=0; P2=b1; P1=0*fd; delay1ms(); P2=0; P2=b2; P1=0*fb;單片機原理及應用實驗報告全文共56頁,當前為第31頁。 delay1ms();單片機原理及應用實驗報告全文共56頁,當前為第31頁。 P2=0; P2=b3; P1=0*f7; delay1ms(); P2=0; P2=a0; P1=0*ef; delay1ms(); P2=0; P2=a1; P1=0*df; delay1ms(); P2=0; P2=a2; P1=0*bf; delay1ms(); P2=0; P2=a3; P1=0*7f; delay1ms(); P2=0;單片機原理及應用實驗報告全文共56頁,當前為第32頁。 P2=dian;單片機原理及應用實驗報告全文共56頁,當前為第32頁。 P1=0*ef; delay1ms(); P2=0; P2=fuhao; P1=0*ef; delay1ms(); P2=0; } if(tab[4*j]==0*39) { n=1; i=3; } else { m++; if(m<=4&n==0) { a3=a2; a2=a1; a1=a0;單片機原理及應用實驗報告全文共56頁,當前為第33頁。 a0=tab[4*j];單片機原理及應用實驗報告全文共56頁,當前為第33頁。 aa3=aa2; aa2=aa1; aa1=aa0; aa0=4*j; } else { if(p<=3&n==1) { b3=b2; b2=b1; b1=b0; b0=tab[4*j]; bb3=bb2; bb2=bb1; bb1=bb0; bb0=4*j; p++; } } }單片機原理及應用實驗報告全文共56頁,當前為第34頁。單片機原理及應用實驗報告全文共56頁,當前為第34頁。}if(P0_5==0) { delay10ms(); if(P0_5==0) { while(P0_5==0) { P2=b0; P1=0*fe; delay1ms(); P2=0; P2=b1; P1=0*fd; delay1ms(); P2=0; P2=b2; P1=0*fb; delay1ms(); P2=0; P2=b3;單片機原理及應用實驗報告全文共56頁,當前為第35頁。 P1=0*f7;單片機原理及應用實驗報告全文共56頁,當前為第35頁。 delay1ms(); P2=0; P2=a0; P1=0*ef; delay1ms(); P2=0; P2=a1; P1=0*df; delay1ms(); P2=0; P2=a2; P1=0*bf; delay1ms(); P2=0; P2=a3; P1=0*7f; delay1ms(); P2=0; P2=dian; P1=0*ef; delay1ms();單片機原理及應用實驗報告全文共56頁,當前為第36頁。 P2=0;單片機原理及應用實驗報告全文共56頁,當前為第36頁。 P2=fuhao; P1=0*ef; delay1ms(); P2=0; } if(tab[4*j+1]==0*5e) { i=4; n=1; } else { m++; if(m<=4&n==0) { a3=a2; a2=a1; a1=a0; a0=tab[4*j+1]; aa3=aa2; aa2=aa1;單片機原理及應用實驗報告全文共56頁,當前為第37頁。 aa1=aa0;單片機原理及應用實驗報告全文共56頁,當前為第37頁。 aa0=4*j+1; } else { if(p<=3&n==1) { b3=b2; b2=b1; b1=b0; b0=tab[4*j+1]; bb3=bb2; bb2=bb1; bb1=bb0; bb0=4*j+1; p++; } } } } }if(P0_6==0)單片機原理及應用實驗報告全文共56頁,當前為第38頁。 {單片機原理及應用實驗報告全文共56頁,當前為第38頁。 delay10ms(); if(P0_6==0) { while(P0_6==0) { P2=b0; P1=0*fe; delay1ms(); P2=0; P2=b1; P1=0*fd; delay1ms(); P2=0; P2=b2; P1=0*fb; delay1ms(); P2=0; P2=b3; P1=0*f7; delay1ms(); P2=0;單片機原理及應用實驗報告全文共56頁,當前為第39頁。 P2=a0;單片機原理及應用實驗報告全文共56頁,當前為第39頁。 P1=0*ef; delay1ms(); P2=0; P2=a1; P1=0*df; delay1ms(); P2=0; P2=a2; P1=0*bf; delay1ms(); P2=0; P2=a3; P1=0*7f; delay1ms(); P2=0; P2=dian; P1=0*ef; delay1ms(); P2=0; P2=fuhao; P1=0*ef;單片機原理及應用實驗報告全文共56頁,當前為第40頁。 delay1ms();單片機原理及應用實驗報告全文共56頁,當前為第40頁。 P2=0; } if(tab[4*j+2]==0*77) { i=1; n=1; } else { if(tab[4*j+2]==0*79) { q=1; n=1; } else { m++; if(m<=4&n==0) { a3=a2; a2=a1;單片機原理及應用實驗報告全文共56頁,當前為第41頁。 a1=a0;單片機原理及應用實驗報告全文共56頁,當前為第41頁。 a0=tab[4*j+2]; aa3=aa2; aa2=aa1; aa1=aa0; aa0=4*j+2; } else { if(p<=3&n==1) { b3=b2; b2=b1; b1=b0; b0=tab[4*j+2]; bb3=bb2; bb2=bb1; bb1=bb0; bb0=4*j+2; p++; } }單片機原理及應用實驗報告全文共56頁,當前為第42頁。 }單片機原理及應用實驗報告全文共56頁,當前為第42頁。 } } } if(P0_7==0) { delay10ms(); if(P0_7==0) { while(P0_7==0) { P2=b0; P1=0*fe; delay1ms(); P2=0; P2=b1; P1=0*fd; delay1ms(); P2=0; P2=b2; P1=0*fb; delay1ms();單片機原理及應用實驗報告全文共56頁,當前為第43頁。 P2=0;單片機原理及應用實驗報告全文共56頁,當前為第43頁。 P2=b3; P1=0*f7; delay1ms(); P2=0; P2=a0; P1=0*ef; delay1ms(); P2=0; P2=a1; P1=0*df; delay1ms(); P2=0; P2=a2; P1=0*bf; delay1ms(); P2=0; P2=a3; P1=0*7f; delay1ms(); P2=0; P2=dian;單片機原理及應用實驗報告全文共56頁,當前為第44頁。 P1=0*ef;單片機原理及應用實驗報告全文共56頁,當前為第44頁。 delay1ms(); P2=0; P2=fuhao; P1=0*ef; delay1ms(); P2=0; } if(tab[4*j+3]==0*71) { i=6; n=1; } else { if(tab[4*j+3]==0*7c) { i=2; n=1; } else {m++;單片機原理及應用實驗報告全文共56頁,當前為第45頁。 if(m<=4&n==0)單片機原理及應用實驗報告全文共56頁,當前為第45頁。 { a3=a2; a2=a1; a1=a0; a0=tab[4*j+3]; aa3=aa2; aa2=aa1; aa1=aa0; aa0=4*j+3; } else { if(p<=3&n==1) { b3=b2; b2=b1; b1=b0; b0=tab[4*j+3]; bb3=bb2; bb2=bb1; bb1=bb0;單片機原理及應用實驗報告全文共56頁,當前為第46頁。 bb0=4*j+3;單片機原理及應用實驗報告全文共56頁,當前為第46頁。 p++; } } } } } } if(i==6)//復位 {a0=a1=a2=a3=b0=b1=b2=b3=0; dian=0*80; fuhao=0; m=i=j=k=l=n=p=q=0; aa0=aa1=aa2=aa3=bb0=bb1=bb2=bb3=0; c1=c2=cc=cc1=cc2=cc3=cc4=cc5=0; } if(q==0) { P2=b0; P1=0*fe; delay1ms();單片機原理及應用實驗報告全文共56頁,當前為第47頁。 P2=0;單片機原理及應用實驗報告全文共56頁,當前為第47頁。 P2=b1; P1=0*fd; delay1ms(); P2=0; P2=b2; P1=0*fb; delay1ms(); P2=0; P2=b3; P1=0*f7; delay1ms(); P2=0; P2=a0; P1=0*ef; delay1ms(); P2=0; P2=a1; P1=0*df; delay1ms(); P2=0; P2=a2;單片機原理及應用實驗報告全文共56頁,當前為第48頁。 P1=0*bf;單片機原理及應用實驗報告全文共56頁,當前為第48頁。 delay1ms(); P2=0; P2=a3; P1=0*7f; delay1ms(); P2=0; P2=dian; P1=0*ef; delay1ms(); P2=0; P2=fuhao; P1=0*ef; delay1ms(); P2=0; } else { q=0; c1=aa0+aa1*10+aa2*100+aa3*1000; c2=bb0+bb1*10+bb2*100+bb3*1000; if(i==1)//加法運算單片機原理及應用實驗報告全文共56頁,當前為第49頁。 {單片機原理及應用實驗報告全文共56頁,當前為第49頁。cc=c1+c2; } if(i==2)//減法運算 {if(c1>=c2) { cc=c1-c2; } else { cc=c2-c1; fuhao=0*40; } } if(i==3)//乘法運算 {cc=c1*c2; } a3=tab[cc/10000000]; aa3=cc/10000000; a2=tab[(cc%10000000)/1000000];單片機原理及應用實驗報告全文共56頁,當
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國菠蘿醋行業(yè)市場調查研究及投資前景展望報告
- 2025年中國日式洗頭臺行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 出貨通知外貿合同范本
- 2025年教育信息化項目可行性分析報告
- 入駐賣場合同范本
- 勞務公司電力施工合同范本
- 中班健康公開課《蔬菜寶寶我愛你》教案
- ems快遞送達合同范例
- 現代商業(yè)環(huán)境下經濟型連鎖酒店的市場定位
- 電視節(jié)目策劃的藝術性探討
- GB/T 16475-1996變形鋁及鋁合金狀態(tài)代號
- GB 4706.20-2004家用和類似用途電器的安全滾筒式干衣機的特殊要求
- 無紙化會議系統(tǒng)解決方案
- 佛教空性與緣起課件
- 上海鐵路局勞動安全“八防”考試題庫(含答案)
- 《愿望的實現》教學設計
- 效率提升和品質改善方案
- 中山大學抬頭信紙中山大學橫式便箋紙推薦信模板a
- 義務教育學科作業(yè)設計與管理指南
- 《汽車發(fā)展史》PPT課件(PPT 75頁)
- 常暗之廂(7規(guī)則-簡體修正)
評論
0/150
提交評論