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

【STM32C0评测】驱动ST7735LCD屏

[复制链接]
lugl 发布时间:2025-4-22 23:37

1、原理图分析,在原理图的接口中我使用ardunio标准接口CN5来连接LCD。

image.png

2、打开stm32cubeMX分配SP1如下:

image.png

修改参数为8bit,高位在前,分频2,CPOL为Low,CPHA 为1Edge,禁用硬件CS

image.png

3、为LCD的RST、DC、CS分配GPIO如下:

image.png

4、生成工程后,移植一个st7735的驱动,将驱动添加到工程中:

image.png

5、修改发送命令、数据的代码如下:

void ST7735_WriteCommand(uint8_t cmd)
{
  HAL_GPIO_WritePin(ST7735_DC_GPIO_Port, ST7735_DC_Pin, GPIO_PIN_RESET);
  HAL_GPIO_WritePin(ST7735_CS_GPIO_Port, ST7735_CS_Pin, GPIO_PIN_RESET);
  HAL_SPI_Transmit(&ST7735_SPI_INSTANCE, &cmd, 1, HAL_MAX_DELAY);
  HAL_GPIO_WritePin(ST7735_CS_GPIO_Port, ST7735_CS_Pin, GPIO_PIN_SET);
}

void ST7735_WriteByte(uint8_t data)
{
  HAL_GPIO_WritePin(ST7735_DC_GPIO_Port, ST7735_DC_Pin, GPIO_PIN_SET);
  HAL_GPIO_WritePin(ST7735_CS_GPIO_Port, ST7735_CS_Pin, GPIO_PIN_RESET);
  HAL_SPI_Transmit(&ST7735_SPI_INSTANCE, &data, 1, HAL_MAX_DELAY);
  HAL_GPIO_WritePin(ST7735_CS_GPIO_Port, ST7735_CS_Pin, GPIO_PIN_SET);
}

void ST7735_WriteData(uint8_t *data, size_t data_size)
{
    HAL_StatusTypeDef spi_state;
  HAL_GPIO_WritePin(ST7735_DC_GPIO_Port, ST7735_DC_Pin, GPIO_PIN_SET);
  HAL_GPIO_WritePin(ST7735_CS_GPIO_Port, ST7735_CS_Pin, GPIO_PIN_RESET);

  spi_state = HAL_SPI_Transmit(&ST7735_SPI_INSTANCE, data, data_size, HAL_MAX_DELAY);
  //spi_state = HAL_SPI_Transmit_DMA(&ST7735_SPI_INSTANCE, data, data_size);
  if(spi_state != HAL_OK)
  {
      printf("spi_send err:%d", spi_state);
  }
  HAL_GPIO_WritePin(ST7735_CS_GPIO_Port, ST7735_CS_Pin, GPIO_PIN_SET);
}

6、在主程序中添加测试函数:

  /* USER CODE BEGIN 2 */
    printf("start\r\n");
    ST7735_Init();
    ST7735_DrawString(10, 10, "STM32C092", ST7735_BLACK, ST7735_WHITE, &Font_11x18);
    ST7735_DrawString(10, 32, "ST7735LCD", ST7735_BLACK, ST7735_WHITE, &Font_11x18);
  /* USER CODE END 2 */

【效果】

c1516f53f49ecd225025dd6d425730b.jpg

收藏 评论2 发布时间:2025-4-22 23:37

举报

2个回答
种花家刘氓兔 回答时间:前天 11:44

大佬下一篇就是移植touchgfx的了嘛

lugl 回答时间:前天 22:39

种花家刘氓兔 发表于 2025-4-23 11:44
大佬下一篇就是移植touchgfx的了嘛

TFT的TouchGFX内存不够呀,搞了个OLED的。

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版