本文主要是介绍STM32 cubemx LCD FSMC 正点原子触摸屏4.3寸,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
设备: 正点原子 探索者STM32F407ZET6
屏幕 芯片id 0X5510 4.3寸电容屏
错误 总是读到ID 为a1a1 a3a3 不正确的ID 因为FMC的 A地址不正确
地址为:
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A6作为数据命令区分线
//注意设置时STM32内部会右移一位对其! 111 1110=0X7E
#define LCD_BASE ((u32)(0x6C000000 | 0x0000007E))
#define LCD ((LCD_TypeDef *) LCD_BASE)
原理图:
一、配置cubmex
二、代码移植
根据自己的A6命令数据控制线选择
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A10作为数据命令区分线
//注意设置时STM32内部会右移一位对其!
//#define LCD_BASE ((uint32_t)(0x6C000000 | 0x000007FE))
//#define LCD ((LCD_TypeDef *) LCD_BASE)//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A6作为数据命令区分线
//注意设置时STM32内部会右移一位对其! 111 1110=0X7E
#define LCD_BASE ((u32)(0x6C000000 | 0x0000007E))
#define LCD ((LCD_TypeDef *) LCD_BASE)
修改mian.c
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
#include "lcd_header.h"
/* USER CODE END Includes */
/* USER CODE BEGIN 2 */HAL_Delay(1000);LCD_Init(&HAL_Delay);/* USER CODE END 2 */
/* USER CODE BEGIN WHILE */while (1){LCD_Clear(RED);HAL_Delay(1000);LCD_Clear(BLUE);HAL_Delay(1000);LCD_Clear(GREEN);HAL_Delay(1000); /* USER CODE END WHILE */
库文件及源文件下载
(21条消息) STM32cubmexfsmclcdHAL库资源-CSDN文库
移植及参考:
STM32F103使用STM32CubeMX生成的工程快速简单驱动TFTLCD屏_哔哩哔哩_bilibili
这篇关于STM32 cubemx LCD FSMC 正点原子触摸屏4.3寸的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!