点燃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(输出模式):总结一下弹幕里大佬给出的解决方法:
    1. “GPIO_Mode_Out_OD 普通开漏输出,驱动能力不足,无法显示,更改为GPIO_Mode_Out_PP(推挽输出),正常显示 ”
    2. “搞了好久  没有显示可能是因为驱动不够 还有就是GPIO复用了 建议把驱动改为推挽输出 然后换一个GPIO试试”
    3. “因为标准I2C是有上拉电阻的,没有信号总线高电平,所以要配置成开漏”
    4. 然后我就换了好几种输出方法,还是没有用

 

 

  • 但是开发板和模块都不是我的(泪),直接找板子的主人要是了他学习时成功过的代码跑了一下:

     

     还得多学啊...

  •  亮了

posted @ 2023-04-10 14:26  整点薯条拯救一切  阅读(560)  评论(2)    收藏  举报