📄 tempre.c
字号:
#include<reg51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define lcd_bus P1
uchar offset=0x80;
// lcd
sbit rs=P3^0;
sbit rw=P3^1;
sbit e =P3^2;
/**********************定义PT2262接收引脚P2.0P2.1P2.2P2.3***************/
#define re_bus P2
delay(uchar d)
{
while(--d);
}
/**********判断忙标志,返回的是一个位BF**********/
bit lcd_busy(void)
{
uchar bflag;
rs=0;
rw=1;
_nop_();
e=1;
_nop_();
lcd_bus=0xff;
bflag=lcd_bus;
e=0;
return(bit)(bflag&0x80); //BF=1 busy
}
/*********写命令,有两个参数,第一个是要写的命令控制字,
第二个是用来控制是否进行忙标志的判断。
busyflag=1:判断;为 0:不判断****************/
void lcd_wrcmd(uchar cmd)
{
while(lcd_busy());
lcd_bus=cmd;
rs=0;
rw=0;
_nop_();
e=1;
_nop_();
_nop_();
e=0;
}
/************向液晶片写数据***************/
void lcd_wrdata( uchar lcddata)
{
while(lcd_busy());
lcd_bus=lcddata;
rs=1;
rw=0;
_nop_();
e=1;
_nop_();
_nop_();
e=0;
}
/****************初始化***************/
void lcd_ini(void)
{
lcd_wrcmd(0x38);
delay(100);
lcd_wrcmd(0x0c);
delay(100);
lcd_wrcmd(0x06);
delay(100);
lcd_wrcmd(0x01);
delay(100);
}
uchar re_temp(void)
{
uchar receive,remsb.relsb;
do
{re_bus=0xff;
receive=re_bus;
receive=receive&0x0f;
}while(receive!=0x0f)
remsb=receive;
{receive=re_bus;
receive=<<4;
receive1=re_bus;
re=receive|receive1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -