lcd.c

来自「单片机80c51 开发的 家庭电器控制」· C语言 代码 · 共 67 行

C
67
字号
#include "lcd.h"

bit_8 code mesg1[]={0x00,0x00,0x00,0x0F,0x08,0x0B,0x08,0x0B};
bit_8 code mesg2[]={0x00,0x00,0x00,0x1E,0x02,0x1A,0x02,0x1A};
bit_8 code mesg3[]={0x18,0x14,0x12,0x13,0x14,0x18,0x1F,0x00};
bit_8 code mesg4[]={0x03,0x05,0x09,0x19,0x05,0x03,0x1F,0x00};

void lcd_init(void)
{
	bit_8 i;
	lcd_sendcommand(0X38);
	lcd_sendcommand(DISP_ON_CUR_OFF);
	lcd_sendcommand(LCD_CLEAR);
	lcd_sendcommand(INC_CURSOR);
	lcd_sendcommand(RETURN_HOME);
	lcd_sendcommand(0x40);
	for(i=0;i<8;i++)
		lcd_sendchar(0);
	for(i=0;i<8;i++)
		lcd_sendchar(mesg1[i]);
	for(i=0;i<8;i++)
		lcd_sendchar(mesg2[i]);
	for(i=0;i<8;i++)
		lcd_sendchar(mesg3[i]);
	for(i=0;i<8;i++)
		lcd_sendchar(mesg4[i]);
	lcd_sendcommand(RETURN_HOME);
}

void busy()
{
	D7=1;
	rs=0;
	rw=1;
	while(D7!=0)
	{
		en=0;
		en=1;
	}
}

void lcd_sendcommand(bit_8 val)
{
	busy();
	lcd_port=val;
	rs=0;
	rw=0;
	en=1;
	en=0;
}

void lcd_sendstr(bit_8 *string)
{
	while(*string)
		lcd_sendchar(*string++);
}

void lcd_sendchar(bit_8 ch)
{
	busy();
	lcd_port = ch;
	rs=1;
	rw=0;
	en=1;
	en=0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?