單片機(jī)實(shí)驗(yàn)報(bào)告總匯_第1頁
單片機(jī)實(shí)驗(yàn)報(bào)告總匯_第2頁
單片機(jī)實(shí)驗(yàn)報(bào)告總匯_第3頁
單片機(jī)實(shí)驗(yàn)報(bào)告總匯_第4頁
單片機(jī)實(shí)驗(yàn)報(bào)告總匯_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

單片機(jī)技術(shù)及應(yīng)用實(shí)驗(yàn)報(bào)告學(xué)院電子信息工程學(xué)院專業(yè)電子信息工程學(xué)號(hào)姓名實(shí)驗(yàn)一:流水燈實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模和ㄟ^對(duì)P3口地址的操作控制8位LED流水點(diǎn)亮,從而認(rèn)識(shí)單片機(jī)的存儲(chǔ)器。二、實(shí)驗(yàn)原理圖三、參考實(shí)驗(yàn)程序#include<reg51.h>sfrx=0xb0;voiddelay(void){unsignedchari,j;for(i=0;i<250;i++)for(j=0;j<250;j++);}voidmain(void){while(1){x=0xfe;delay();x=0xfd;delay();x=0xfb;delay();x=0xf7;delay();x=0xef;delay();x=0xdf;delay();x=0xbf;delay();x=0x7f;delay();}}四、思考題#include<reg51.h>sfrx=0xb0;voiddelay(void){unsignedchari,j;for(i=0;i<250;i++)for(j=0;j<250;j++);}voidmain(void){while(1){x=0x7e;delay();x=0xbc;delay();x=0xcb;delay();x=0xe7;delay();x=0xe7;delay();x=0xcb;delay();x=0xbc;delay();x=0x7e;delay();}}五、實(shí)驗(yàn)結(jié)果圖六、實(shí)驗(yàn)總結(jié)通過本次的實(shí)驗(yàn),我了解了單片機(jī)的原理,基本會(huì)了ISIS7和keil的操作。并且認(rèn)識(shí)到這個(gè)單片機(jī)實(shí)驗(yàn)不僅構(gòu)圖連線要正確,更重要的是程序的編寫編譯。只有當(dāng)構(gòu)圖與程序都正確的時(shí)候,才能得到正確的實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)二:中斷實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康耐ㄟ^對(duì)P3.2、P3.3引腳的電平控制,實(shí)現(xiàn)外部中斷處理,從而控制輸出口P1的輸出效果變化。二、參考實(shí)驗(yàn)程序#include<reg51.h>sbitS=P3^2;voidmain(void){EA=1;EX0=1;IT0=1;P1=0xff;while(1);}voidint0(void)interrupt0using0{P1=~P1;}三、實(shí)驗(yàn)原理圖四、實(shí)驗(yàn)思考題:根據(jù)指導(dǎo)書中提供的原理圖,自行設(shè)計(jì)一個(gè)外部中斷實(shí)驗(yàn)。要求:1.兩個(gè)外部中斷全部用上;2.實(shí)驗(yàn)?zāi)荏w現(xiàn)不同中斷優(yōu)先級(jí)的中斷源的相應(yīng)情況;3.不同中斷處理程序能輸出不同的響應(yīng)效果思考題參考程序#include<reg51.h>sbitS=P3^2;voidmain(void){EA=1;EX0=1;IT0=1;P1=0xff;while(1)EX1=1;IT1=1;P1=0xff;while(1);}voidint0(void)interrupt0using0{P1=~P1;}思考題原理圖五、實(shí)驗(yàn)總結(jié)一開始沒有理解外中斷,以為只要增加一個(gè)中斷就可以了,就只在LED1燈上接了一個(gè)中斷,雖然也有中斷效果,但是還是不符合本次實(shí)驗(yàn)的要求;后來與同學(xué)討論才發(fā)現(xiàn)這個(gè)問題,加以改正之后得出了以上實(shí)驗(yàn)結(jié)果。由此可知,一個(gè)成功的實(shí)驗(yàn)不僅需要自己正確理解實(shí)驗(yàn)要求,同時(shí)也離不開團(tuán)隊(duì)合作的力量。實(shí)驗(yàn)三:定時(shí)器/計(jì)數(shù)器實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康耐ㄟ^使用定時(shí)器T0的中斷來控制P1.4引腳的LED的燈閃爍,要求閃爍時(shí)間2s,既亮1s,滅1s。二、實(shí)驗(yàn)參考程序#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintsbitD1=P1^4;ucharcount;voidmain(){EA=1; ET0=1;TMOD=0x01;TH0=(65535-50000)/256;TL0=(65535-50000)%256;TR0=1;while(1){if(count==20) {count=0;D1=~D1; }}}voidtimer0()interrupt1{TH0=(65535-50000)/256;TL0=(65535-50000)%256;count++;}三、實(shí)驗(yàn)原理圖四、實(shí)驗(yàn)結(jié)果圖五、實(shí)驗(yàn)思考題修改程序使用定時(shí)器T1的中斷方式來控制P1.4、P1.7引腳的LED燈分別以200ms和800ms的周期閃爍。(1)思考題參考程序:#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintsbitD1=P1^4;sbitD2=P1^7;ucharcount1,count2;voidmain(){EA=1; ET1=1;TMOD=0x02;TH1=(65535-50000)/256;TL1=(65535-50000)%256;TR1=1;while(1){if(count1==4) {count1=0;D1=~D1; } if(count2==16) {count2=0;D2=~D2; }}}voidtimer1()interrupt3{TH0=(65535-50000)/256;TL0=(65535-50000)%256;count1++;count2++;}(2)思考題實(shí)驗(yàn)原理圖(3)參考題實(shí)驗(yàn)結(jié)果圖六、實(shí)驗(yàn)總結(jié)實(shí)驗(yàn)指導(dǎo)書里所給的程序和原理圖所接的引腳不同,我做過實(shí)驗(yàn)后才發(fā)現(xiàn),因此為了方便我沒有改圖,只是將程序里的引腳部分做了一點(diǎn)修改,實(shí)驗(yàn)結(jié)果也是可以出來的。通過此次實(shí)驗(yàn),我了解了定時(shí)器和計(jì)數(shù)器的使用,同時(shí)明白在實(shí)驗(yàn)之前應(yīng)該仔細(xì)觀察實(shí)驗(yàn)指導(dǎo)書,以免出現(xiàn)不必要的錯(cuò)誤,導(dǎo)致時(shí)間的浪費(fèi)。實(shí)驗(yàn)四:串行口實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模罕緦?shí)驗(yàn)要求單片機(jī)U1通過其串行口TXD向計(jì)算機(jī)發(fā)送一組數(shù)組。利用集成電路MAX232將單片機(jī)的輸出信號(hào)轉(zhuǎn)化成計(jì)算機(jī)能夠識(shí)別的信號(hào)。針對(duì)發(fā)送的實(shí)例,再設(shè)計(jì)一個(gè)單片機(jī)接受計(jì)算機(jī)送出數(shù)據(jù)的過程。二、實(shí)驗(yàn)參考程序發(fā)送端:#include<reg51.h>unsignedcharcodeTab[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};voidSend(unsignedchardat){SBUF=dat;while(TI==0);TI=0;}voiddelay(void){unsignedcharm,n; for(m=0;m<200;m++) for(n=0;n<250;n++);}voidmain(void){unsignedchari;TMOD=0x20;SCON=0x40;PCON=0x00;TH1=0xfd;TL1=0xfd;TR1=1;while(1){ for(i=0;i<8;i++) { Send(Tab[i]); delay(); } }}接收端:#include<reg51.h>voidmian(){SCON=0x50; TMOD=0x20; TH1=0xfd; TL1=0xfd; PCON=0x00; RI=0; TR1=1; while(1) { if(RI) { RI=0; P1=SBUF; }}} 三、實(shí)驗(yàn)結(jié)果圖四、實(shí)驗(yàn)總結(jié)通過本次實(shí)驗(yàn),了解到了發(fā)送與接受數(shù)組的過程。我們之前所做的實(shí)驗(yàn)中,都只有一個(gè)芯片,而此次實(shí)驗(yàn)有兩個(gè),本來是不懂是為何,實(shí)驗(yàn)結(jié)束后才知道,一個(gè)芯片加載一個(gè)程序,發(fā)送端與接收端的程序不是加載在同一芯片中,如此淺顯的問題若不是做了該實(shí)驗(yàn),我想我還是不會(huì)明白。實(shí)驗(yàn)五:鍵盤掃描識(shí)別實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模涸O(shè)計(jì)一個(gè)4X4的矩陣鍵盤,鍵盤的號(hào)碼0~15,要求編寫出一個(gè)鍵盤輸入掃描程序,要求單片機(jī)能根據(jù)鍵盤排列順序,能將按下去鍵盤號(hào)正確識(shí)別出來,并采用兩個(gè)數(shù)碼管分別鍵盤號(hào)碼的個(gè)位和十位。二、實(shí)驗(yàn)參考程序#include<reg51.h>sbitP14=P1^4;sbitP15=P1^5;sbitP16=P1^6;sbitP17=P1^7;UnsignedcharcodeTab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsignedcharkeyval;voidled_delay(void){unsignedcharj; for(j=0;j<200;j++);}voiddisplay(unsignedchark){P2=0xbf;P0=Tab[k/10];led_delay();P2=0x7f;P0=Tab[k%10]; led_delay();}voiddelay20ms(void){unsignedchari,j; for(i=0;i<100;i++) for(j=0;j<60;j++);}voidmain(void){EA=1; ET0=1; TMOD=0x01; TH0=(65536-500)/256; TL0=(65536-500)%256; TR0=1; keyval=0x00; while(1) { display(keyval); }}voidtime0_interserve(void)interrupt1using1{TR0=0;P1=0xf0; if((P1&0xf0)!=0xf0) delay20ms(); if((P1&0xf0)!=0xf0) { P1=0xfe; if(P14==0)keyval=1;if(P15==0)keyval=2;if(P16==0)keyval=3;if(P17==0)keyval=4;P1=0xfd; if(P14==0)keyval=5;if(P15==0)keyval=6;if(P16==0)keyval=7;if(P17==0)keyval=8;P1=0xfb; if(P14==0)keyval=9;if(P15==0)keyval=10;if(P16==0)keyval=11;if(P17==0)keyval=12;P1=0xf7; if(P14==0)keyval=13;if(P15==0)keyval=14;if(P16==0)keyval=15;if(P17==0)keyval=16;}TR0=1;TH0=(65536-500)/256; TL0=(65536-500)%256; }三、實(shí)驗(yàn)結(jié)果圖四、思考題修改實(shí)驗(yàn)電路圖和實(shí)驗(yàn)程序和設(shè)計(jì)電路,改成靜態(tài)顯示參考程序:#include<reg51.h>sbitP14=P1^4;sbitP15=P1^5;sbitP16=P1^6;sbitP17=P1^7;unsignedcharcodeTab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsignedcharkeyval;voidled_delay(void){unsignedcharj; for(j=0;j<200;j++);}voiddisplay(unsignedchark){P0=Tab[k];P0=Tab[k%10];}voiddelay20ms(void){unsignedchari,j; for(i=0;i<100;i++) for(j=0;j<60;j++);}voidmain(void){EA=1; ET0=1; TMOD=0x01; TH0=(65536-500)/256; TL0=(65536-500)%256; TR0=1; keyval=0x00; while(1) { display(keyval); }}voidtime0_interserve(void)interrupt1using1{TR0=0;P1=0xf0; if((P1&0xf0)!=0xf0) delay20ms(); if((P1&0xf0)!=0xf0) { P1=0xfe; if(P14==0)keyval=1;if(P15==0)keyval=2;if(P16==0)keyval=3;if(P17==0)keyval=4;P1=0xfd; if(P14==0)keyval=5;if(P15==0)keyval=6;if(P16==0)keyval=7;if(P17==0)keyval=8;P1=0xfb; if(P14==0)keyval=9;if(P15==0)keyval=10;if(P16==0)keyval=11;if(P17==0)keyval=12;P1=0xf7; if(P14==0)keyval=13;if(P15==0)keyval=14;if(P16==0)keyval=15;if(P17==0)keyval=16;}TR0=1;TH0=(65536-500)/256; TL0=(65536-500)%256; }實(shí)驗(yàn)結(jié)果圖五、實(shí)驗(yàn)總結(jié)通過此次實(shí)驗(yàn),學(xué)會(huì)了用鍵盤輸入控制數(shù)碼管顯示數(shù)據(jù),用一個(gè)4X4的矩陣鍵盤,鍵盤的號(hào)碼0~15,編寫了一個(gè)鍵盤輸入掃描程序,讓單片機(jī)能根據(jù)鍵盤排列順序,能將按下去鍵盤號(hào)正確識(shí)別出來,并采用兩個(gè)數(shù)碼管分別鍵盤號(hào)碼的個(gè)位和十位。不僅僅是動(dòng)態(tài)顯示,還有靜態(tài)顯示,受益匪淺。實(shí)驗(yàn)六:LCD循環(huán)顯示設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康牟捎?602型LCD循環(huán)顯示字符串“WelcometoHeifeiNormalUniversity”。其中LCD顯示模式為:16*2顯示、5*7點(diǎn)陣、8位數(shù)據(jù)口;顯示開、有光標(biāo)開且光標(biāo)閃爍;光標(biāo)右移,字符不移。二、實(shí)驗(yàn)參考程序#include<reg51.h>#include<intrins.h>sbitRS=P2^0;sbitRW=P2^1;sbitE=P2^2;sbitBF=P0^7;unsignedcharcodestring[]={"WelcometoHefei"};unsignedcharcodestring1[]={"NormalUniversity"};voiddelay1ms(){unsignedchari,j; for(i=0;i<10;i++)for(j=0;j<33;j++) ; }voiddelay(unsignedcharn){unsignedchari; for(i=0;i<n;i++) delay1ms();}unsignedcharBusyTest(void){bitresult;RS=0;RW=1;E=1;_nop_();_nop_();_nop_();_nop_();result=BF;E=0;returnresult;}voidWriteInstruction(unsignedchardictate){while(BusyTest()==1);RS=0;RW=0;E=0;_nop_();_nop_();P0=dictate;_nop_();_nop_();_nop_();_nop_();E=1;_nop_();_nop_();_nop_();_nop_();E=0;}voidWriteAddress(unsignedcharx){WriteInstruction(x|0x80);voidWriteData(unsignedchary){while(BusyTest()==1);RS=1;RW=0;E=0;P0=y;_nop_();_nop_();_nop_();_nop_();E=1;_nop_();_nop_();_nop_();_nop_();E=0;}voidLcdInitiate(void){delay(15);WriteInstruction(0x38); delay(5); WriteInstruction(0x38); delay(5); WriteInstruction(0x38); delay(5); WriteInstruction(0x0f); delay(5); WriteInstruction(0x06); delay(5); WriteInstruction(0x01); delay(5);}voidmain(void){unsignedchari;LcdInitiate();delay(10);while(1){WriteInstruction(0x01);WriteAddress(0x00);i=0;while(string[i]!='\0'){ WriteData(string[i]);i++;delay(150); } WriteAddress(0x40);i=0; while(string1[i]!='\0'){ WriteData(string1[i]);i++;delay(150);}for(i=0;i<4;i++)delay(250);} }三、實(shí)驗(yàn)結(jié)果圖四、實(shí)驗(yàn)思考題:試編寫LCD12864顯示初始化程序,設(shè)計(jì)電路,采用漢字取模,使LCD循環(huán)顯示字符串hefeinormaluniversity和個(gè)人學(xué)號(hào)、姓名。要求:1.字符分為兩行,居中顯示2.字符從左向右緩慢移動(dòng)實(shí)驗(yàn)參考程序#include<reg51.h>//包含單片機(jī)寄存器的頭文件#include<intrins.h>//包含_nop_()函數(shù)定義的頭文件sbitRS=P2^0;//寄存器選擇位,將RS位定義為P2.0引腳sbitRW=P2^1;//讀寫選擇位,將RW位定義為P2.1引腳sbitE=P2^2;//使能信號(hào)位,將E位定義為P2.2引腳sbitBF=P0^7;//忙碌標(biāo)志位,,將BF位定義為P0.7引腳unsignedcharcodestring[]={"HefeiNormal"};unsignedcharcodestring1[]={"University"};unsignedcharcodestring2[]={"1308211026"};unsignedcharcodestring3[]={"yushan"};voiddelay1ms(){unsignedchari,j; for(i=0;i<10;i++) for(j=0;j<33;j++) ; }voiddelay(unsignedcharn){unsignedchari; for(i=0;i<n;i++) delay1ms();}unsignedcharBusyTest(void){bitresult; RS=0;//根據(jù)規(guī)定,RS為低電平,RW為高電平時(shí),可以讀狀態(tài)RW=1;E=1;//E=1,才允許讀寫_nop_();//空操作_nop_();_nop_();_nop_();//空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 result=BF;//將忙碌標(biāo)志電平賦給resultE=0;returnresult;}voidWriteInstruction(unsignedchardictate){while(BusyTest()==1);//如果忙就等待 RS=0;//根據(jù)規(guī)定,RS和R/W同時(shí)為低電平時(shí),可以寫入指令RW=0;E=0;_nop_(); _nop_();//空操作兩個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 P0=dictate;//將數(shù)據(jù)送入P0口,即寫入指令或地址_nop_();_nop_();_nop_(); _nop_();//空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間E=1;//E置高電平_nop_();_nop_();_nop_(); _nop_();//空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 E=0;//當(dāng)E由高電平跳變成低電平時(shí),液晶模塊開始執(zhí)行命令}voidWriteAddress(unsignedcharx){WriteInstruction(x|0x80+0x02); WriteInstruction(x|0x80+0x02);//顯示位置的確定方法規(guī)定為"80H+地址碼x"}voidWriteData(unsignedchary){while(BusyTest()==1); RS=1;//RS為高電平,RW為低電平時(shí),可以寫入數(shù)據(jù)RW=0;E=0; P0=y;//將數(shù)據(jù)送入P0口,即將數(shù)據(jù)寫入液晶模塊_nop_();_nop_();_nop_();_nop_();//空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間E=1;//E置高電平_nop_();_nop_();_nop_(); _nop_();//空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 E=0;//當(dāng)E由高電平跳變成低電平時(shí),液晶模塊開始執(zhí)行命令}voidLcdInitiate(void){delay(15);//延時(shí)15ms,首次寫指令時(shí)應(yīng)給LCD一段較長的反應(yīng)時(shí)間WriteInstruction(0x38);//顯示模式設(shè)置:16×2顯示,5×7點(diǎn)陣,8位數(shù)據(jù)接口delay(5);//延時(shí)5msWriteInstruction(0x38);delay(5);WriteInstruction(0x38);delay(5); WriteInstruction(0x0f);//顯示模式設(shè)置:顯示開,有光標(biāo),光標(biāo)閃爍delay(5); WriteInstruction(0x06);//顯示模式設(shè)置:光標(biāo)右移,字符不移delay(5); WriteInstruction(0x01);//清屏幕指令,將以前的顯示內(nèi)容清除delay(5);}voidmain(void)//主函數(shù){unsignedchari;LcdInitiate();//調(diào)用LCD初始化函數(shù)delay(10);while(1){WriteInstruction(0x01);//清顯示:清屏幕指令 WriteAddress(0x00);//設(shè)置顯示位置為第一行的第5個(gè)字i=0; while(string[i]!='\0'){ //顯示字符 WriteData(string[i]); i++; delay(150); } WriteAddress(0x40);//設(shè)置顯示位置為第一行的第5個(gè)字 i=0;while(string1[i]!='\0'){ //顯示字符 WriteData(string1[i]); i++; delay(150);}WriteAddress(0x00);//設(shè)置顯示位置為第一行的第5個(gè)字i=0; while(string2[i]!='\0'){ //顯示字符 WriteData(string2[i]); i++; delay(150); } WriteAddress(0x40);//設(shè)置顯示位置為第一行的第5個(gè)字 i=0; while(string3[i]!='\0'){ //顯示字符 WriteData(string3[i]);i++; delay(150); }for(i=0;i<4;i++)delay(150); } }實(shí)驗(yàn)結(jié)果圖五、實(shí)驗(yàn)總結(jié)通過此次實(shí)驗(yàn),我了解了LCD的16*2顯示、5*7點(diǎn)陣、8位數(shù)據(jù)口,發(fā)現(xiàn)了單片機(jī)實(shí)驗(yàn)的樂趣,單片機(jī)學(xué)起來真是很有意思,我們可以通過編程來改變LCD上顯示的字符,這個(gè)LCD還可以實(shí)現(xiàn)很多功能。實(shí)驗(yàn)七:簡易計(jì)算器一、實(shí)驗(yàn)?zāi)康恼莆?9C51單片機(jī)開發(fā)應(yīng)用系統(tǒng)的方法和應(yīng)用程序的編寫和調(diào)試要求:由P1口輸出字形碼,P0口輸出字位碼。先將存放于30H單元的數(shù)值個(gè)位七段碼由P1口輸出,同時(shí)P0口輸出使數(shù)值個(gè)位顯示數(shù)碼管點(diǎn)亮的字位碼。由于采用的是共陽數(shù)碼管,所以只有該位數(shù)碼管對(duì)應(yīng)的P0.0為1,其他位P0.1-P0.3位0,點(diǎn)亮延時(shí)10MS。然后P1口輸出數(shù)值十位七段碼,P0.1位1,數(shù)值十位數(shù)碼管點(diǎn)亮,延時(shí)10MS。接著P1口輸出數(shù)值百位七段碼,P0.2為1,數(shù)值百位數(shù)碼管點(diǎn)亮,延時(shí)10MS。最后P1口輸出數(shù)值千位七段碼,P0.3為1,數(shù)值千位數(shù)碼管點(diǎn)亮,延時(shí)10MS。二、實(shí)驗(yàn)參考程序#include<reg51.h>//包含單片機(jī)寄存器的頭文件#include<intrins.h>//包含_nop_()函數(shù)定義的頭文件//#include<at89x51.h>sbitP0_4=P0^4;sbitP0_5=P0^5;sbitP0_6=P0^6;sbitP0_7=P0^7;delay10ms(){unsignedchara,b;for(a=100;a>0;a--)for(b=50;b>0;b--);}delay1ms(){unsignedchara,b;for(a=10;a>0;a--)for(b=50;b>0;b--);}unsignedcharcodetab[]={0x3f,6,0x5b,0x4f,0x66,0x6d,0x7d,7,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};main(){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=0x80,fuhao=0;for(j=0;j<=3;j++){k=0xfe<<j;l=0xfe>>(8-j);P0=k|l;if(P0_4==0){delay10ms();if(P0_4==0){while(P0_4==0) {P2=b0;P1=0xfe;delay1ms();P2=0;P2=b1;P1=0xfd;delay1ms();P2=0;P2=b2;P1=0xfb;delay1ms();P2=0;P2=b3;P1=0xf7;delay1ms();P2=0;P2=a0;P1=0xef;delay1ms();P2=0;P2=a1;P1=0xdf;delay1ms();P2=0;P2=a2;P1=0xbf;delay1ms();P2=0;P2=a3;P1=0x7f;delay1ms();P2=0;P2=dian;P1=0xef;delay1ms();P2=0;P2=fuhao;P1=0xef;delay1ms();P2=0;}if(tab[4*j]==0x39){n=1;i=3;}else{m++;if(m<=4&n==0) {a3=a2;a2=a1;a1=a0;a0=tab[4*j];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++; }}}}}if(P0_5==0){delay10ms();if(P0_5==0){while(P0_5==0){P2=b0;P1=0xfe;delay1ms();P2=0;P2=b1;P1=0xfd;delay1ms();P2=0;P2=b2;P1=0xfb;delay1ms();P2=0;P2=b3;P1=0xf7;delay1ms();P2=0;P2=a0;P1=0xef;delay1ms();P2=0;P2=a1;P1=0xdf;delay1ms();P2=0;P2=a2;P1=0xbf;delay1ms();P2=0;P2=a3;P1=0x7f;delay1ms();P2=0;P2=dian;P1=0xef;delay1ms();P2=0;P2=fuhao;P1=0xef;delay1ms();P2=0;}if(tab[4*j+1]==0x5e){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;aa1=aa0;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){delay10ms();if(P0_6==0){while(P0_6==0){P2=b0;P1=0xfe;delay1ms();P2=0; P2=b1;P1=0xfd;delay1ms();P2=0; P2=b2;P1=0xfb;delay1ms();P2=0;P2=b3;P1=0xf7;delay1ms();P2=0; P2=a0;P1=0xef;delay1ms();P2=0; P2=a1;P1=0xdf;delay1ms();P2=0; P2=a2;P1=0xbf;delay1ms();P2=0; P2=a3;P1=0x7f;delay1ms();P2=0; P2=dian;P1=0xef;delay1ms();P2=0; P2=fuhao;P1=0xef;delay1ms();P2=0;}if(tab[4*j+2]==0x77){i=1;n=1;}else{if(tab[4*j+2]==0x79){q=1;n=1;}else{m++;if(m<=4&n==0) {a3=a2;a2=a1;a1=a0;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++; } }}}}}if(P0_7==0){delay10ms();if(P0_7==0){while(P0_7==0){P2=b0;P1=0xfe;delay1ms();P2=0;P2=b1;P1=0xfd;delay1ms();P2=0; P2=b2;P1=0xfb;delay1ms();P2=0;P2=b3;P1=0xf7;delay1ms();P2=0; P2=a0;P1=0xef;delay1ms();P2=0; P2=a1;P1=0xdf;delay1ms();P2=0; P2=a2;P1=0xbf;delay1ms();P2=0; P2=a3;P1=0x7f;delay1ms();P2=0; P2=dian;P1=0xef;delay1ms();P2=0; P2=fuhao;P1=0xef;delay1ms();P2=0;}if(tab[4*j+3]==0x71){i=6;n=1;}else{if(tab[4*j+3]==0x7c){i=2;n=1;}else{m++;if(m<=4&n==0) {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;bb0=4*j+3; p++; } }}}}}if(i==6)//復(fù)位{a0=a1=a2=a3=b0=b1=b2=b3=0;dian=0x80;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=0xfe;delay1ms();P2=0; P2=b1;P1=0xfd;delay1ms();P2=0;P2=b2;P1=0xfb;delay1ms();P2=0;P2=b3;P1=0xf7;delay1ms();P2=0; P2=a0;P1=0xef;delay1ms();P2=0;

溫馨提示

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