tg12232b.h

来自「STC51系列的源码」· C头文件 代码 · 共 81 行

H
81
字号
/********************************************************************************/
/* filename : TG12232B.h                                                        */
/* created  : xillinx                                                           */
/* descript : 处理LCDP显示的部分                                                */
/********************************************************************************/
#ifndef __LCDP_H__
#define __LCDP_H__

/********************************************************************************/
/* LCD用A8作为数据/命令选择信号                                                 */
/* LCD用A9作为读/写选择信号                                                     */
/********************************************************************************/
#define LCD_DAT                 0x100   //* A08 HI=DAT
#define LCD_CMD                 0x000   //* A08 LO=CMD
#define LCD_WR                  0x000   //* A11 LO=WRITE
#define LCD_RD                  0x800   //* A11 HI=READ
#define LCDP_wr_chip_1_data     c51_hc138_cs_lcd1[LCD_WR+LCD_DAT]
#define LCDP_wr_chip_1_cmd      c51_hc138_cs_lcd1[LCD_WR+LCD_CMD]
#define LCDP_wr_chip_2_data     c51_hc138_cs_lcd2[LCD_WR+LCD_DAT]
#define LCDP_wr_chip_2_cmd      c51_hc138_cs_lcd2[LCD_WR+LCD_CMD]
#define LCDP_rd_chip_1_data     c51_hc138_cs_lcd1[LCD_RD+LCD_DAT]
#define LCDP_rd_chip_1_cmd      c51_hc138_cs_lcd1[LCD_RD+LCD_CMD]
#define LCDP_rd_chip_2_data     c51_hc138_cs_lcd2[LCD_RD+LCD_DAT]
#define LCDP_rd_chip_2_cmd      c51_hc138_cs_lcd2[LCD_RD+LCD_CMD]

/********************************************************************************/
/* LCD用的命令字段   */
/********************************************************************************/
#define LCD_DISP_ON             0xAF
#define LCD_DISP_OFF            0xAE
#define LCD_DRV_OPEN            0xA5
#define LCD_DRV_CLOSE           0xA4
#define LCD_DUTY_16             0xA8
#define LCD_DUTY_32             0xA9
#define LCD_START_MODIFY        0xE0
#define LCD_END_MODIFY          0xEE
#define LCD_RESET               0xE2
#define LCD_START_LINE          0xC0
#define LCD_START_PAGE          0xB8
#define LCD_START_ADDR          0x00

/********************************************************************************/
/* LCD用的命令  */
/********************************************************************************/
#define LCDP_open()             LCDP_write_command(LCD_DISP_ON)
#define LCDP_close()            LCDP_write_command(LCD_DISP_OFF)
#define LCDP_drive_open()       LCDP_write_command(LCD_DRV_OPEN)
#define LCDP_drive_close()      LCDP_write_command(LCD_DRV_CLOSE)
#define LCDP_duty_sel_16()      LCDP_write_command(LCD_DUTY_16)
#define LCDP_duty_sel_32()      LCDP_write_command(LCD_DUTY_32)
#define LCDP_start_modify()     LCDP_write_command(LCD_START_MODIFY)
#define LCDP_end_modify()       LCDP_write_command(LCD_END_MODIFY)
#define LCDP_reset_chip()       LCDP_write_command(LCD_RESET)
#define LCDP_start_line(i)      LCDP_write_command(LCD_START_LINE+i)
#define LCDP_set_page(i)        LCDP_write_command(LCD_START_PAGE+i)
#define LCDP_set_column(i)      LCDP_write_command(LCD_START_ADDR+i)

/********************************************************************************/
/* st_type_gb_font  */
/********************************************************************************/
typedef struct _type_gb_font    // 汉字字模数据结构
{   signed char Index[2];       // 汉字内码索引
    char Msk[32];               // 点阵码数据
}st_type_gb_font;

void LCDP_write_command(unsigned char command);
void LCDP_clear_display_buffer(void);
void LCDP_write_ram_data(unsigned char chip,unsigned char value);
void LCDP_write_one_byte(unsigned char page,unsigned char column,unsigned char value);
void LCDP_write_one_page(unsigned char page, unsigned char * buffer);
void LCDP_display_text(unsigned char xpos,unsigned char ypos,unsigned char * buffer);
unsigned char LCDP_get_index(unsigned char szText);
unsigned char *LCDP_get_text_font(unsigned char index);
void LCDP_module_initialize(void);
void LCDP_text_printf(unsigned char x,unsigned char y,unsigned char * buffer);
void LCDP_hz16_printf(unsigned char xpos,unsigned char ypos,unsigned char * buffer);
void LCDP_hz16_sheft_printf(unsigned char sheft,unsigned char xpos,unsigned char ypos,unsigned char * buffer);

#endif

⌨️ 快捷键说明

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