📄 lcdinterface.c
字号:
#include<AT89X52.h>
#include"LCDDriver.h"
#define uchar unsigned char
code uchar VV[8]={ //--V
0x00,0x1F,0x20,0x40,0x20,0x1F,0x00,0x00
};
code uchar NUM1[8]={ //--1
0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00
};
code uchar DOT[8]={ //--.
0x00,0x00,0x60,0x60,0x00,0x00,0x00,0x00
};
uchar code arrowhead1[8]={
/*-- 调入了一幅图像:箭头上部分 --*/
/*-- 宽度x高度=8x8 --*/
0x80,0x80,0x80,0x80,0x80,0xE0,0xC0,0x80,
};
uchar code arrowhead2[8]={
/*-- 调入了一幅图像:箭头下部分 --*/
/*-- 宽度x高度=8x8 --*/
0x01,0x01,0x01,0x01,0x01,0x07,0x03,0x01,
};
/*-- 文字: 多 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar duo[32]={
0x00,0x00,0x00,0x20,0x90,0x88,0x54,0x53,0xA2,0x22,0x12,0x0A,0x06,0x00,0x00,0x00,
0x00,0x81,0x89,0x89,0x44,0x44,0x42,0x25,0x29,0x11,0x11,0x09,0x05,0x03,0x01,0x00,
};
/*-- 文字: 路 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar lu[32]={
0x00,0x7E,0x22,0xE2,0x3E,0x20,0x10,0x08,
0x0F,0xB4,0x44,0xA4,0x9C,0x04,0x00,0x00,
0x20,0x3F,0x20,0x1F,0x11,0x11,0x02,0x7F,
0x23,0x22,0x22,0x22,0x7E,0x03,0x01,0x00,
};
/*-- 文字: 电 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar dian[32]={
0x00,0x00,0xF8,0x48,0x48,0x48,0x48,0xFF,0x48,0x48,0x48,0x48,0xF8,0x00,0x00,0x00,
0x00,0x00,0x0F,0x04,0x04,0x04,0x04,0x3F,0x44,0x44,0x44,0x44,0x4F,0x40,0x70,0x00,
};
/*-- 文字: 阻 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar zu[32]={
0x00,0xFF,0x11,0x29,0xC7,0x01,0xFE,0x22,0x22,0x22,0x22,0x22,0xFE,0x00,0x00,0x00,
0x00,0xFF,0x02,0x04,0x43,0x40,0x7F,0x42,0x42,0x42,0x42,0x42,0x7F,0x40,0x40,0x00,
};
/*-- 文字: 值 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar zhi[32]={
0x80,0x40,0xF0,0x2F,0x02,0x04,0xE4,0xA4,0xB4,0xAF,0xA6,0xA4,0xE4,0x04,0x00,0x00,
0x00,0x00,0xFF,0x00,0x40,0x40,0x7F,0x4A,0x4A,0x4A,0x4A,0x4A,0x7F,0x40,0x40,0x00,
};
/*-- 文字: 测 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar ce[32]={
0x08,0x31,0x86,0x60,0x00,0xFE,0x02,0xF2,0x02,0xFE,0x00,0xF8,0x00,0x00,0xFF,0x00,
0x04,0xFC,0x03,0x00,0x80,0x47,0x30,0x0F,0x10,0x67,0x00,0x07,0x40,0x80,0x7F,0x00,
};
/*-- 文字: 量 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar liang[32]={
0x40,0x40,0x40,0xDF,0x55,0x55,0x55,0xD5,0x55,0x55,0x55,0xDF,0x40,0x40,0x40,0x00,
0x40,0x40,0x40,0x57,0x55,0x55,0x55,0x7F,0x55,0x55,0x55,0x57,0x50,0x40,0x40,0x00,
};
/*-- 文字: 系 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar xi[32]={
0x00,0x00,0x02,0x22,0xB2,0xAA,0x66,0x62,0x22,0x11,0x4D,0x81,0x01,0x01,0x00,0x00,
0x00,0x40,0x21,0x13,0x09,0x05,0x41,0x81,0x7F,0x01,0x05,0x09,0x13,0x62,0x00,0x00,
};
/*-- 文字: 统 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
code uchar tong[32]={
0x20,0x30,0x2C,0xA3,0x60,0x10,0x84,0xC4,0xA4,0x9D,0x86,0x84,0xA4,0xC4,0x84,0x00,
0x20,0x22,0x23,0x12,0x12,0x92,0x40,0x30,0x0F,0x00,0x00,0x3F,0x40,0x41,0x70,0x00,
};
uchar code she[32]={
/*-- 文字: 设 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x40,0x41,0xCE,0x04,0x00,0x80,0x40,0xBE,0x82,0x82,0x82,0xBE,0xC0,0x40,0x40,0x00,
0x00,0x00,0x7F,0x20,0x90,0x80,0x40,0x43,0x2C,0x10,0x10,0x2C,0x43,0xC0,0x40,0x00,
};
uchar code zhi2[32]={
/*-- 文字: 置 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x00,0x20,0x2F,0xA9,0xA9,0xAF,0xE9,0xB9,0xA9,0xAF,0xA9,0xA9,0x2F,0x20,0x00,0x00,
0x80,0x80,0x80,0xFF,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xAA,0xFF,0x80,0x80,0x80,0x00,
};
uchar code gong[32]={
/*-- 文字: 功 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x00,0x04,0x04,0x04,0xFC,0x04,0x14,0x14,0x10,0x90,0x7F,0x10,0x10,0xF0,0x00,0x00,
0x04,0x0C,0x04,0x04,0x03,0x42,0x22,0x11,0x0C,0x23,0x20,0x60,0x20,0x1F,0x00,0x00,
};
uchar code neng[32]={
/*-- 文字: 能 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x10,0xB8,0x97,0x92,0x90,0x94,0xB8,0x10,0x00,0x7F,0x48,0x48,0x44,0x74,0x20,0x00,
0x00,0xFF,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x3F,0x44,0x44,0x42,0x72,0x20,0x00,
};
uchar code cai[32]={
/*-- 文字: 菜 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x02,0x02,0x32,0x52,0x92,0x1F,0x32,0x52,0x12,0x1F,0x92,0x52,0x32,0x02,0x02,0x00,
0x00,0x42,0x42,0x22,0x12,0x0A,0x06,0xFF,0x06,0x0A,0x12,0x32,0x62,0x22,0x02,0x00,
};
uchar code dan[32]={
/*-- 文字: 单 --*/
/*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
0x00,0x00,0xF8,0x28,0x29,0x2E,0x2A,0xF8,0x28,0x2C,0x2B,0x2A,0xF8,0x00,0x00,0x00,
0x08,0x08,0x0B,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x09,0x0B,0x08,0x08,0x00,
};
struct menuValue
{
uchar *val1;
uchar *val2;
};
/*
struct menuControl
{
uchar *current;
uchar *previous;
uchar *next;
uchar *up;
uchar *down;
uchar *control;
};
*/
struct menuValue mv1,mv2;
void Initial_Menu()
{
mv1.val1=ce;
mv1.val2=liang;
mv2.val1=she;
mv2.val2=zhi2;
}
//显示一条菜单
void Menu_Disp(uchar page,struct menuValue *m)
{
LCD_MCS();
HZK_Disp16(page,16,m->val1);
HZK_Disp16(page,32,m->val2);
}
void Menu_Disp2(uchar page,struct menuValue *m)
{
LCD_SCS();
HZK_Disp16(page,16,m->val1);
HZK_Disp16(page,32,m->val2);
}
void Current_Menu(uchar line)
{
line=(line-1)*2+3;
HZK_Disp8(line,5,arrowhead1);
HZK_Disp8(line+1,5,arrowhead2);
}
void Menu1a() //一级菜单a
{
LCD_MCS();
Clear_Scran();
Disp_Line(1);
HZK_Disp16(0,8,gong);
HZK_Disp16(0,40,neng);
LCD_SCS();
HZK_Disp16(0,8,cai);
HZK_Disp16(0,40,dan);
Menu_Disp(3,&mv1);
Menu_Disp(5,&mv2);
Current_Menu(1);
Menu_Disp2(3,&mv1);
Menu_Disp2(5,&mv2);
}
void Menu1b(void) //一级菜单b
{
LCD_MCS();
Clear_Scran();
Disp_Line(1);
HZK_Disp16(0,8,gong);
HZK_Disp16(0,40,neng);
LCD_SCS();
HZK_Disp16(0,8,cai);
HZK_Disp16(0,40,dan);
Menu_Disp(3,&mv1);
Menu_Disp(5,&mv2);
Current_Menu(2);
Menu_Disp2(3,&mv1);
Menu_Disp2(5,&mv2);
}
void Menu1c(void) //一级菜单c
{
LCD_MCS();
Clear_Scran();
Disp_Line(1);
HZK_Disp16(0,8,gong);
HZK_Disp16(0,40,neng);
LCD_SCS();
HZK_Disp16(0,8,cai);
HZK_Disp16(0,40,dan);
Menu_Disp(3,&mv1);
Menu_Disp(5,&mv2);
Menu_Disp2(3,&mv1);
Menu_Disp2(5,&mv2);
Current_Menu(1);
}
void Menu1d(void) //一级菜单d
{
LCD_MCS();
Clear_Scran();
Disp_Line(1);
HZK_Disp16(0,8,gong);
HZK_Disp16(0,40,neng);
LCD_SCS();
HZK_Disp16(0,8,cai);
HZK_Disp16(0,40,dan);
Menu_Disp(3,&mv1);
Menu_Disp(5,&mv2);
Menu_Disp2(3,&mv1);
Menu_Disp2(5,&mv2);
Current_Menu(2);
}
void Initial_Face(void) //初始画面
{
LCD_MCS();
HZK_Disp16(1,0,duo);
HZK_Disp16(1,16,lu);
HZK_Disp16(1,32,dian);
HZK_Disp16(1,48,zu);
HZK_Disp16(4,32,xi);
Delay(10);
LCD_SCS();
HZK_Disp16(1,0,zu);
HZK_Disp16(1,16,zhi);
HZK_Disp16(1,32,ce);
HZK_Disp16(1,48,liang);
HZK_Disp16(4,16,tong);
HZK_Disp8(5,35,VV);
HZK_Disp8(5,42,NUM1);
HZK_Disp8(5,47,DOT);
HZK_Disp8(5,51,NUM1);
Initial_Menu();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -