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

【STM32H503评测】+ SPI接口OLED显示

[复制链接]
STMWoodData 发布时间:2023-9-7 15:36

首先打开STM32CubeMX基于开发板方式新建项目,找到STM32H503。本次主要测试SPI接口功能。使能SPI1,因为只需要发送数据,这里就设置了只发送模式。

OLED接线:

OLED_D0------PB3 //SCK

OLED_D1------PB5 //MOSI

OLED_RST--- -PB0 //复位

OLED_DC------PB10 //命令/数据选择

OLED_CS------PA8 //CS片选

如下图所示,设置GPIO模式。

SPI分频频率不要太高了。

1.jpg

2.jpg

最终SPI配置

image.png

image.png

下面开始移植OLED库,使用的是SSD1306驱动。之前也在其他平台移植过,所以本次移植很快就成功了。

移植主要实现SPI读写命令和数据函数。

void ssd1306_Reset(void) 
{
    // CS = High (not selected)
    HAL_GPIO_WritePin(SSD1306_CS_Port, SSD1306_CS_Pin, GPIO_PIN_SET);

    // Reset the OLED
    HAL_GPIO_WritePin(SSD1306_Reset_Port, SSD1306_Reset_Pin, GPIO_PIN_RESET);
    ssd1306_mdelay(10);
    HAL_GPIO_WritePin(SSD1306_Reset_Port, SSD1306_Reset_Pin, GPIO_PIN_SET);
    ssd1306_mdelay(10);
}

// Send a byte to the command register
void ssd1306_WriteCommand(uint8_t byte) 
{
    HAL_GPIO_WritePin(SSD1306_CS_Port, SSD1306_CS_Pin, GPIO_PIN_RESET); // select OLED
    HAL_GPIO_WritePin(SSD1306_DC_Port, SSD1306_DC_Pin, GPIO_PIN_RESET); // command
    HAL_SPI_Transmit(&SSD1306_SPI_PORT, (uint8_t *) &byte, 1, HAL_MAX_DELAY);
    HAL_GPIO_WritePin(SSD1306_CS_Port, SSD1306_CS_Pin, GPIO_PIN_SET); // un-select OLED
}

// Send data
void ssd1306_WriteData(uint8_t* buffer, size_t buff_size) 
{
    HAL_GPIO_WritePin(SSD1306_CS_Port, SSD1306_CS_Pin, GPIO_PIN_RESET); // select OLED
    HAL_GPIO_WritePin(SSD1306_DC_Port, SSD1306_DC_Pin, GPIO_PIN_SET); // data
    HAL_SPI_Transmit(&SSD1306_SPI_PORT, buffer, buff_size, HAL_MAX_DELAY);
    HAL_GPIO_WritePin(SSD1306_CS_Port, SSD1306_CS_Pin, GPIO_PIN_SET); // un-select OLED
}

下面看看oled显示效果吧

image.png

image.png

image.pngimage.png

image.png

stm32h5_spi_oled.zip

收藏 评论2 发布时间:2023-9-7 15:36

举报

2个回答
STMWoodData 最优答案 回答时间:2023-9-7 15:39:17
代码:% \" O, p; w7 g1 k) ^- P

3 e, A' }. J6 p, B7 d stm32h5_spi_oled.zip (1.28 MB, 下载次数: 5)
hfndhf123 回答时间:2023-9-8 13:54:21
H5除了接个屏,感觉现在H5很火啊,一货难求,有没有试试别的功能
/ n& v$ j; ?; _' l' J  Z
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版