⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd12864.h

📁 这是一个针对8086的小型osii操作系统
💻 H
字号:
// the following functions are defined by ChengShi 3/2/2002
#define LcdTxtColor	14
#define LcdBkColor	1

#define CmdPort0     	0x29c
#define DatPort0     	0x29d
#define CmdPort1	    0x29a
#define DatPort1	    0x29b
//#define CmdPort2	0x7c
//#define DatPort2	0x7d

#define ColBankSize	64

#define OpenLCD      0x3f
#define CloseLCD     0x3e
#define SetROW       0xc0
#define SetCOL       0x40
#define SetPAGE      0xb8

#define MAXX	     128
#define MAXY	     64

unsigned int CmdPort( int Idx );
unsigned int DatPort( int Idx );

// return = 0x8000: LCD Controller[] unexisted
//        = 0x0080: LCD Controller[] existed, Busy
//        = 0x0020: LCD Controller[] existed, in OFF
//        = 0x0010: LCD Controller[] existed, in RESET
//        = 0x0000: LCD Controller[] ready
//        = 0xffff: wrong input paramter
unsigned int ControllerStatus( int Idx );

// return = 0x8000: LCD unexisted
//        = 0x0080: LCD existed, Busy
//        = 0x0020: LCD turn off
//        = 0x0010: LCD in reset
//        = 0x0000: LCD ready
unsigned int CheckStatus( );

// return =  0: ok
//        = -1: LCD error
int WaitUntilReady( int Idx );

// return =  0: init ok
//        = -1: init fail
int InitLCD( );

// return =  0: init ok
//        = -1: LCD fail
//        =  1: Not Init yet!
int ClearScreen( );

// input: DotColor = 0:    write 0;
//                 = 1:    write 1;
//                 = 0x81: XOR write
// return =  0: ok
//        = -1: LCD fail
int WritePixel( int x, int y, unsigned char DotColor );

// input x = 0 -- 121
//       PgIdx = 0,1,2,3
int  WriteByte( int x, int PgIdx, unsigned char aByte );

// input x = 0 -- 121
//       PgIdx = 0,1,2,3
// return = 0x0000 -- 0x00ff: ok
//        = 0xffff (-1):      fail
int ReadByte( int x, int PgIdx );

// function: scroll up 1 character line (8 pixel lines)
// return = new show start line
unsigned int ScrollUp( unsigned int OldStartLine );

// function: scroll down 1 character line (8 pixel lines)
// return = new show start line
unsigned int ScrollDown( unsigned int OldStartLine );

// input x = 0 -- 121
//       PgIdx = 0,1,2,3
int  WriteChar( int x, int PgIdx, char aChar, int TxtColor );

// input x = 0 -- 121
//       PgIdx = 0,1,2,3
int  WriteString( int x, int PgIdx, char* aStr, int TxtColor );

int  LCDIsExisted( );		// return=0: existed!, otherwise: unexisted

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -