Print(xiaoshu_temp);
}
else //负 { Print(\ Print(zhen_temp); if(dot_dis)
Print(\
Print(xiaoshu_temp);
}
Print(\ //delay(100);
}
while(1);
}
void delay1_64ms(void) { uchar i;
for(i = 0;i < 250;i++) { _nop_(); _nop_(); _nop_(); _nop_();
}
}
/******功能:延时40us**参数:无/*void delay40us(void) { uchar i;
for(i = 0;i < 20;i++) {
;
11
****/
}
}*/
/******功能:判断LCD忙 ****参数:无 ****/ unsigned char Lcd_Wait(void) { while(1) {
DBPort=0xff; LcdEn=0; _nop_(); LcdRs=0; _nop_(); _nop_(); LcdRw=1; _nop_(); _nop_(); LcdEn=1; _nop_(); _nop_(); _nop_(); _nop_();
if((DBPort&0x80)==0) { break;
} LcdEn=0; }
//delay40us(); return DBPort;
}
/*******功能:写LCD函数****参数:style为写命令/数据,0-命令,数据;input为写入的8位 ****命令/数据*****/
void Lcd_Write(bit style,unsigned char input) {
12
1- }
LcdEn=0; _nop_(); _nop_(); LcdRs=style; _nop_(); _nop_(); LcdRw=0; DBPort=input; _nop_(); _nop_(); LcdEn=1; _nop_(); _nop_(); LcdEn=0; _nop_(); Lcd_Wait();
/*********功能:LCD清屏函数**参数:无*******/ void ClrScreen(void) { }
/*********功能:LCD归位函数**参数:无 *******/ void Screen_home(void) { }
/********功能:设置显示模式 **参数: ******/ void Lcd_SetDisplay(unsigned char DisplayMode) { }
Lcd_Write(Lcd_Command,0x08|DisplayMode); Lcd_Write(Lcd_Command,Lcd_Home); //delay1_64ms();
Lcd_Write(Lcd_Command,Lcd_Clear_Screen); //delay1_64ms();
13
/********功能:LCD移动设置 **参数:取值如下 ******/ void Lcd_Move(unsigned char MoveMode) { }
/*********功能:LCD输入设置**参数:取值如下 *******/ void Lcd_SetInput(unsigned char InputMode) { }
/*********功能:LCD初始化**参数:取值如下*******/ void Lcd_Init(void) {
Lcd_Write(Lcd_Command,0x38); //8位数据端口,2行显示,5*7点阵 Lcd_SetDisplay(Lcd_Display_On); //开启显示, 无光标|Lcd_Cursor|Lcd_Flash }
/*********功能:显示位置设置**参数:x-行;y-列 *******/ void GotoXY(unsigned char x,unsigned char y) { }
/********功能:LCD显示函数**参数:str-要显示的字符串指针*****/ void Print(unsigned char *str) {
while(*str!='\\0') { if(y==0)
{Lcd_Write(Lcd_Command,0x80|x); }
{Lcd_Write(Lcd_Command,0x80|(x+0x40)); }
//Lcd_Move(Lcd_CursorMove|Lcd_Left);
Lcd_SetInput(Lcd_Ac_Up|Lcd_No_Move); //AC递增, 画面不动_To Lcd_Write(Lcd_Command,0x04|InputMode); Lcd_Write(Lcd_Command,0x10|MoveMode);
if(y==1)
14
Lcd_Write(Lcd_Data,*str); str++; }
}
void print_char(uchar a) { if(a>=0&&a<=9)
Lcd_Write(Lcd_Data,a+'0'); else if(a>=0x0a &&a<= 0x0f)
Lcd_Write(Lcd_Data,a+0x37);
}
void delay600us(void)
{ uchar i;
for(i=0;i<255;i++);
}
/******功能:延时60us **参数:无void delay60us(void) { uchar i;
for(i=0;i<20;i++);
}
/******功能:延时240us **参数:无void delay240us(void) { uchar i;
for(i=0;i<80;i++); }
/******功能:延时18us **参数:无/*void delay15us(void) { uchar i;
for(i=0;i<2;i++); }*/
15
****/ ****/ ***/