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

📄 lcd.h

📁 cc2430的好串口
💻 H
字号:

/********************************LCD.H****************************************
文件名  :   LCD.H
目标    :   cc2430
创建日期:   2008/04/24
修改日期:   2008/04/25
版本    :   version 1.0
作者    :   王坤朋
功能描述:   定义了与LCD相关的宏,和头文件.
******************************************************************************/
//头文件
#include "FONT.H"
#include "HAL.H"
#include "ioCC2430.h"
/**********************控制端口定义********************************************
端口定义:
           P1端口--Lcd的控制用端口
           P1_2-->片选
           P1_6-->复位
           P1_7-->数据命令选择
           P1_3-->串行时钟
           P1_5-->串行数据
******************************************************************************/
#define    Lcd_DIR           P1DIR|=0xed
#define    Lcd_PORT          P1|=0xed

#define    Lcd_CS            P1_2                           //CS片选
#define    Lcd_RES           P1_6                           //RES复位
#define    Lcd_A0            P1_7                           //A0数据命令选择
#define    Lcd_CLK           P1_3                           //CLK串行时钟
#define    Lcd_SDI           P1_5                           //SDI串行数据

#define    Lcd_CS_CLR        Lcd_CS=0                       //CS低电平输出
#define    Lcd_CS_SET        Lcd_CS=1                       //CS高电平输出
#define    Lcd_RES_CLR       Lcd_RES=0                      //RES低电平输出
#define    Lcd_RES_SET       Lcd_RES=1                      //RES高电平输出
#define    Lcd_A0_CLR        Lcd_A0=0                       //A0低电平输出
#define    Lcd_A0_SET        Lcd_A0=1                       //A0高电平输出
#define    Lcd_CLK_CLR       Lcd_CLK=0                      //CLK低电平输出
#define    Lcd_CLK_SET       Lcd_CLK=1                      //CLK高电平输出
#define    Lcd_SDI_CLR       Lcd_SDI=0                      //SDI低电平输出
#define    Lcd_SDI_SET       Lcd_SDI=1                      //SDI高电平输出

//**********************显示设置定义********************************************
#define    Lcd_X_MAX         64-1			    //屏幕的X轴的物理宽度,行
#define    Lcd_Y_MAX	     128-1			    //屏幕的Y轴的物理宽度,列		
#define    Lcd_Init_Color    0x00	                    //定义LCD屏初始化时的背景色
//**************************LCD指令*********************************************
#define	   Lcd_ON	     0xaf                           //LCD开关命令
#define	   Lcd_OFF	     0xae

#define	   Lcd_POWER_BC	     0x2c                           //设置上电控制模式
#define	   Lcd_POWER_VR	     0x2a
#define	   Lcd_POWER_VC	     0x29
#define	   Lcd_POWER_ALL     0x2f

#define	   Lcd_SETR_0	     0x20                           //V5内部电压调节电阻设置
#define	   Lcd_SETR_1	     0x21
#define	   Lcd_SETR_2	     0x22
#define	   Lcd_SETR_3	     0x23
#define	   Lcd_SETR_4	     0x24
#define	   Lcd_SETR_5	     0x25
#define	   Lcd_SETR_6	     0x26
#define	   Lcd_SETR_7	     0x27

#define	   Lcd_ELE_VOL	     0x81		            //电量设置模式(显示亮度)
#define	   Lcd_BIAS_9	     0xa2		            //偏压设置,V5时选此选项设置
#define	   Lcd_BIAS_7	     0xa1		            //偏压设置,V3时选此选项设置
#define	   Lcd_COM_NOR	     0xc0		            //Com 扫描方式设置,正常方式
#define	   Lcd_COM_REV	     0xc8		            //Com 扫描方式设置,反相
#define	   Lcd_SEG_NOR	     0xa0		            //Segment方向,正常
#define	   Lcd_SEG_REV	     0xa1		            //Segment方向,反向
#define	   Lcd_ALL_LIGNT     0xa5		            //全屏点亮
#define	   Lcd_ALL_LOW	     0xa4		            //全屏变暗
#define	   Lcd_ALL_NOR	     0xa6		            //正相显示,RAM中数据不变
#define	   Lcd_ALL_REV	     0xa7		            //反相显示,RAM中数据不变
#define	   Lcd_STATIC_ON     0xad	                    //静态指示器,ON
#define	   Lcd_STATIC_OFF    0xac	                    //静态指示器,OFF
#define	   Lcd_BEGIN_LINE    0x40+0	                    //设置显示起始行对应RAM行号,尾数0~63
#define	   Lcd_COL_PAGE	     0xb0+0	                    //设置显示起始页对应RAM页号,尾数0~8
#define	   Lcd_COL_LINE_LOW  0x04		            //设置当前列基数指令,低四位有效
#define	   Lcd_COL_LINE_HIG  0x10		            //设置当前列基数指令,低四位有效
//***************************函数声明***********************************************//
extern void  LcdInit(void);                                   //LCD初始化
extern void  PutEnChar(INT8U x,INT8U y,INT8U word,INT8U rev); //向LCD输出单个英文字符
extern void  PutCChar(INT8U x,INT8U y,INT8U ch[],INT8U rev);  //向LCD输出单个汉字字符
extern void  PutString(INT8U x,INT8U y,INT8U *p,INT8U rev);   //向LCD输出字符串,英文或汉字
extern void  ClrScreen(INT8U Mode);                           //清屏,0=全部清除;1=填充前景色
extern void  RefreshScreen(void);                             //刷新屏幕,用于设置的更新
extern void  LCD_Fill(INT8U x1,INT8U y1,INT8U x2,INT8U y2,INT8U color);//LCD填充颜色
extern void  LcdBMP(INT8U x1,INT8U y1,INT8U xw,INT8U yw,INT8U *bmp); //向LCD输出一张图片
//**************************外部变量***********************************************//
extern INT8U  LcdLum;                                         //量度调整,0x00~0x3f
extern INT8U  LcdMode;                                        //省电模式,0=正常显示;1=睡眠模式;2=备用模式
extern INT8U  LcdStaticMode;                                  //静态指示器状态,0=关;1=0.5s闪烁;2=1s闪烁;3=all on
//*********************************************************************************//

//函数和变量使用说明:
//void  LcdInit(void);                                   用于LCD的初始化,在初始化过程中调用.
//void  PutEnChar(INT8U x,INT8U y,INT8U word,INT8U rev); 向LCD输出单个英文字符.
//void  PutCChar(INT8U x,INT8U y,INT8U ch[],INT8U rev);  向LCD输出单个汉字字符
//void  PutString(INT8U x,INT8U y,INT8U *p,INT8U rev);   向LCD输出字符串,调用之前要设置字体,用于显示汉字或英文字符.
//void  ClrScreen(INT8U Mode);                           清屏,0=全部清除;1=填充前景色
//void  RefreshScreen(void);                             刷新屏幕,用于设置的更新,在每次改变显示屏亮度,节电模式,静态指示器状态后调用.
//void  AwakeScreen(void);                               从节电模式唤醒LCD
//void  LCD_Fill(INT8U x1,INT8U y1,INT8U x2,INT8U y2,INT8U color);LCD填充颜色,用于显示定制图形.
//INT8U LcdLum;                                          量度调整,0x00~0x3f
//INT8U LcdMode;                                         省电模式,0=正常显示;1=睡眠模式(静态指示器OFF),MCU可以访问RAM;2=备用模式(静态指示器ON)
//INT8U LcdStaticMode;                                   静态指示器状态,0=关;1=0.5s闪烁;2=1s闪烁;3=all on


//显示调用实例:
//注意: 行的范围为0~7;列的范围为0~128-16;

//英文显示
//PutEnChar(2,10,'A',0);                                 向LCD第2行,第10列输出一个英文字符A,黑色显示.
//PutEnChar(2,10,'A',1);                                 向LCD第2行,第10列输出一个英文字符A,反黑色显示.

//中文显示
//PutCChar(4,0,"欢",0);                                  向LCD第4行,第0列输出一个'欢',黑色显示.
//PutCChar(4,0,"迎",1);                                  向LCD第4行,第0列输出一个'迎',反黑色显示.

//中英文混合显示字符串
//PutString(0,0,"欢迎使用CC2430!",0);                    向LCD第0行,第0列输出'欢迎使用CC2430!',黑色显示.
//PutString(0,0,"欢迎使用CC2430!",1);                    向LCD第0行,第0列输出'欢迎使用CC2430!',反黑色显示.

//清屏
//ClrScreen(0);                                          清除屏幕为白色.
//ClrScreen(1);                                          清除屏幕为填充色.用'-------'填充.

//刷新屏幕
//RefreshScreen();                                       刷新屏幕,用于设置的更新,在每次改变显示屏亮度,节电模式,静态指示器状态后调用.

//唤醒LCD
//AwakeScreen();                                         从节电模式唤醒LCD

//填充设定屏幕区域
//LCD_Fill(0,0,0,127,0xFF);                              用黑色填充第一行.


//向LCD输出一张图片
//LcdBMP(0,10,64,32,ICO);                                在第0行第10列,显示一个64*32的图片










⌨️ 快捷键说明

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