sht11+LCD12864温湿度计带万年历功能中断按键设置日期 lcdh文件Word下载.docx
- 文档编号:19002205
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:17
- 大小:17.07KB
sht11+LCD12864温湿度计带万年历功能中断按键设置日期 lcdh文件Word下载.docx
《sht11+LCD12864温湿度计带万年历功能中断按键设置日期 lcdh文件Word下载.docx》由会员分享,可在线阅读,更多相关《sht11+LCD12864温湿度计带万年历功能中断按键设置日期 lcdh文件Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
for(i=0;
i<
125;
i++);
}
Lcd_Display_On()
LCD显示开
voidLcd_Display_On()
{
port=0x3f;
rs=0;
rw=0;
e=1;
e=0;
Lcd_Display_Off()
LCD显示关
voidLcd_Display_Off()
port=0x3e;
Lcd_Set_X(ucharx)
LCD设置X坐标
x
voidLcd_Set_X(ucharx)
port=0xb8|x;
Lcd_Set_Y(uchary)
LCD设置Y坐标
y
voidLcd_Set_Y(uchary)
port=0x40|y;
Lcd_Set_X_Y(ucharx,uchary)
LCD设置xy坐标
xy
voidLcd_Set_X_Y(ucharx,uchary)
if(y<
64)
{cs1=1;
cs2=0;
Lcd_Set_Y(y);
}
else
{cs1=0;
cs2=1;
Lcd_Set_Y(y-64);
Lcd_Set_X(x);
Lcd_Write_Command()
写指令代码
voidLcd_Write_Command(uchartemp)
port=temp;
Lcd_Write_Byte()
写数据
voidLcd_Write_Byte(uchartemp)
rs=1;
/****************************************************************************
*名称:
Lcd_Character_16X8(bitbit_flag,ucharx,uchary,ucharcode*point)
*功能:
显示16X8字符(字母)
*入口参数:
*出口参数:
*说明:
bit_flag=1正常显示bit_flag=0黑白反相显示
****************************************************************************/
voidLcd_Character_16X8(bitbit_flag,ucharx,uchary,ucharcode*point)
uchari,j,temp;
temp=y;
if(bit_flag)
{
for(i=0;
i<
2;
i++)
{
x+=i;
y=temp;
for(j=0;
j<
8;
j++)
Lcd_Set_X_Y(x,y);
y++;
Lcd_Write_Byte(point[i*8+j]);
}
for(i=0;
i<
2;
x+=i;
y=temp;
for(j=0;
j<
8;
j++)
Lcd_Write_Byte(~point[i*8+j]);
*名称:
Lcd_Character_16X16(bitbit_flag,ucharx,uchary,ucharcode*point)
*功能:
显示16*16字符(汉字)
xydata
bit_flag=1正常显示bit_flag=0黑白反相显示
voidLcd_Character_16X16(bitbit_flag,ucharx,uchary,ucharcode*point)
uchari,j,temp;
16;
Lcd_Write_Byte(point[i*16+j]);
16;
Lcd_Write_Byte(~point[i*16+j]);
Lcd_Clear(void)
清屏
voidLcd_Clear()
uchari,j;
cs1=1;
cs2=1;
i++)
Lcd_Set_X(i);
Lcd_Set_Y(0);
for(j=0;
64;
j++)
Lcd_Write_Byte(0x00);
/*******************************************************************************************
Lcd_Initial()
初始化LCD
voidLcd_Initial()
Lcd_Display_Off();
Lcd_Write_Command(0xb8);
//Page_Add
Lcd_Write_Command(0x40);
//Col_Add
Lcd_Write_Command(0xc0);
//Start_Line
Lcd_Display_On();
Lcd_Clear();
Lcd_Time(uchar*clock_time)
显示时间
无
*说明:
时间数组BCD码形式
voidLcd_T_H(floatT,intH)
uchari=0;
if(T<
0)
Lcd_Character_16X8(1,4,48,letter_logo[11]);
//显示符号
T=-T;
Lcd_Character_16X8(1,4,48,letter_logo[12]);
i=(int)(T/10)%10;
Lcd_Character_16X8(1,4,56,letter_logo[i]);
//显示温度高位
i=(int)T%10;
Lcd_Character_16X8(1,4,64,letter_logo[i]);
//显示温度低位
Lcd_Character_16X8(1,4,72,letter_logo[14]);
//显示小数点
i=(int)(T*10)%10;
Lcd_Character_16X8(1,4,80,letter_logo[i]);
//显示温度小数位
Lcd_Character_16X8(1,4,88,temperture_logo[0]);
//显示
Lcd_Character_16X8(1,4,96,temperture_logo[1]);
i=H/10;
Lcd_Character_16X8(1,6,56,letter_logo[i]);
i=H%10;
Lcd_Character_16X8(1,6,64,letter_logo[i]);
Lcd_Character_16X8(1,6,72,letter_logo[13]);
voidLcd_Time(uchar*clock_time)
//显示"
hour时min分sec秒"
i=*clock_time>
>
4;
Lcd_Character_16X8(1,2,80,letter_logo[i]);
//显示sec的高位
i=*clock_time&
0x0f;
Lcd_Character_16X8(1,2,88,letter_logo[i]);
//显示sec的低位
Lcd_Character_16X16(1,2,96,time_logo[2]);
//显示秒
clock_time++;
Lcd_Character_16X8(1,2,48,letter_logo[i]);
//显示min的高位
Lcd_Character_16X8(1,2,56,letter_logo[i]);
//显示min的低位
Lcd_Character_16X16(1,2,64,time_logo[1]);
//显示分
Lcd_Character_16X8(1,2,16,letter_logo[i]);
//显示hour的高位
Lcd_Character_16X8(1,2,24,letter_logo[i]);
//显示hour的低位
Lcd_Character_16X16(1,2,32,time_logo[0]);
//显示分
Lcd_Data(uchar*clock_time)
显示日期
voidLcd_Data(uchar*clock_time)
clock_time+=3;
year年month月day日"
Lcd_Character_16X8(1,0,80,letter_logo[i]);
//显示day的高位
Lcd_Character_16X8(1,0,88,letter_logo[i]);
//显示day的低位
Lcd_Character_16X16(1,0,96,data_logo[2]);
//显示日
4;
Lcd_Character_16X8(1,0,48,letter_logo[i]);
//显示month的高位
Lcd_Character_16X8(1,0,56,letter_logo[i]);
//显示month的低位
Lcd_Character_16X16(1,0,64,data_logo[1]);
//显示月
clock_time++;
Lcd_Character_16X8(1,0,16,letter_logo[i]);
//显示year的高位
Lcd_Character_16X8(1,0,24,letter_logo[i]);
//显示year的低位
Lcd_Character_16X16(1,0,32,data_logo[0]);
//显示年
voidLcd_Week(ucharweek)
Lcd_Character_16X16(1,6,16,week_logo[7]);
//星
Lcd_Character_16X16(1,6,32,week_logo[8]);
//期
Lcd_Character_16X16(1,6,48,week_logo[week&
0x0f]);
/******************************************************************************
*函数名称:
Lcd_Clock(uchar*clock_time)
*功能:
显示时钟
*入口参数:
时钟地址
*出口参数:
无
********************************************************************************/
voidLcd_Clock(uchar*clock_time)
Lcd_Data(clock_time);
//显示日期
Lcd_Time(clock_time);
//显示时间
*名称:
voidLcd_Lunar_Calendar(uchar*lunch_calendar)
显示农历
农力指针
*******************************************************************************/
voidLcd_Lunar_Calendar(uchar*lunar_canlendar)
//农历
Lcd_Character_16X16(1,4,16,lunar_calendar_logo[0]);
Lcd_Character_16X16(1,4,32,lunar_calendar_logo[1]);
//year-mongth-day
i=*lunar_canlendar>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sht11+LCD12864温湿度计带万年历功能中断按键设置日期 lcdh文件 sht11 LCD12864 温湿度 万年历 功能 中断 按键 设置 日期 lcdh 文件
链接地址:https://www.bdocx.com/doc/19002205.html