📄 led.c
字号:
//-----------------------函数声明,变量定义--------------------------------------------------------
#include <AT89X52.H>
#include<stdio.h>
#include <intrins.h>
sbit rs = P3^5; //显示数据
sbit rw = P3^6; //读写数据
sbit ep = P3^7; //使能端
#define uchar unsigned char
#define uint unsigned int
uchar code welcomedata1[]={"应聘者 :陈耿平"};
uchar code welcomedata2[]={"电话:13822442590"};
uchar code welcomedata3[]={"QQ:286830627"};
//--------------------------------------------------------------------------------------------------
//函数:延时子程序,实现(16*N+24)us的延时
void delay(unsigned int N)
{
unsigned int i;
for(i=0;i<N;i++);
}
//-------------------------------------------------------------------------------------------------
//函数:LCD处理函数
//-------------------------------------------------------------------------------------------------
uchar lcd_bz()
{ // 测试LCD忙碌状态
uchar result;
rs = 0;
rw = 1;
ep = 1;
_nop_();
_nop_();
_nop_();
_nop_();
result = P0_7;
ep = 0;
return result;
}
void lcd_wcmd(uchar cmd)
{ // 写入指令数据到LCD
while(lcd_bz());
rs = 0;
rw = 0;
ep = 0;
_nop_();
_nop_();
P0 = cmd;
_nop_();
_nop_();
_nop_();
_nop_();
ep = 1;
_nop_();
_nop_();
_nop_();
_nop_();
ep = 0;
}
void lcd_pos(uchar pos)
{ //设定显示位置
lcd_bz();
rs = 0;
rw = 0;
P0 = pos;
ep = 1;
_nop_();
_nop_();
ep = 0;
}
void lcd_wdat(uchar dat)
{ //写入字符显示数据到LCD
while(lcd_bz());
rs = 1;
rw = 0;
ep = 0;
P0 = dat;
_nop_();
_nop_();
_nop_();
_nop_();
ep = 1;
_nop_();
_nop_();
_nop_();
_nop_();
ep = 0;
}
void lcd_init()
{ //LCD初始化设定
lcd_wcmd(0x38); //
delay(1);
lcd_wcmd(0x0c); //
delay(1);
lcd_wcmd(0x06); //
delay(1);
lcd_wcmd(0x01); //清除LCD的显示内容
delay(1);
}
void main()
{
uchar i;
lcd_init(); // 初始化LCD
delay(100);
lcd_pos(0x90); // 设置显示位置为第一行的第5个字符
i = 0;
while(welcomedata1[i] != '\0')
{ // 显示字?
lcd_wdat(welcomedata1[i]);
i++;
delay(200);
}
delay(1000);
lcd_pos(0x88); // 设置显示位置为第一行的第5个字符
i = 0;
while(welcomedata2[i] != '\0')
{ // 显示字?
lcd_wdat(welcomedata2[i]);
i++;
delay(200);
}
delay(1000);
lcd_pos(0x98); // 设置显示位置为第一行的第5个字符
i = 0;
while(welcomedata3[i] != '\0')
{ // 显示字?
lcd_wdat(welcomedata3[i]);
i++;
delay(200);
}
delay(1000);
while(1);
}
//-------------------------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -