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

📄 bsp.h

📁 本程序使用ucgui实现对LM4229的控制
💻 H
📖 第 1 页 / 共 2 页
字号:
#define             DIS_SW_DIS_ALL_OFF        0X00                    // 所有都不显示
/* ***************************    显示开关设置指令   END ************************************************/

/* ***************************    光标形状设置指令 START  **********************************************/  
/*
*详细说明:该指令只包含一字节命令(COMMAND)。
*         指令的低三位说明光标所占的像素数。光标的长度固定为8个像素。
*/ 
#define  LCD_CUR_SHP		0xA0						// 光标形状选择:0xA0-0xA7表示光标占的行数 
#define             CUR_SHP_1_LINE		0x00					// 光标占1行数
#define             CUR_SHP_2_LINE		0x01					// 光标占2行数
#define             CUR_SHP_3_LINE		0x02					// 光标占3行数
#define             CUR_SHP_4_LINE		0x03					// 光标占4行数
#define             CUR_SHP_5_LINE		0x04					// 光标占5行数
#define             CUR_SHP_6_LINE		0x05					// 光标占6行数
#define             CUR_SHP_7_LINE		0x06					// 光标占7行数
#define             CUR_SHP_8_LINE		0x07					// 光标占8行数
/* ***************************    光标形状设置指令   END   **********************************************/

/* ***************************    数据自动读写设置指令 START  ****************************************/ 
/*
*详细说明:该指令只包含一字节命令(COMMAND)。
*         数据自动读写方式设置。执行该指令后MPU可以连续的读写显示缓冲区RAM的数据,每读写一次地址指针自动加1.自动读写结束时必须写入自动读写结束命令使控制器退出自动模式,接受其他指令。
*/ 
#define  LCD_AUT_WR			0xB0						// 自动写设置
#define  LCD_AUT_RD			0xB1						// 自动读设置
#define  LCD_AUT_OVR		0xB2						// 自动读/写结束
/* ***************************   数据自动读写设置指令   END       ****************************************/

/* ***************************    数据读写设置指令 START  ****************************************/
/*
*详细说明:该指令包含一字节命令(COMMAND)。写指令包含一字节数据(DATA1)。读指令不包含数据。
*         数据读写方式设置。
*/
#define  LCD_INC_WR			0xC0						// 数据一次写,地址加1(DATA1+COMMAND)
#define  LCD_INC_RD			0xC1						// 数据一次读,地址加1(COMMAND)
#define  LCD_DEC_WR			0xC2						// 数据一次写,地址减1(DATA1+COMMAND)
#define  LCD_DEC_RD			0xC3						// 数据一次读,地址减1(COMMAND)
#define  LCD_NOC_WR			0xC4						// 数据一次写,地址不变(DATA1+COMMAND)
#define  LCD_NOC_RD			0xC5						// 数据一次读,地址不变(COMMAND)
/* ***************************    数据读写设置指令 END    ****************************************/

/* ***************************    屏幕操作指令   START     ****************************************/
#define  LCD_SCN_RD			0xE0						
/*
*详细说明:该指令只包含一字节命令(COMMAND)。
*        屏读。该指令用于将屏幕上地址指针处的文字和图形合成后显示的一个字节内容送到控制器的数据栈中,等待MPU读出。地址指针应该设置在图形区内。
*/
#define  LCD_SCN_CP			0xE8						
/*
*详细说明:该指令只包含一字节命令(COMMAND)。
*        屏拷贝。该指令用于将屏幕上地址指针(图形区内)开始的一行合成显示内容拷贝到相应的图形显示区的一组单元内。该指令不能用于文本特征方式下或者双屏LCD。
*/
/* ***************************    屏幕操作指令   END       ****************************************/

/* ***************************       位操作指令   START       ***************************************/
/*
*详细说明:该指令只包含一字节命令(COMMAND)。
*        该指令将显示缓冲区某单元的某一位置位或者清零。该单元地址由当前地址指针定义。
*                D0-D2--定义D0-D7位,
*                D3--1为置位,0为清除
*/
#define  LCD_BIT_OP			0xF0						
#define            BIT_OP_SET                0X08                    // 置位操作
#define            BIT_OP_CLR                0X00                    // 清零操作
#define            BIT_OP_BIT_0              0X00                    // D0
#define            BIT_OP_BIT_1              0X01                    // D1
#define            BIT_OP_BIT_2              0X02                    // D2
#define            BIT_OP_BIT_3              0X03                    // D3
#define            BIT_OP_BIT_4              0X04                    // D4
#define            BIT_OP_BIT_5              0X05                    // D5
#define            BIT_OP_BIT_6              0X06                    // D6
#define            BIT_OP_BIT_7              0X07                    // D7
/* ***************************       位操作指令   END       ****************************************/
/*
*额外说明:(1)LCD模块一般实现了控制器和行 列驱动和显示缓冲区RAM的接口,同时用硬件设置了液晶屏的结构(单,双屏结构),
*                    数据传输方式,显示串口的长度和宽度。字体选择引脚FS1=0字体8x8,FS1=1字体6x8。
*                    (2)像素240x128=(40列x6)x(16行x8),(可以显示640个字符)。
*                   (3)外部的RAM可以分成三种类型:文本区   图形区    字符发生区。
*                    (4)关于单扫描和双扫描是与单双屏幕有关。
*                    (5)应该同时读取STA0和STA1。
*                    (6)在自动模式下,STA0和STA1无效。所以在不同的模式下检测状态的方式不一样。
*                    (7)光标指针只有通过对应的命令改变,读写数据不改变。
*                    (8)CGRAM的起始地址以2k为边界。
*                    (9)文本和图形起始位置和区域大小与显示缓冲区RAM的关系。
*                   (10)文本特征只适用于文字显示,因为特征数据放在图形RAM。如果要设置为文本特征方式,那么文本和图形显示都要打开。
*                    (11)屏幕读命令适用于硬件设置的列数和软件设置的列数(文本区和图形区大小)相同的情况下。
*                    (12)屏幕拷贝命令在文本特征模式下无效。双扫描模式下无法使用该命令。适用于硬件设置的列数和软件设置的列数(文本区和图形区大小)相同的情况下。
*                     
*/

/* **************************** T6963C指令说明以及定义    END           ************************************/





/*
*********************************************************************************************************
*                                               LED moudle
*********************************************************************************************************
*/
#define  GPIO1_LED1             DEF_BIT_18      
#define  GPIO1_LED2             DEF_BIT_19
#define  GPIO1_LED3             DEF_BIT_20
#define  GPIO1_LED4             DEF_BIT_21
#define  GPIO1_LED5             DEF_BIT_22
#define  GPIO1_LED6             DEF_BIT_23
#define  GPIO1_LED7             DEF_BIT_24
#define  GPIO1_LED8             DEF_BIT_25
#define  GPIO1_LEDS    (GPIO1_LED1 | GPIO1_LED2 | GPIO1_LED3 | GPIO1_LED4 | GPIO1_LED5 | GPIO1_LED6 | GPIO1_LED7 | GPIO1_LED8)


/*
*********************************************************************************************************
*                                               PUSH BUTTON moudle
*********************************************************************************************************
*/
#define  GPIO0_PB1              DEF_BIT_16
#define  GPIO0_PB2              DEF_BIT_17
#define  GPIO0_PB3              DEF_BIT_18
#define  GPIO0_PB4              DEF_BIT_19
#define  GPIO0_PB5              DEF_BIT_20
#define  GPIO0_PB6              DEF_BIT_21
#define  GPIO0_PB     (GPIO0_PB1 | GPIO0_PB2 | GPIO0_PB3 | GPIO0_PB4 | GPIO0_PB5 | GPIO0_PB6)

/*
*********************************************************************************************************
*                                               DEFINES
*********************************************************************************************************
*/

#define  CPU_OSC_FREQ                   11059200L



/*
*********************************************************************************************************
*                                         FUNCTION PROTOTYPES
*********************************************************************************************************
*/
void         BSP_Init           (void);
void         BSP_IntDisAll      (void);


/*
*********************************************************************************************************
*                                             LED SERVICES
*********************************************************************************************************
*/
void         LED_On             (CPU_INT08U led);
void         LED_Off            (CPU_INT08U led);


/*
*********************************************************************************************************
*                                             LCD SERVICES
*********************************************************************************************************
*/
void         LCD_Delay          (CPU_INT16U delay);
CPU_INT08U   LCD_Get_Status     (void);
CPU_INT08U   LCD_Read_Data      (void);
void         LCD_Write_Command  (CPU_INT08U cmd);
void         LCD_Write_Data     (CPU_INT08U data);
void         LCD_Initialize_Controller(void);

#endif

⌨️ 快捷键说明

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