📄 gui.h
字号:
#ifndef __GUI_H
#define __GUI_H
#include <rtl.h>
#include <LPC23xx.H>
//////////////////////////////////////////////////
#define uint8 unsigned char
#define uint16 unsigned int
#define uint32 unsigned long
//////////////////菜单状态 定义////////////////////
#define SHOW_MAIN_VIEW_1 1
#define SHOW_MAIN_VIEW_2 2
#define SHOW_MAIN_VIEW_3 3
#define SHOW_MAIN_VIEW_4 4
#define SHOW_MAIN_VIEW_5 5
#define SHOW_MAIN_VIEW_6 6
#define SHOW_MAIN_VIEW_7 7
#define SHOW_MAIN_VIEW_8 8
#define SHOW_MAIN_VIEW_9 9
#define SHOW_1_VARIABLE_STATUS 10
#define SHOW_2_VARIABLE_STATUS 11
#define SHOW_3_VARIABLE_STATUS 12
#define SETTING_MENU1 13
#define SETTING_MENU2 14
#define SETTING_MENU3 15
#define SETTING_MENU4 16
#define SETTING_MENU5 17
#define SETTING_MENU7 18
#define SETTING_MENU10 19
#define SETTING_MENU16 20
#define SETTING_MENU17 21
#define SETTING_MENU18 22
#define SETTING_MENU19 23
////////////// GUI定义/////////////////////////////////////
/* 定义颜色数据类型(可以是数据结构)*/
#define TCOLOR uint8
/* 定义LCM像素数宏 */
#define GUI_LCM_XMAX 192 // 定义液晶x轴的像素数
#define GUI_LCM_YMAX 64 // 定义液晶y轴的像素数
/* 定义RS控制 */
#define LCM12864_RS 25 //P0.25 //P0.28 //18
#define H_LCM12864_RS() IOSET0=(uint32)0x01<<LCM12864_RS
#define L_LCM12864_RS() IOCLR0=(uint32)0x01<<LCM12864_RS
/* 定义RW控制 */
#define LCM12864_RW 31 //P1.31 //19
#define H_LCM12864_RW() IOSET1=(uint32)0x01<<LCM12864_RW
#define L_LCM12864_RW() IOCLR1=(uint32)0x01<<LCM12864_RW
/* 定义E控制 */
#define LCM12864_E 8 //P2.8
#define H_LCM12864_E() FIO2SET=(uint32)0x01<<LCM12864_E
#define L_LCM12864_E() FIO2CLR=(uint32)0x01<<LCM12864_E
/* 定义D0数据线 */
#define LCM12864_D0 0 //P2.0
#define H_LCM12864_D0() FIO2SET=(uint32)0x01<<LCM12864_D0
#define L_LCM12864_D0() FIO2CLR=(uint32)0x01<<LCM12864_D0
/* 定义D1数据线 */
#define LCM12864_D1 1 //P2.1
#define H_LCM12864_D1() FIO2SET=(uint32)0x01<<LCM12864_D1
#define L_LCM12864_D1() FIO2CLR=(uint32)0x01<<LCM12864_D1
/* 定义D2数据线 */
#define LCM12864_D2 2 //P2.2
#define H_LCM12864_D2() FIO2SET=(uint32)0x01<<LCM12864_D2
#define L_LCM12864_D2() FIO2CLR=(uint32)0x01<<LCM12864_D2
/* 定义D3数据线 */
#define LCM12864_D3 3 //P2.3
#define H_LCM12864_D3() FIO2SET=(uint32)0x01<<LCM12864_D3
#define L_LCM12864_D3() FIO2CLR=(uint32)0x01<<LCM12864_D3
/* 定义D4数据线 */
#define LCM12864_D4 4 //P2.4
#define H_LCM12864_D4() FIO2SET=(uint32)0x01<<LCM12864_D4
#define L_LCM12864_D4() FIO2CLR=(uint32)0x01<<LCM12864_D4
/* 定义D5数据线 */
#define LCM12864_D5 5 //P2.5
#define H_LCM12864_D5() FIO2SET=(uint32)0x01<<LCM12864_D5
#define L_LCM12864_D5() FIO2CLR=(uint32)0x01<<LCM12864_D5
/* 定义D6数据线 */
#define LCM12864_D6 6 //P2.6
#define H_LCM12864_D6() FIO2SET=(uint32)0x01<<LCM12864_D6
#define L_LCM12864_D6() FIO2CLR=(uint32)0x01<<LCM12864_D6
/* 定义D7数据线 */
#define LCM12864_D7 7 //P2.7
#define H_LCM12864_D7() FIO2SET=(uint32)0x01<<LCM12864_D7
#define L_LCM12864_D7() FIO2CLR=(uint32)0x01<<LCM12864_D7
/* 定义CSA控制 */
#define LCM12864_CSB 24 //P0.24 //P0.27
#define H_LCM12864_CSB() IOSET0=(uint32)0x01<<LCM12864_CSB
#define L_LCM12864_CSB() IOCLR0=(uint32)0x01<<LCM12864_CSB
/* 定义CSB控制 */
#define LCM12864_CSA 26 //P0.26
#define H_LCM12864_CSA() IOSET0=(uint32)0x01<<LCM12864_CSA
#define L_LCM12864_CSA() IOCLR0=(uint32)0x01<<LCM12864_CSA
/* 定义CSC控制 */
#define LCM12864_CSC 31 //P1.31 //19
#define H_LCM12864_CSC() IOSET1=(uint32)0x01<<LCM12864_CSC
#define L_LCM12864_CSC() IOCLR1=(uint32)0x01<<LCM12864_CSC
/* 定义RST控制 */
#define LCM12864_RST 4 //P0.4
#define H_LCM12864_RST() IOSET0=(uint32)0x01<<LCM12864_RST
#define L_LCM12864_RST() IOCLR0=(uint32)0x01<<LCM12864_RST
/* 定义BLK控制 */
#define LCM12864_BLK 5 //P0.5
#define H_LCM12864_BLK() IOSET0=(uint32)0x01<<LCM12864_BLK
#define L_LCM12864_BLK() IOCLR0=(uint32)0x01<<LCM12864_BLK
// 定义HC595_DS
#define HC595_DS 20 //P1.20
#define H_HC595_DS() IOSET1=(uint32)0x01<<HC595_DS
#define L_HC595_DS() IOCLR1=(uint32)0x01<<HC595_DS
// 定义HC595_STCP
#define HC595_STCP 21 //P1.21
#define H_HC595_STCP() IOSET1=(uint32)0x01<<HC595_STCP
#define L_HC595_STCP() IOCLR1=(uint32)0x01<<HC595_STCP
// 定义HC595_DS
#define HC595_SHCP 22 //P1.22
#define H_HC595_SHCP() IOSET1=(uint32)0x01<<HC595_SHCP
#define L_HC595_SHCP() IOCLR1=(uint32)0x01<<HC595_SHCP
/* 定义LCM12864操作的命令字 */
#define LCM12864_DISPON 0x3f // 打开LCM12864显示
#define LCM12864_STARTROW 0xc0 // 显示起始行0,可以用LCM12864_STARTROW+x设置起始行。(x<64)
#define LCM12864_ADDRSTRX 0xb8 // 页起始地址,可以用LCM12864_ADDRSTRX+x设置当前页(即X)。(x<8)
#define LCM12864_ADDRSTRY 0x40 // 列起始地址,可以用LCM12864_ADDRSTRY+x设置当前列(即Y)。(x<64)
//////////////////////////////////////////////////
extern void display_browse_screen_1(void);
extern void display_char1616(unsigned int x,unsigned int y,const unsigned char buf[]);
extern void display_char812(unsigned char x,unsigned char y,const unsigned char buf[]);
extern void display_char816(unsigned int x,unsigned int y,const unsigned char buf[]);
extern void display_char88(unsigned int x,unsigned int y,const unsigned char buf[]);
extern void display_main_view_screen_1(void);
extern void display_main_view_screen_2(void);
extern void GUI_FillSCR(TCOLOR data);
extern void GUI_HLine(uint8 x0, uint8 y0, uint8 x1, TCOLOR color) ;
extern void GUI_Initialize(void);
extern uint8 GUI_Point(uint8 x, uint8 y, TCOLOR color);
extern uint8 GUI_ReadPoint(uint8 x, uint8 y, TCOLOR *ret);
extern void GUI_RLine(uint8 x0, uint8 y0, uint8 y1, TCOLOR color) ;
extern void LCM12864_DispFill(uint8 filldata);
extern void LCM12864_DispIni(void);
extern uint8 LCM12864_ReadByte(uint8 x, uint8 y);
extern void LCM12864_WriteByte(uint8 x, uint8 y, uint8 data) ;
extern void LCM12864_WriteCMD(uint8 command) ;
extern void LCM12864_WritEDAta(uint8 data) ;
extern void OutData(uint8 dat);
extern void show_menu_1_screen(void);
extern void show_menu_2_screen(void);
extern void show_menu_3_screen(void);
extern void show_menu_4_screen(void);
extern void show_menu_5_screen(void);
extern void show_menu_6_screen(void);
extern void show_menu_7_screen(void);
extern void show_menu_8_screen(unsigned char index);
extern void show_menu_9_screen(void);
extern void show_menu_10_screen(unsigned char sel);
extern void show_menu_11_screen(unsigned char sel);
extern void show_menu_12_screen(unsigned char sel1,unsigned char sel2,unsigned char sel3);
extern void show_menu_13_screen(unsigned char sel);
extern void show_menu_14_screen(unsigned char chn,unsigned int value,unsigned char chn1,unsigned int value1);
extern void show_menu_15_screen(unsigned char value);
extern void show_menu_16_screen(void);
extern void show_menu_17_screen(void);
extern void show_menu_18_screen(void);
extern void show_menu_19_screen(void);
extern void show_menu_20_screen(void);
extern void show_password_input_screen(unsigned char pos);
extern void show_start_screent(void);
extern void udp_show_recv_screen( U8 *buf, U16 len);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -