文档详情

【2017年整理】诺基亚5110 LCD屏幕驱动程序.doc

发布:2017-01-24约3.73万字共19页下载文档
文本预览下载声明
/******************************************************* 文件名 : Nokia5110Lcd.h 描述 : 诺基亚 5110 LCD 驱动头文件 作者 : xylch101 编辑器 : Notepad 2 日期 : 2008年06月27日 *******************************************************/ #ifndef NOKIA_5110_LCD_H #define NOKIA_5110_LCD_H //宽高像素 #define LCD_X_RES 84 #define LCD_Y_RES 48 //管脚配置 (atmega16L) 自行修改 #define LCD_DC_PIN (12) // P4.2 D/C #define LCD_CE_PIN (14) // P4.4 /SCE #define SPI_MOSI_PIN (11) // P4.1 DIN #define LCD_RST_PIN (13) // P4.3 /RST #define SPI_CLK_PIN (10) // P4.0 /SCLK #define DIN_0() P4OUT=~SPI_MOSI_PIN #define DIN_1() P4OUT|= SPI_MOSI_PIN #define SCLK_0() P4OUT=~SPI_CLK_PIN #define SCLK_1() P4OUT|= SPI_CLK_PIN //P4.0SCLK //P4.1DIN //P4.2D/C //P4.3/RST //P4.4--/SCE typedef unsigned char byte; typedef unsigned int word; //枚举 D/C 模式选择 typedef enum { DC_CMD = 0, //写命令 DC_DATA = 1 //写数据 } LcdExecType; //枚举 画点类型选择 typedef enum { PIXEL_CLEAR = 0, //擦除 PIXEL_DRAW = 1, //画点 PIXEL_XOR = 2 //取反 } LcdPixelMode; //驱动函数声明 void LcdInit ( void ); void LcdSetContrast ( byte contrast ); void LcdSetXY (byte X, byte Y); void LcdExec ( byte data, LcdExecType cd ); byte UnClear ( byte data, byte n ); byte LnClear ( byte data, byte n ); void SplitByte ( byte data, byte nByLow, byte bytes[ 2 ] ); void BufferPixelStuff ( byte type, byte index, byte x, byte y, byte width, byte height); void CacheEnglishString ( byte x, byte y, byte width, byte height, byte bWidth, byte *dataPtr ); void CachePixel ( byte x, byte y, LcdPixelMode mode ); void CommitBuffer ( void ); void ClearBuffer ( void ); #endif /******************************************************* 文件名 : Nokia5110Lcd.c 描述 : 诺基亚 5110 LCD 驱动源文件 作者 : xylch101 编辑器 : Notepad 2 日期 : 2008年06月27日 *******
显示全部
相似文档