好文档 - 专业文书写作范文服务资料分享网站

机油压力测试设计

天下 分享 时间: 加入收藏 我要投稿 点赞

void ad_0808() {

START = 0; //启动转换 }

void adc() {

ad_0808();

setspeed = (int)AD; }

void delay(uint a) { }

void Delay() {

uint i; uint i,j; for(i=0;i

for(j=0;j<200;j++); START = 1; START = 0;

while(!EOC) //等待转换完毕的信号,当EOC=1时转换完毕 { } OE = 1;

//输出三态门打开,将转换的结果输出到数据总线上

;

AD = P1*100/255; // OE = 0;

}

for(i=0;i<225;i++);

/*************LCD显示部分*******************/

/*把1个命令写入LCD */

void vWriteLM(uchar lcdCommand) {

E=1; RS=0; RW=0;

//再输出命令。 //最后执行命令。

//然后把LCD改为写入命令状态。

Delay();

//先延时。

LCD=lcdCommand; E=0; }

/*把1个数据写入LCD*/

void vWriteData( uchar lcdData) {

Delay();

//先延时。

//然后把LCD改为写入数据状态。

E=1;

RS=1; RW=0;

LCD=lcdData; E=0; }

//再输出数据。

//最后显示数据。

/*把1个字符显示到当前光标处*/

void vShowOneChar(uchar lcdChar) {

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 '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; switch(lcdChar)

{

case ' ': vWriteData(0x20);break; case ':': vWriteData(0x3A);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个字符串显示到当前光标处*/ void vShowChar(uchar lcdaChar[]) {

uchar lcdCount;

for(lcdCount=0;;lcdCount++)

{

vShowOneChar(lcdaChar[lcdCount]);

}

if(lcdaChar[lcdCount+1]=='\\0') }

break;

/*把一个三位数字显示出来*/ void vShowNumber(uint uiNumber) {

if(uiNumber>999) uiNumber=999;

lcdaNumber[0]=uiNumber/100;

//把计算数字的每个位存入

uchar lcdaNumber[3],lcdNumCount;

数组。

lcdaNumber[1]=(uiNumber-100*(int)lcdaNumber[0])/10;

lcdaNumber[2]=uiNumber-100*(int)lcdaNumber[0]-10*lcdaNumber[1]; }

void LCD_init() {

vWriteLM(0x01); //

清屏

for(lcdNumCount=0;lcdNumCount<3;lcdNumCount++)

{

vShowOneChar(lcdaNumber[lcdNumCount]+48); }

//从首位到末位逐一输出。

vWriteLM(0x38); //显示模式设置:8位2行5x7点阵 vWriteLM(0x0C); //(0x0C)文字不动,光标自动右移

vWriteLM(0x0F); //显示器开、光标开、闪烁开

0k56937ns70a0pl1szsm0n19a8hrgx00gy1
领取福利

微信扫码领取福利

微信扫码分享