点燃OLED1
【介绍】
OLED当作一个调试的显示屏,方便调试程序。对于不断变化的数据,可以覆盖刷新显示。但屏幕很小,显示内容有限。四阵脚的OLED一般使用I2C的通信协议。
【OLED的硬件电路】
GND接GND。VDD接3.3V。SCK和SDA是通信引脚,需要接在单片机I2C通信的引脚上,但驱动函数模块使用的是GPIO口模拟的I2C通信,故这两个端口可以接在任意的GPIO口上

【VCC和VDD】
【SCL和SCK】
没什么区别(?存疑),都是用来传送数据的
【我遇到的问题】
- 硬件连接部分,因为模块和开发板接口对不上,没法对着原理图直接插。但其实就是电源接电源,地接地,SCK和SDA分别接带I2C功能的IO口就行。但是我换了无数对都不行...
- 代码部分1:我不想直接用UP主的代码,他的PB8在我这里是蜂鸣器,会非常吵,所以按照视频把涉及到端口的全都改了。感谢是用define写的,不然不知道要改多少。

- 代码部分2(输出模式):总结一下弹幕里大佬给出的解决方法:
- “GPIO_Mode_Out_OD 普通开漏输出,驱动能力不足,无法显示,更改为GPIO_Mode_Out_PP(推挽输出),正常显示 ”
- “搞了好久 没有显示可能是因为驱动不够 还有就是GPIO复用了 建议把驱动改为推挽输出 然后换一个GPIO试试”
- “因为标准I2C是有上拉电阻的,没有信号总线高电平,所以要配置成开漏”
- 然后我就换了好几种输出方法,还是没有用
- 最后看见了这篇文章:https://www.bilibili.com/read/cv18631339。就是缺上拉电阻。

- 但是开发板和模块都不是我的(泪),直接找板子的主人要是了他学习时成功过的代码跑了一下:
还得多学啊...
-
![]()
亮了


浙公网安备 33010602011771号