📄 pcf8576d.c
字号:
//***********************************************************************
//FILE: pcf8576d.c
//功能: 不同模式下,LCD的显示
//***********************************************************************
#include"main.h"
#include"I2C.h"
#include"pcf8576d.h"
//***********************************************************************
uchar DispBuff[6]={0,0,0,0,0,0}; //显示缓冲区
//extern int Humi;
/*************************************
名称: DecodeTab[10]
功能: LCD上的8段译码表
*************************************/
uchar code DecodeTab[10]=
{
0xeb,0x60,0xc7,0xe5,0x6c, //"0"到"4"
0xad,0xaf,0xe0,0xef,0xed //"5"到"9"
};
/*************************************
名称: PCF8576Disp
功能: 显示函数
*************************************/
void PCF8576Disp()
{
ISendByte(PCF8576,0x60); //选中PCF8576D
ISendStr(PCF8576,0,DispBuff,6); //将缓冲区的数据发送到8576
}
/*************************************
名称: PCF8576Temp
功能: 温度显示函数
*************************************/
void PCF8576Temp()
{
int i=Temp;
if(i>=0) //判断当前温度是零上还是零下
{
DispBuff[0]=0;
}
else
{
DispBuff[0]=0x04; //04显示-
i=-i;
}
DispBuff[1]=DecodeTab[(i/100)]; //将湿度整数部分译码写入缓冲
DispBuff[2]=DecodeTab[(i/10)%10]|DPPic; //显示"."(DP)
DispBuff[3]=DecodeTab[i%10]; //显示小数部分
DispBuff[4]=0; //第五个字节为"0",不显示
DispBuff[5]=TEMPPic; //如果是正的,显示"+",PLUSPic+TEMPPic
//否则显示"-",MINUSPic+TEMPPic;
PCF8576Disp(); //调用显示函数
}
/*************************************
名称: PCF8576Temp
功能: 湿度显示函数
*************************************/
void PCF8576Humi() //取3位显示
{
int i=Humi;
DispBuff[0]=0x6e; //6e显示H
DispBuff[1]=DecodeTab[(i/100)]; //将湿度整数部分译码写入缓冲
DispBuff[2]=DecodeTab[(i/10)%10]|DPPic; //显示"."(DP)
DispBuff[3]=DecodeTab[i%10]; //显示小数部分
DispBuff[4]=0; //第五个字节为"0",不显示
DispBuff[5]=0;
PCF8576Disp(); //调用显示函数
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -