first commit

This commit is contained in:
HosuKim
2026-04-14 00:56:31 +09:00
parent 28740cdb3b
commit 377e0ffdce
685 changed files with 186235 additions and 0 deletions

View File

@@ -0,0 +1,151 @@
#ifndef SOURCE_DISPLAY_H_
#define SOURCE_DISPLAY_H_
#define ZONE6_DAT *(volatile Uint16*)0x00100001
#define ZONE6_COM *(volatile Uint16*)0x00100000
#define OLED_WIDTH (128U) // ER-OLEDM024 Vertical Pixel 0~127
#define OLED_HEIGHT (64U)
#define OLED_PAGE (8U) // ER-OLEDM024 Page 0~7
#define TXT_ENG_WIDTH (6U)
#define TXT_ENG_HEIGHT (12U)
#define TXT_TYPE_ENG (0U)
#define TXT_TYPE_ETC (1U)
#define TXT_MAX_LEN (22U)
#define TXT_LINE_LEN (5U)
#define OLED_LOAD_PROGRESS_X (14U)
#define OLED_LOAD_PROGRESS_Y (52U)
#define OLED_LOAD_PROGRESS_W (114U)
#define OLED_LOAD_PROGRESS_H (10U)
#define MODE_COMMAND (0U)
#define MODE_DATA (1U)
#define DIR_UP (1U)
#define DIR_DOWN (0U)
enum
{
OLED_LINE_TITLE = 0U,
OLED_LINE_1 = 14U,
OLED_LINE_2 = 27U,
OLED_LINE_3 = 40U,
OLED_LINE_4 = 53U
};
enum
{
OLED_ROW_0 = 0U,
OLED_ROW_1,
OLED_ROW_2,
OLED_ROW_3,
OLED_ROW_4
};
enum
{
OLED_PASS_DIGIT_1 = 0U,
OLED_PASS_DIGIT_2,
OLED_PASS_DIGIT_3,
OLED_PASS_DIGIT_4
};
typedef enum
{
OLED_PAGE_APU1 = 0U, // 0
OLED_PAGE_APU2, // 1
OLED_PAGE_MENU1, // 2
OLED_PAGE_MENU2, // 3
OLED_PAGE_TEMP, // 4
OLED_PAGE_SENSOR1, // 5
OLED_PAGE_SENSOR2, // 6
OLED_PAGE_SENSOR3, // 7
OLED_PAGE_SENSOR4, // 8
OLED_PAGE_WARNING1, // 9
OLED_PAGE_WARNING2, // 10
OLED_PAGE_FAULT1, // 11
OLED_PAGE_FAULT2, // 12
OLED_PAGE_FAULT3, // 13
OLED_PAGE_FAULT4, // 14
OLED_PAGE_FAULT5, // 15
OLED_PAGE_FAULT6, // 16
OLED_PAGE_RESET_ALARM, // 17
OLED_PAGE_PASSWORD, // 18
OLED_PAGE_MAINTENENCE, // 19
OLED_PAGE_KEY_TEST, // 20
OLED_PAGE_SHUTDOWN, // 21
OLED_PAGE_MAX
} EOledPage;
enum
{
OLED_MENU_APU = 0U, // 0
OLED_MENU_TEMP, // 1
OLED_MENU_SENSOR, // 2
OLED_MENU_WARNING, // 3
OLED_MENU_FAULT = 0U, // 0
OLED_MENU_RESET, // 1
OLED_MENU_DEBUG // 2
};
enum
{
OLED_LINE_FOCUS_1 = 0U,
OLED_LINE_FOCUS_2,
OLED_LINE_FOCUS_3,
OLED_LINE_FOCUS_4
};
typedef struct ClassPageHandler
{
Uint16 uiPage;
void (*pAction) (void); // PageTable ÂüÁ¶
} CPageHandler;
typedef struct ClassOledOperValue
{
Uint16 uiBuff[OLED_WIDTH][OLED_PAGE];
Uint16 uiPageNum;
Uint16 uiOldPageNum;
Uint16 uiFocusLine;
Uint16 uiPrevFocusLine;
Uint16 uiFocusDigit;
Uint16 uiProgressValue;
Uint16 uiProgressDone;
Uint16 uiAlarmPopCheck;
Uint16 uiAlreadyAlarm;
Uint16 uiPrevAlarmPage;
Uint16 uiResetAnswer;
int8 cStrBuff[TXT_LINE_LEN][TXT_MAX_LEN];
int8 cAlignBuffer[TXT_MAX_LEN];
struct
{
Uint16 TxtColor;
Uint16 BgColor;
} Color;
struct
{
Uint16 X1;
Uint16 Y1;
Uint16 X2;
Uint16 Y2;
} Point;
} COledOperValue;
void CInitXintf(void);
void CInitOled(void);
void COledReflash(Uint16 x, Uint16 y, Uint16 width, Uint16 height);
void CDisplayPostFail(void);
void CSetPage(Uint16 PageNum);
void CInitKeyOperValue(void);
void CInitializePage(void);
void COledBufferReset(void);
extern COledOperValue OledOperValue;
#endif /* SOURCE_DISPLAY_H_ */