#ifndef __LCD_INIT_H #define __LCD_INIT_H #include "sys.h" #define USE_HORIZONTAL 0 //设置横屏或者竖屏显示 0或1为竖屏 2或3为横屏 #if USE_HORIZONTAL==0||USE_HORIZONTAL==1 #define LCD_W 240 #define LCD_H 280 #else #define LCD_W 280 #define LCD_H 240 #endif //-----------------LCD端口定义---------------- #define SCLK_PORT GPIOB #define SCLK_PIN GPIO_PIN_3 #define SDA_PORT GPIOB #define SDA_PIN GPIO_PIN_5 #define RES_PORT GPIOB #define RES_PIN GPIO_PIN_7 #define DC_PORT GPIOB #define DC_PIN GPIO_PIN_9 #define CS_PORT GPIOB #define CS_PIN GPIO_PIN_8 #define BLK_PORT GPIOB #define BLK_PIN GPIO_PIN_0 #define LCD_SCLK_Clr() HAL_GPIO_WritePin(SCLK_PORT,SCLK_PIN,GPIO_PIN_RESET)//SCL=SCLK #define LCD_SCLK_Set() HAL_GPIO_WritePin(SCLK_PORT,SCLK_PIN,GPIO_PIN_SET) #define LCD_MOSI_Clr() HAL_GPIO_WritePin(SDA_PORT,SDA_PIN,GPIO_PIN_RESET)//SDA=MOSI #define LCD_MOSI_Set() HAL_GPIO_WritePin(SDA_PORT,SDA_PIN,GPIO_PIN_SET) #define LCD_RES_Clr() HAL_GPIO_WritePin(RES_PORT,RES_PIN,GPIO_PIN_RESET)//RES #define LCD_RES_Set() HAL_GPIO_WritePin(RES_PORT,RES_PIN,GPIO_PIN_SET) #define LCD_DC_Clr() HAL_GPIO_WritePin(DC_PORT,DC_PIN,GPIO_PIN_RESET)//DC #define LCD_DC_Set() HAL_GPIO_WritePin(DC_PORT,DC_PIN,GPIO_PIN_SET) #define LCD_CS_Clr() HAL_GPIO_WritePin(CS_PORT,CS_PIN,GPIO_PIN_RESET)//CS #define LCD_CS_Set() HAL_GPIO_WritePin(CS_PORT,CS_PIN,GPIO_PIN_SET) #define LCD_BLK_Clr() HAL_GPIO_WritePin(BLK_PORT,BLK_PIN,GPIO_PIN_RESET)//BLK #define LCD_BLK_Set() HAL_GPIO_WritePin(BLK_PORT,BLK_PIN,GPIO_PIN_SET) void LCD_GPIO_Init(void);//初始化GPIO void LCD_Writ_Bus(u8 dat);//模拟SPI时序 void LCD_WR_DATA8(u8 dat);//写入一个字节 void LCD_WR_DATA(u16 dat);//写入两个字节 void LCD_WR_REG(u8 dat);//写入一个指令 void LCD_Address_Set(u16 x1,u16 y1,u16 x2,u16 y2);//设置坐标函数 void LCD_Init(void);//LCD初始化 void LCD_Set_Light(uint8_t dc); void LCD_Close_Light(void); void LCD_ST7789_SleepIn(void); void LCD_ST7789_SleepOut(void); void LCD_Open_Light(void); #endif