STM32Cubemx HAL移植标准库例程2:OLED移植和IIC通信

江科大自化协标准库改为HAL库 例程2:OLED移植和IIC通信

  • 第一步:分别配置GPIO,RCC,SYS,时钟树(省略)

配置IIC两种方法:F103自带了PB8 PB9,PB7 PB6为IIC通信口,使用现成的口去接收和发送,调用HAL库即可
在这里插入图片描述
第二种方法(江科大视频中的代码,将GPIO配置为模拟IIC,需要有高低电平的转换)
在这里插入图片描述

在这里插入图片描述

  • 第二步:配置I2C,我的F103会自动分配IIC的SCL和SDA模块
    此处我将江科大的标准库代码改动为HAL库,也可用于GPIO口的数据收发
    在这里插入图片描述
    OLED驱动需要做的改动为:
  1. 加入stdint.h 很多uint8_t的类型会报错
  2. 使用HAL的GPIO输出库 注意此处!PIN_6为大写!!!!
    在这里插入图片描述
  3. IIC初始化去掉GPIO和IIC的初始化,在cubemx中已经生成了,只需要做一两个高电平信号,Start还是像往常一样,需要四个步骤,上升下降(为什么这么写请看下方IIC通信的原理,需要有起始信号结束信号)
    [外链图片转存失败,源站可能有防盗在这里插入!链机制,建描述]议将图片上https://传(imblog.csdig.cn/7bX5D36bd3284c5a4a86b3bfbeacd306.png542)(https://img-啊blog.csdnimg.cn/7b6bd3284c5a4a86b3bf2bc01eacd326.png)]
  4. 最重要的改动IIC写命令,需要看你的OLED背后的电阻,靠近地址,就是IIC的从机地址。我的为0x78
    在这里插入图片描述

在这里插入图片描述
使用取字模软件,写出你要显示出的字,存入OLED_FONT.h中
OLED_Init(void)中基本不用换了,本文结束

参考文章:

写的很好IIC通信原理

  • 7
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
STM32是意法半导体公司推出的一款32位微控制器,具有丰富的外设和强大的性能。HAL是意法半导体公司提供的一个可移植的、易于使用的硬件抽象层,可以方便地进行底层驱动和外设编程。OLED(Organic Light-Emitting Diode)是一种有机发光二极管显示技术,具有超薄、高亮度、快速响应和低功耗等特点。 而OLED1.8是一款1.8英寸的OLED显示屏,适用于STM32系列微控制器。通过使用STM32 HAL提供的函数和方法,我们可以方便地控制OLED显示屏进行图像的显示和刷新操作。 首先,我们需要设置STM32的GPIO引脚,与OLED屏幕的时钟信号、数据信号、复位信号等进行连接。然后,我们可以使用HAL提供的函数来配置这些GPIO引脚。 接下来,我们需要初始化OLED屏幕。通过发送相应的控制命令和数据,我们可以设置OLED的工作模式、显示区域、亮度等参数。这些操作可以使用HAL提供的函数来完成。 然后,我们可以通过调用HAL中的函数来将图像数据写入到OLED屏幕的缓冲区中。这些函数可以直接将位图数据写入到OLED屏幕的内存,从而实现图像的显示。 最后,我们可以使用HAL提供的函数来刷新OLED屏幕,使其显示更新后的图像。这些函数可以将OLED屏幕缓冲区中的数据刷新到实际的显示屏上,从而实现图像的动态刷新。 总结来说,STM32 HALOLED1.8的结合可以方便地实现对OLED显示屏的控制和图像的显示。通过HAL提供的函数和方法,我们可以快速、简单地进行开发,并实现丰富多彩的显示效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编号09527

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值