PIC单片机实例四温度测量系统的设计与仿真 - 图文(6)

2019-08-01 23:51

}

/*-------------------------------------------------------*/

void ChangeTemp3(int val)

{

int D_ge,D_shi,D_bai,sign;

sign=val&0x80; val=val&0x7f;

if(sign==0)

{

Show16X32(2,20,zhenghao);

} if(sign) {

val=(~val+1)&0x7f; Show16X32(2,20,fuhao);

} if(val==0)

{

Show16X32(2,20,nonono);

}

D_ge=val; D_shi=val0/10; D_bai=val/100;

switch(D_ge)

{

case 0:{Show16X32(2,68,ss0);break;} case 1:{Show16X32(2,68,ss1);break;} case 2:{Show16X32(2,68,ss2);break;} case 3:{Show16X32(2,68,ss3);break;} case 4:{Show16X32(2,68,ss4);break;} case 5:{Show16X32(2,68,ss5);break;} case 6:{Show16X32(2,68,ss6);break;} case 7:{Show16X32(2,68,ss7);break;} case 8:{Show16X32(2,68,ss8);break;} case 9:{Show16X32(2,68,ss9);break;}

} switch(D_shi)

{

case 0:{Show16X32(2,52,ss0);break;} case 1:{Show16X32(2,52,ss1);break;} case 2:{Show16X32(2,52,ss2);break;}

case 3:{Show16X32(2,52,ss3);break;} case 4:{Show16X32(2,52,ss4);break;} case 5:{Show16X32(2,52,ss5);break;} case 6:{Show16X32(2,52,ss6);break;} case 7:{Show16X32(2,52,ss7);break;} case 8:{Show16X32(2,52,ss8);break;} case 9:{Show16X32(2,52,ss9);break;}

} switch(D_bai)

{

case 0:{Show16X32(2,36,ss0);break;} case 1:{Show16X32(2,36,ss1);break;} case 2:{Show16X32(2,36,ss2);break;} case 3:{Show16X32(2,36,ss3);break;} case 4:{Show16X32(2,36,ss4);break;} case 5:{Show16X32(2,36,ss5);break;} case 6:{Show16X32(2,36,ss6);break;} case 7:{Show16X32(2,36,ss7);break;} case 8:{Show16X32(2,36,ss8);break;} case 9:{Show16X32(2,36,ss9);break;}

} if(val>=val1)

{

Show16X16(6,32,zhu); Show16X16(6,48,yi); Show16X16(6,64,fang); Show16X16(6,80,shu);

} if(val<=val2)

{

Show16X16(6,32,zhu); Show16X16(6,48,yi); Show16X16(6,64,bao); Show16X16(6,80,nuan);

}

if((val>val2)&&(val

{

Show16X16(6,32,nononono); Show16X16(6,48,nononono); Show16X16(6,64,nononono); Show16X16(6,80,nononono);

} }

/*-------------------------------------------------------*/

//显示第一页的内容 void LCDShow1()

{

Show16X16(0,16,wen);//温 Show16X16(0,32,du);//度 Show16X16(0,48,ce);//测 Show16X16(0,64,liang);//量 Show16X16(0,80,xi);//系 Show16X16(0,96,tong);//统 Show16X16(2,1,zuo);//作 Show16X16(2,17,zhe);//者 Show8X16(2,33,maohao);//?:? Show8X16(2,41,dw);//'w' Show8X16(2,49,uu);//'u' Show8X16(2,57,jj);//'j' Show8X16(2,65,ii);//'i' Show8X16(2,73,ee);//'e' Show8X16(2,81,ff);//'f' Show8X16(2,89,ll);//'l' Show8X16(2,97,aa);//'a' Show8X16(2,105,ss);//'s' Show8X16(2,113,hh);//'h' Show16X16(4,1,ban);//版 Show16X16(4,17,ben);//本 Show8X16(4,33,maohao);//':?

Show8X16(4,41,vv);//?v' Show8X16(4,49,s1);//'1' Show8X16(4,57,juhao);//'.' Show8X16(4,65,s0);//'0' Show16X16(6,20,zheng);//正 Show16X16(6,36,zai);//在 Show16X16(6,52,chu);//初 Show16X16(6,68,shi);//使 Show16X16(6,84,hua);//化 Show8X16(6,100,dian);//?。? Show8X16(6,108,dian);//?。? Show8X16(6,116,dian);//?。?

}

/*----------------------------------------------------------*/

//显示第二页子程序 void LCDShow2()

{

Show16X16(0,32,dang);//当

Show16X16(0,48,qian);//前 Show16X16(0,64,wen);//温 Show16X16(0,80,du);//度 //Show16X32(2,20,zhenghao); //Show16X32(2,52,ss0); //Show16X32(2,68,ss0); Show16X32(2,84,danwei_c1);//单位 Show16X32(2,100,danwei_c2);

}

/*----------------------------------------------------------*/

//显示第三页子程序 void LCDShow3()

{

Show16X16(0,48,she);//设 Show16X16(0,64,zhi);//置 Show16X16(2,0,shang);//上 Show16X16(2,16,xian);//限 Show16X16(2,32,wen);//温 Show16X16(2,48,du);//度 Show8X16(2,64,maohao);//“:” ChangeTemp1(val1);//参数 Show16X16(2,104,danwei_c);//单位

Show16X16(4,0,xia);//下 Show16X16(4,16,xian);//限 Show16X16(4,32,wen);//温 Show16X16(4,48,du);//度 Show8X16(4,64,maohao);//“:” ChangeTemp2(val2);//参数 Show16X16(4,104,danwei_c);//单位

}

/*---------------------------------------------------------*/

//LCD初始化子程序 void LCDinit()

{ int i; PORTD=0x00; TRISB=0x00; PORTB=0x00; TRISC=0x80; PORTC=0x00; TRISC5=1; TRISC6=1;

SetOnOff(1);//开显示 LCDShow1();//初始画面 for(i=30;i>0;i--)//延时

{

delay(201,132);

} }

/*----------------------------------------------------------*/

//主函数 void main()

{

init(); //调用系统初始化函数

LCDinit(); ClearScreen(1);//清屏 ClearScreen(2); LCDShow2();//显示第二页

while(1) {

get_temp(); //调用温度转换函数

PORTD=TZ; ChangeTemp3(TZ);

if(RC5==0)

{ while(1)

{

ClearScreen(1); ClearScreen(2); LCDShow3(); while(1)//等待RC5键松开

{

if(RC5==1)break;

}

Show8X16(4,120,nono);

Show8X16(2,120,xinghao);//显示星号,作指示

while(1)

{ if(RC6==0)

{ val1++; if(val1>=128)

{ val1=128;

}


PIC单片机实例四温度测量系统的设计与仿真 - 图文(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:初三物理试卷第三次模拟考试

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: