📄 lcdlogo.c
字号:
#include "LcdBase.h"
void config(void);
void autoMoveDisplay(void);
void manualMoveDisplay(void);
void leafLogo(void);
void main(void)
{
uchar readData[6];
uchar t;
config();
lcdInit();
manualMoveDisplay();
LCD_CLEAR;
/* leafLogo();
lcdDelay1ms(1000, 2);
LCD_INIT_LINE1_ADDR;
lcdWriteCmd(0x01); //显示自定义点阵
lcdWriteCmd(0x31);
lcdWriteCmd(0x32);
lcdWriteCmd(0x61);
lcdWriteCmd(0x62);
lcdWriteCmd(0x71);
lcdWriteCmd(0x80);
LCD_INIT_LINE1_ADDR;
for (t=0; t<6; t++)
readData[t] = lcdReadData(); */
lcdDelay1ms(1000, 2);
autoMoveDisplay();
while (1);
}
void config(void)
{
WDTCN = 0xde;
WDTCN = 0xad;
SFRPAGE = CONFIG_PAGE;
XBR2 = 0x40;
P4MDOUT = 0x00;
P5MDOUT = 0x07;
CLKSEL = 0x00;
OSCXCN = 0x00;
OSCICN = 0x82;
}
void autoMoveDisplay(void)
{
uchar i;
LCD_CLEAR;
lcdDelay1ms(2, 2);
LCD_INIT_LINE1_ADDR;
for (i=0; i<16; i++)
lcdWriteData('a'+i);
lcdDelay1ms(1000, 2);
LCD_MOVE_INC_MODE;
for (i=0; i<26; i++)
{
lcdWriteData('A'+i);
lcdDelay1ms(500, 2);
}
for (i=0; i<26; i++)
{
lcdWriteData('a'+i);
lcdDelay1ms(500, 2);
}
}
void manualMoveDisplay(void)
{
uchar i;
LCD_INIT_LINE1_ADDR;
for (i=0; i<26; i++)
{
lcdWriteData('a'+i);
}
lcdDelay1ms(500, 2);
for (i=0; i<40; i++)
{
LCD_SCROLL_LEFT;
lcdDelay1ms(500, 2);
}
for (i=0; i<12; i++)
{
lcdWriteData('0'+i);
}
lcdDelay1ms(500, 2);
LCD_INIT_LINE2_ADDR;
for (i=0; i<26; i++)
{
lcdWriteData('A'+i);
}
for (i=0; i<12; i++)
{
lcdWriteData('0'+i);
}
lcdDelay1ms(500, 2);
for (i=0; i<40; i++)
{
LCD_SCROLL_LEFT;
lcdDelay1ms(500, 2);
}
}
void leafLogo(void)
{
lcdWriteCmd(0x48); //CG RAM 地址设定指令,写地址0x08,即定义代码0x01的点阵数据
lcdWriteData(0x04); //给CG RAM写数据,定义点阵数据,为一片叶子的点阵,一共8行
lcdWriteData(0x0e);
lcdWriteData(0x1f);
lcdWriteData(0x1f);
lcdWriteData(0x1f);
lcdWriteData(0x0e);
lcdWriteData(0x04);
lcdWriteData(0x0e);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -