📄 exercize2.c
字号:
/* lcd command */
#include<regx51.h>
#define twoline_8bit 56
#define clear 1
#define cursor_home 2
#define cursor_left 4
#define cursor_right 6
#define cursor_off 12
#define cursor_on 14
#define goto_line_2 192
#define goto_line_1 128
/* lcd control lines */
sbit rs=P3^5 ;
sbit rw=P3^4 ;
sbit enable=P3^3 ;
void delay()
{
int b,a;
for(b=0;b<250;b++)
for(a=0;a<250;a++);
}
void write_lcd_command(unsigned command)
{
rw=0;
rs=0;
enable=1;
P1=command;
delay();
enable=0;
rw=1;
}
void write_lcd_data(unsigned lcddata)
{
rw=0;
rs=1;
enable=1;
P1=lcddata;
delay();
enable=0;
rw=1;
}
void init_lcd(void)
{
write_lcd_command(twoline_8bit);
write_lcd_command(cursor_off);
write_lcd_command(cursor_right);
}
void clear_lcd()
{
write_lcd_command(0x01);
write_lcd_command(0x02);
write_lcd_command(0x80);
}
void display_lcd_string(char *p)
{
while(*p)
{
write_lcd_data(*p);
p++;
}
}
void gotoxy(unsigned x,unsigned y)
{
if(x==1)
write_lcd_command(goto_line_1+y);
else
write_lcd_command(goto_line_2+y);
}
void main(void)
{
init_lcd();
clear_lcd();
display_lcd_string("Hello Keil C");
gotoxy(2,1);
display_lcd_string("LCD display");
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -