使用STM32 HAL库 驱动ST7789 显示屏
这是驱动好的效果图,我买的是中景园电子的一块IPS显示屏, 它的像素密度很高,显示非常细腻。
今天我用stm32 HAL库来驱动它。
使用STM32CubeMX生成代码
使用STM32CubeMX 生成功能, 其中主要设置了SPI和 驱动引脚
主要代码所示:
//引脚设置
#define LCD_D0_SCL_Pin GPIO_PIN_5
#define LCD_D0_SCL_GPIO_Port GPIOA
#define LCD_D1_SDA_Pin GPIO_PIN_7
#define LCD_D1_SDA_GPIO_Port GPIOA
#define LCD_RES_Pin GPIO_PIN_0
#define LCD_RES_GPIO_Port GPIOB
#define LCD_DC_Pin GPIO_PIN_1
#define LCD_DC_GPIO_Port GPIOB
#define LCD_CS_Pin GPIO_PIN_10
#define LCD_CS_GPIO_Port GPIOB
/* SPI1 init function */
static void MX_SPI1_Init(void)
{
/* SPI1 parameter configuration*/
hspi1.Instance = SPI1;
hspi1.Init.Mode = SPI_MODE_MASTER; //主机模式
hspi1.Init.Direction = SPI_DIRECTION_2LINES; //只使能发送,两线制,因为买到的模块只能设置, 不能读数据。
hspi1.Init.DataSize = SPI_DATASIZE_8BIT;
hspi1.Init.CLKPolarity = SPI_POLARITY_LOW; //默认时钟位&#