?? lcd.h
字號:
#ifndef _LCD_H_
#define _LCD_H_
#include "settings.h"
#include "Battery.h"
#include "EnDecode.h"
#include "main.h"
/////////////////////////////////////////////////////////////////////////////////////////
//新定義的標志
////////////////////////////////////////////////////////////////////////////////////////
#define LCDS6B0741_RD_HIGH PORTB |= 0x02 // PB.1 XXXX XX1X [ 0000 0010 0x02 or ]
#define LCDS6B0741_RD_LOW PORTB &= 0xFD // PB.1 XXXX XX0X [ 1111 1101 0xFD and ]
#define LCDS6B0741_WR_HIGH PORTB |= 0x04 // PB.2 XXXX XX1X [ 0000 0100 0x04 or ]
#define LCDS6B0741_WR_LOW PORTB &= 0xFB // PB.2 XXXX XX0X [ 1111 1011 0xFB and ]
#define LCDS6B0741_DC_HIGH PORTB |= 0x08 // PB.3 XXXX XX1X [ 0000 1000 0x08 or ]
#define LCDS6B0741_DC_LOW PORTB &= 0xF7 // PB.3 XXXX XX0X [ 1111 0111 0xF7 and ]
#define LCDS6B0741_RES_HIGH PORTB |= 0x10 // PB.4 XXXX XX1X [ 0001 0000 0x10 or ]
#define LCDS6B0741_RES_LOW PORTB &= 0xEF // PB.4 XXXX XX0X [ 1110 1111 0xEF and ]
#define LCDS6B0741_CS_HIGH PORTB |= 0x20 // PB.5 XXXX XX1X [ 0010 0000 0x20 or ]
#define LCDS6B0741_CS_LOW PORTB &= 0xDF // PB.5 XXXX XX0X [ 1101 1111 0xDF and ]
#define LCDS6B0741_DATA PORTA // PA
#define LCDS6B0741_EL_ON PORTB |= 0x01 // PB.0
#define LCDS6B0741_EL_OFF PORTB &= 0xFE // PB.0
#define EL_ON 1
#define EL_OFF 0
#define LINE1 0x1
#define LINE2 0x3
#define LINE3 0x5
#define LINE4 0x7
#define LCD_HEIGHT 112
#define LCD_WIDTH 128
#ifdef ADS_BOARD
#define LCD_PAGE 14
#else
#define LCD_PAGE 13
#endif
//菜單最上面一行標題欄的起始坐標
#define MENU_TITLE_STARTX 0
//(128-11)/8 一個可以寫7個漢字或14個英文,以及一個結束符
#define MENU_TITLE_LENGTH 15
//MENU 一行最多寫 (128-22)/8 13個英文或6個漢字,以及一個結束符
#define MENU_LINE_LENGTH 14
/*
#define ICON_MP3_STATE 1
#define ICON_FM_STATE 2
#define ICON_REC_STATE 3
#define ICON_SET_STATE 4
*/
#define ICON_ERASE 0
#define LCD_TIME_STARTX 33
#define LCD_TIME_STARTY_PAGE 1
//歌詞顯示位置和頻率的位置
#define LYRIC1_Y_POS 7
#define LYRIC2_Y_POS 9
//ICON欄的各個圖標的位置
//Mp3
#define LOCK_POS_X 18
#define REPEAT_POS_X 77
#define EQ_POS_X 35
#define VOLUME_POS_X 52
#define PALYPAUSE_POS_X 94
#define BATTERY_POS_X 112
//REC
#define REC_QUALITYPOS_X 40
#define REC_LINEIN_POS_X 75
#define REC_CONTINUE_POS_X 94
//新標志結束
///////////////////////////////////////////////////////////////////////
#define ADDR_LINE0 0x00 // for Graphic LCD
#define ADDR_LINE1 0x01
#define ADDR_LINE2 0x02
#define ADDR_LINE3 0x03
#define FM_SEARCH_HERTZ_LINE 3 //搜臺寫赫茲數的地方
#define FM_MAIN_HERTZ_LINE 3 //搜臺寫赫茲數的地方
#define FM_MAIN_CHANNEL_LINE 5 //搜臺寫赫茲數的地方
#define BLACK_BACKGROUND 1
#define ICON_INVISIBLE 127 //ICON消失的參數
#define PLAYSTATE_PAUSE 1
#define PLAYSTATE_PLAY 2
#define PLAYSTATE_STOP 3
#define STATE_PLAY 0
#define STATE_REC 1
#ifdef ADS_BOARD
#define BOOT_DELAYTIME 1
#else
#define BOOT_DELAYTIME 10
#endif
//Menu數據
#define LCD_MENUSTARTLINE 2
#define LCD_MENUSTARTX1_ICON 1
#define LCD_MENUSTARTX2_HZ 22
#define LCD_FMMENU_HZ_STARTX_LEFT 1
#define LCD_FMMENU_HZ_STARTX_RIGHT 72
#define LCD_ICON_FM_SAVE_STARTX 53
#define LCD_PALYSTATE_PAGE 2
#define LCD_KBPS_STARTX 1
#define QUA_HIGH 1
#define QUA_MID 2
#define QUA_LOW 3
//MessageBox相關的宏
#define MESSAGE_BOX_LEFT 10
#define MESSAGE_BOX_RIGHT 120
#define MESSAGE_BOX_TOPPAGE 4
#define MESSAGE_BOX_BOTTOMPAGE 11
#define MESSAGE_BOX_TITLE MESSAGE_BOX_TOPPAGE+1
#define MESSAGE_BOX_PROMPT 8
//LRC相關的宏
#define LRC_UPDAYE_TIME 4
///////////////////////////////////////////////////////////////////////////////
// enum&struct for LCD
///////////////////////////////////////////////////////////////////////////////
typedef struct {
long offset;
unsigned char width;
unsigned char height;
} _ICON_INDEX;
typedef struct {
unsigned char left;
unsigned char top;
unsigned char right;
unsigned char buttom;
} LCDRECT;
//圖標定義
enum {
BATTERY_0=0,
BATTERY_1,
BATTERY_2,
BATTERY_3,
BATTERY_4,
BATTERY_5,
BATTERY_6,
ICON_AB_1,
ICON_AB_2,
ICON_ANIMATE_1,
ICON_ANIMATE_2,
ICON_ANIMATE_3,
ICON_ANIMATE_4,
ICON_ARROW_1,
ICON_BOOT_01,
ICON_BOOT_02,
ICON_BOOT_03,
ICON_BOOT_04,
ICON_BOOT_05,
ICON_BOOT_06,
ICON_BOOT_07,
ICON_BOOT_08,
ICON_BOOT_09,
ICON_BOOT_V1,
ICON_BOOT_V2,
ICON_BOOT_V3,
ICON_BOO_10,
ICON_BOO_11,
ICON_CHANNELSAVE_ARROW,
ICON_CHANNELSAVE_TRASH,
ICON_CHECKBUTTON_CHECKED,
ICON_CHECKBUTTON_UNCHECK,
ICON_CONSTRAST_PROCESS,
ICON_CONSTRAST_SETTING_PROCESS,
ICON_CONSTRAST_SUNMOON,
ICON_CONTINUE,
ICON_DISCONTINUE,
ICON_EQ_5DB,
ICON_EQ_9DB,
ICON_EQ_B1,
ICON_EQ_B2,
ICON_EQ_B3,
ICON_EQ_B4,
ICON_EQ_B5,
ICON_EQ_CLASSIC,
ICON_EQ_CUSTOM,
ICON_EQ_DEFAULT_0,
ICON_EQ_DEFAULT_1,
ICON_EQ_DEFAULT_10,
ICON_EQ_DEFAULT_11,
ICON_EQ_DEFAULT_12,
ICON_EQ_DEFAULT_13,
ICON_EQ_DEFAULT_14,
ICON_EQ_DEFAULT_2,
ICON_EQ_DEFAULT_3,
ICON_EQ_DEFAULT_4,
ICON_EQ_DEFAULT_5,
ICON_EQ_DEFAULT_6,
ICON_EQ_DEFAULT_7,
ICON_EQ_DEFAULT_8,
ICON_EQ_DEFAULT_9,
ICON_EQ_DEFAULT_REV_0,
ICON_EQ_DEFAULT_REV_1,
ICON_EQ_DEFAULT_REV_10,
ICON_EQ_DEFAULT_REV_11,
ICON_EQ_DEFAULT_REV_12,
ICON_EQ_DEFAULT_REV_13,
ICON_EQ_DEFAULT_REV_14,
ICON_EQ_DEFAULT_REV_2,
ICON_EQ_DEFAULT_REV_3,
ICON_EQ_DEFAULT_REV_4,
ICON_EQ_DEFAULT_REV_5,
ICON_EQ_DEFAULT_REV_6,
ICON_EQ_DEFAULT_REV_7,
ICON_EQ_DEFAULT_REV_8,
ICON_EQ_DEFAULT_REV_9,
ICON_EQ_JAZZ,
ICON_EQ_LIVE,
ICON_EQ_NORMAL,
ICON_EQ_POP,
ICON_EQ_ROCK,
ICON_FILEEXPLOR_FMFILE,
ICON_FILEEXPLOR_LINEFILE,
ICON_FILEEXPLOR_MICFILE,
ICON_FMMENU_AUTOSEARCH,
ICON_FMMENU_CHANNELDEL,
ICON_FMMENU_PRESET,
ICON_FMMENU_SAVE,
ICON_FMMENU_TIME,
ICON_FM_CHANEL_SAVE_1,
ICON_FM_CHANEL_SAVE_10,
ICON_FM_CHANEL_SAVE_11,
ICON_FM_CHANEL_SAVE_12,
ICON_FM_CHANEL_SAVE_13,
ICON_FM_CHANEL_SAVE_14,
ICON_FM_CHANEL_SAVE_15,
ICON_FM_CHANEL_SAVE_16,
ICON_FM_CHANEL_SAVE_17,
ICON_FM_CHANEL_SAVE_18,
ICON_FM_CHANEL_SAVE_19,
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -