📄 lcd1602.c
字号:
#include"Bit_Define.h"
sbit RS=P1^0;
sbit RW=P1^1;
sbit LCDE=P1^2;
//延时函数
void delay(uint t)
{
while(t--);
}
void delay5ms()
{
register int i;
for (i=0;i<1000;i++);
}
void delay50us()
{
register int i;
for (i=0;i<20;i++)
;
}
wr_com(unsigned char comm)
{
LCDE=0;
RS=0;
RW=0;
LCDE=1;
LCD_Data=comm;
RS=0;
RW=0;
LCDE=0;
}
wr_data(unsigned char dat)
{
LCDE=0;
RS=0;
RW=0;
RS=1;
RW=0;
LCDE=1;
LCD_Data=dat;
LCDE=0;
RS=0;
RW=0;
}
uchar rd_bf()
{
unsigned char i;
LCD_Data=0xff;
LCDE=0;
RS=0;
RW=0;
RS=0;
RW=1;
LCDE=1;
i=LCD_Data;
LCDE=0;
return(i);
}
void init(void)
{
uchar in;
wr_com(0x38); //显示模式设置
delay5ms();
wr_com(0xff); //开显示 关0x0d
delay5ms();
wr_com(0x07);///
delay5ms();
in=rd_bf();///
delay5ms();///
wr_com(0x01);//清屏
delay5ms();
in=rd_bf();
delay5ms();
wr_com(0x06); // 显示开光标位置
delay5ms();
in=rd_bf();
delay50us();
wr_com(0x38);//设置第二行
delay50us();
in=rd_bf();
delay50us();
wr_com(0x0c);
delay50us();
in=rd_bf();
delay50us();
wr_com(0x40); //set cgram address
delay50us();
in=rd_bf();
delay50us();
}
void display_t(float temp,uchar *t)
{
unsigned char in,i;
char j;
wr_com(0x80); //set ram address
delay50us();
in=rd_bf();
delay(20);
tempdata[0]=(uchar)(temp)/10+48; //十位
tempdata[1]=(uchar)(temp)%10+48; //个位
tempdata[2]=0x2e;//小数点 .
tempdata[3]=(uchar)(temp*10)%10+48;
tempdata[4]=(uchar)(temp*100)%10+48;
for(j=6;j>=3;j--)
{
wr_data(t[j]/10+48); //display 温度
delay50us();
in=rd_bf();
wr_data(t[j]%10+48); //display 温度
delay50us();
in=rd_bf();
wr_data('-'); //display 温度
delay50us();
in=rd_bf();
}
in=rd_bf();
delay50us();
wr_com(0xc0);
delay50us();
in=rd_bf();
delay50us();
for(j=2;j>=1;j--)
{
wr_data(t[j]/10+48); //display 温度
delay50us();
in=rd_bf();
wr_data(t[j]%10+48); //display 温度
delay50us();
in=rd_bf();
wr_data('-'); //display 温度
delay50us();
in=rd_bf();
}
wr_data(t[j]/10+48); //display 温度
delay50us();
in=rd_bf();
wr_data(t[j]%10+48); //display 温度
delay50us();
in=rd_bf();
for(i=0;i<3;i++)
{
wr_data(0X20); //display 空格
delay50us();
in=rd_bf();
}
for(i=0;i<TN;i++)
{
wr_data(tempdata[i]); //display 温度
delay50us();
in=rd_bf();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -