📄 main.c
字号:
//;*******************************************************
//; 图形点阵液晶显示器实验说明
//;实验目的: 1.掌握使用图形点阵液晶显示字体和图形。
//;实验内容: 1.显示一个图形
//; 2.显示一段字,包括汉字和英文
//;连线说明:
//;液晶12864J: A1区-->A3区
//; CS-->CS1(0F000H),片选
//; RW-->A0,读/写控制端
//; RS-->A1,数据/指令控制端
//; CS1/2-->A2,左右半屏使能端
//;*******************************************************
extern void LCD_INIT();
extern void WordDisL(unsigned char x, unsigned char y,unsigned char * pt);
extern void WordDisR(unsigned char x, unsigned char y,unsigned char * pt);
extern void ByteDisL(unsigned char x, unsigned char y,unsigned char * pt);
extern void ByteDisR(unsigned char x, unsigned char y,unsigned char * pt);
//-- 文字: 星 --
code const unsigned char Line1_1[] = {
0x00,0x00,0xFC,0x82,0x82,0xAA,0x2A,0xAA,0xAA,0xAA,0x2A,0x02,0x02,0xFC,0x00,0x00,
0x00,0xEE,0x9B,0x90,0x98,0x94,0x95,0x80,0x80,0x80,0x95,0x95,0x95,0x95,0xFF,0x00};
//-- 文字: 研 --
code const unsigned char Line1_2[] = {
0x9E,0x62,0x02,0x02,0x02,0x32,0xFE,0x62,0x02,0x02,0x32,0x02,0x02,0x02,0x62,0xDC,
0x03,0x3C,0x40,0x40,0x46,0x40,0xF1,0x8E,0x80,0x40,0x7C,0x80,0x80,0x80,0xFE,0x03};
//-- 文字: 电 --
code const unsigned char Line1_3[] = {
0x00,0xF8,0x04,0x04,0x44,0x44,0x06,0x02,0x02,0x46,0x44,0x04,0x04,0xF8,0x00,0x00,
0x00,0x0F,0x10,0x10,0x11,0x11,0xF0,0x80,0x90,0x91,0x91,0x8C,0x84,0x87,0xC8,0x78};
//-- 文字: 子 --
code const unsigned char Line1_4[] = {
0x80,0x40,0x5E,0x52,0x52,0x52,0x32,0x72,0x82,0x82,0x42,0x62,0x52,0x4C,0xC0,0x00,
0x07,0x04,0x04,0x04,0xFC,0x8C,0x8C,0x80,0x80,0x7C,0x04,0x04,0x04,0x04,0x07,0x00};
//第2行显示"星研电子"
void DisLine1()
{
WordDisL(2,32,Line1_1); //第2行,第32列,左半屏,显示一个字子程序
WordDisL(2,48,Line1_2);
WordDisR(2,0,Line1_3); //右半屏,显示一个字子程序
WordDisR(2,16,Line1_4);
}
//"STAR ES51PRO"
code const unsigned char Line2_1[] = {
0x00,0x70,0x88,0x08,0x08,0x08,0x38,0x00,0x00,0x38,0x20,0x21,0x21,0x22,0x1C,0x00};
code const unsigned char Line2_2[] = {
0x18,0x08,0x08,0xF8,0x08,0x08,0x18,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00};
code const unsigned char Line2_3[] = {
0x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x20,0x3C,0x23,0x02,0x02,0x27,0x38,0x20};
code const unsigned char Line2_4[] = {
0x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x00,0x03,0x0C,0x30,0x20};
code const unsigned char Line2_5[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
code const unsigned char Line2_6[] = {
0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00};
code const unsigned char Line2_7[] = {
0x00,0x70,0x88,0x08,0x08,0x08,0x38,0x00,0x00,0x38,0x20,0x21,0x21,0x22,0x1C,0x00};
code const unsigned char Line2_8[] = {
0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00};
code const unsigned char Line2_9[] = {
0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00};
code const unsigned char Line2_10[] = {
0x08,0xF8,0x08,0x08,0x08,0x08,0xF0,0x00,0x20,0x3F,0x21,0x01,0x01,0x01,0x00,0x00};
code const unsigned char Line2_11[] = {
0x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x00,0x03,0x0C,0x30,0x20};
code const unsigned char Line2_12[] = {
0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00};
//第3行显示"STAR ES51PRO"
void DisLine2()
{
ByteDisL(4,16,Line2_1); //第4行,第16列,左半屏,显示一个字节子程序
ByteDisL(4,24,Line2_2);
ByteDisL(4,32,Line2_3);
ByteDisL(4,40,Line2_4);
ByteDisL(4,48,Line2_5);
ByteDisL(4,56,Line2_6);
ByteDisR(4,0,Line2_7); //右半屏字节显示数据
ByteDisR(4,8,Line2_8);
ByteDisR(4,16,Line2_9);
ByteDisR(4,24,Line2_10);
ByteDisR(4,32,Line2_11);
ByteDisR(4,40,Line2_12);
}
//-- 文字: 欢 --
const unsigned char Line3_1[] = {
0x14,0x24,0x44,0x84,0x64,0x1C,0x20,0x18,0x0F,0xE8,0x08,0x08,0x28,0x18,0x08,0x00,
0x20,0x10,0x4C,0x43,0x43,0x2C,0x20,0x10,0x0C,0x03,0x06,0x18,0x30,0x60,0x20,0x00};
//-- 文字: 迎 --
const unsigned char Line3_2[] = {
0x40,0x41,0xCE,0x04,0x00,0xFC,0x04,0x02,0x02,0xFC,0x04,0x04,0x04,0xFC,0x00,0x00,
0x40,0x20,0x1F,0x20,0x40,0x47,0x42,0x41,0x40,0x5F,0x40,0x42,0x44,0x43,0x40,0x00};
//-- 文字: 使 --
const unsigned char Line3_3[] = {
0x40,0x20,0xF0,0x1C,0x07,0xF2,0x94,0x94,0x94,0xFF,0x94,0x94,0x94,0xF4,0x04,0x00,
0x00,0x00,0x7F,0x00,0x40,0x41,0x22,0x14,0x0C,0x13,0x10,0x30,0x20,0x61,0x20,0x00};
//-- 文字: 用 --
const unsigned char Line3_4[] = {
0x00,0x00,0x00,0xFE,0x22,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0xFE,0x00,0x00,
0x80,0x40,0x30,0x0F,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x42,0x82,0x7F,0x00,0x00};
//第4行显示"欢迎使用"
void DisLine3()
{
WordDisL(6,32,Line3_1); //第6行, 第32列,左半屏,显示一个字子程序
WordDisL(6,48,Line3_2); //第6行, 第48列
WordDisR(6,0,Line3_3); //右半屏,显示一个字子程序
WordDisR(6,16,Line3_4);
}
//延时程序
void DelayTime()
{
unsigned char i;
unsigned int j;
for (i = 0; i < 3; i++)
{
for (j = 0; j < 0xffff; j++)
{;}
}
}
main()
{
while (1)
{
LCD_INIT(); //液晶初始化
DelayTime(); //延时
DisLine1(); //第2行显示"星研电子"
DelayTime();
DisLine2(); //第3行显示"STAR ES51PRO"
DelayTime();
DisLine3(); //第4行显示"欢迎使用"
DelayTime();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -