你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【NUCLEO-H533RE评测】3 SPI驱动st7735

[复制链接]
lugl 发布时间:2024-7-2 17:57

【前言】

我的测评项目为移植toucGFX,因此驱动LCD为第一步。本章主要介绍如何配置SPI并实现驱动LCD屏。

【硬件】

1、NUCLEO-H533RE开发板

2、ST7735LCD屏为spi接口模式。

【硬件连接】

spi选用spi3,只需要使用到SCK、MOSI两线。

LCD屏的背光直接接到3.3V,不需要配置。

DC、RST、CS为分为PC7、PC6、PC9。

【实现步骤】

1、打开stm32cubIDE配置NUCLEO-H533RE开发板的基础工程。

2、打开spi3,配置GPIO为PB1、PC12

image.png

3、修改通信速率为very hight,要不然跑到高频率就不会显示。

image.png

4、配置DC、RST、CS,以及其标签如下图所示:

image.png

5、配置spi的参数如下:

image.png

保存工程并打开IDE编辑器。

6、添加st7735.c/h,fonts.c/h到工程中。

image.png

修改st7735.h中的spi为hspi3,并确认一下GPIO的别名是否正确:

image.png

如果屏的分辨率不对,可以修改对应的宽度与高度。

6、在主函数中添加头文件,并添加测量代码如下:

'''

ST7735_Init();

/ USER CODE END 2 /

/ Initialize leds /

BSP_LED_Init(LED_GREEN);

/ Initialize USER push-button, will be used to trigger an interrupt each time it's pressed./

BSP_PB_Init(BUTTON_USER, BUTTON_MODE_EXTI);

/ Initialize COM1 port (115200, 8 bits (7-bit data + 1 stop bit), no parity /

BspCOMInit.BaudRate = 115200;

BspCOMInit.WordLength = COM_WORDLENGTH_8B;

BspCOMInit.StopBits = COM_STOPBITS_1;

BspCOMInit.Parity = COM_PARITY_NONE;

BspCOMInit.HwFlowCtl = COM_HWCONTROL_NONE;

if (BSP_COM_Init(COM1, &BspCOMInit) != BSP_ERROR_NONE)

{

Error_Handler(); }

/ Infinite loop /

/ USER CODE BEGIN WHILE /

while (1)

{

ST7735_FillScreen(ST7735_RED);

HAL_Delay(500);

ST7735_FillScreen(ST7735_GREEN);

HAL_Delay(500);

ST7735_FillScreen(ST7735_BLUE);

HAL_Delay(500);

ST7735_DrawString(0, 0, "CSDN666", ST7735_BLUE, ST7735_BLACK, &Font_11x18);

HAL_Delay(500);

/ USER CODE END WHILE /

/ USER CODE BEGIN 3 / }

'''

下载到开发板,可以正常的驱动屏:

收藏 评论1 发布时间:2024-7-2 17:57

举报

1个回答
lugl 回答时间:2024-7-2 17:59:16
myst7735_test.zip (15.08 MB, 下载次数: 20)
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版