課程設(shè)計-機(jī)油壓力檢測系統(tǒng)設(shè)計及仿真_第1頁
課程設(shè)計-機(jī)油壓力檢測系統(tǒng)設(shè)計及仿真_第2頁
課程設(shè)計-機(jī)油壓力檢測系統(tǒng)設(shè)計及仿真_第3頁
課程設(shè)計-機(jī)油壓力檢測系統(tǒng)設(shè)計及仿真_第4頁
課程設(shè)計-機(jī)油壓力檢測系統(tǒng)設(shè)計及仿真_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

附錄程序代碼:#include<reg52.h>#include<math.h>#include<absacc.h>#include<intrins.h>#defineLCDP0typedefunsignedcharuchar;typedefunsignedintuint;/*LCD顯示屏控制*/sbitRS=P2^2;sbitRW=P2^3;sbitE=P2^1;/*AD轉(zhuǎn)化控制部分*/sbitSTART=P3^0;sbitOE=P3^1;sbitEOC=P3^3;intsetspeed;ucharAD;voidad_0808(){ START=0; //啟動轉(zhuǎn)換 START=1; START=0; while(!EOC)//等待轉(zhuǎn)換完畢的信號,當(dāng)EOC=1時轉(zhuǎn)換完畢 { ; } OE=1; //輸出三態(tài)門打開,將轉(zhuǎn)換的結(jié)果輸出到數(shù)據(jù)總線上 AD=P1*100/255; // OE=0;}voidadc(){ad_0808();setspeed=(int)AD;}voiddelay(uinta){ uinti,j; for(i=0;i<a;i++) for(j=0;j<200;j++);}voidDelay(){ uinti; for(i=0;i<225;i++); }/*************LCD顯示部分*******************//*把1個命令寫入LCD*/voidvWriteLM(ucharlcdCommand) { Delay(); //先延時。 E=1; //然后把LCD改為寫入命令狀態(tài)。 RS=0; RW=0;LCD=lcdCommand; //再輸出命令。E=0; //最后執(zhí)行命令。} /*把1個數(shù)據(jù)寫入LCD*/voidvWriteData(ucharlcdData) { Delay(); //先延時。E=1; //然后把LCD改為寫入數(shù)據(jù)狀態(tài)。 RS=1; RW=0;LCD=lcdData; //再輸出數(shù)據(jù)。E=0; //最后顯示數(shù)據(jù)。} /*把1個字符顯示到當(dāng)前光標(biāo)處*/ voidvShowOneChar(ucharlcdChar){ switch(lcdChar) { case'':vWriteData(0x20);break; case':':vWriteData(0x3A);break; case'0':vWriteData(0x30);break; case'1':vWriteData(0x31);break; case'2':vWriteData(0x32);break; case'3':vWriteData(0x33);break; case'4':vWriteData(0x34);break; case'5':vWriteData(0x35);break; case'6':vWriteData(0x36);break; case'7':vWriteData(0x37);break; case'8':vWriteData(0x38);break; case'9':vWriteData(0x39);break; case'A':vWriteData(0x41);break; case'B':vWriteData(0x42);break; case'C':vWriteData(0x43);break; case'D':vWriteData(0x44);break; case'E':vWriteData(0x45);break; case'F':vWriteData(0x46);break; case'G':vWriteData(0x47);break; case'H':vWriteData(0x48);break; case'I':vWriteData(0x49);break; case'J':vWriteData(0x4A);break; case'K':vWriteData(0x4B);break; case'L':vWriteData(0x4C);break; case'M':vWriteData(0x4D);break; case'N':vWriteData(0x4E);break; case'O':vWriteData(0x4F);break; case'P':vWriteData(0x50);break; case'Q':vWriteData(0x51);break; case'R':vWriteData(0x52);break; case'S':vWriteData(0x53);break; case'T':vWriteData(0x54);break; case'U':vWriteData(0x55);break; case'V':vWriteData(0x56);break; case'W':vWriteData(0x57);break; case'X':vWriteData(0x58);break; case'Y':vWriteData(0x59);break; case'Z':vWriteData(0x5A);break; default:break; }}/*把1個字符串顯示到當(dāng)前光標(biāo)處*/voidvShowChar(ucharlcdaChar[]){ ucharlcdCount; for(lcdCount=0;;lcdCount++) { vShowOneChar(lcdaChar[lcdCount]); if(lcdaChar[lcdCount+1]=='\0') break; }}/*把一個三位數(shù)字顯示出來*/voidvShowNumber(uintuiNumber){ ucharlcdaNumber[3],lcdNumCount; if(uiNumber>999) uiNumber=999; lcdaNumber[0]=uiNumber/100; //把計算數(shù)字的每個位存入數(shù)組。 lcdaNumber[1]=(uiNumber-100*(int)lcdaNumber[0])/10; lcdaNumber[2]=uiNumber-100*(int)lcdaNumber[0]-10*lcdaNumber[1]; for(lcdNumCount=0;lcdNumCount<3;lcdNumCount++) { vShowOneChar(lcdaNumber[lcdNumCount]+48); //從首位到末位逐一輸出。 }}voidLCD_init(){vWriteLM(0x01); // 清屏vWriteLM(0x38); //顯示模式設(shè)置:8位2行5x7點陣vWriteLM(0x0C); //(0x0C)文字不動,光標(biāo)自動右移 vWriteLM(0x0F); //顯示器開、光標(biāo)開、閃爍開}voidmain(void){ LCD_init();delay(20

溫馨提示

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

評論

0/150

提交評論