• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

HAL库硬件I2C接口调试OLED屏不稳定

donatello 2017-10-29 浏览量:2934

​​如题,使用STM32F4的HAL硬件I2C库调试I2C接口的OLED屏幕,有时候显示成功,有时候失败,讲道理I2C OLED的原理是主机一直写数据而不需要读,因此也就没有死等busy的问题存在,那为什么还是不稳定呢?

2.JPG

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • I2C速率太高了吧,你配到了1MHz。确认下OLED屏支持IDE最大I2C速率,另外看下波形,1MHz下,信号有没有失真;
    • 发布于 2017-10-30
    • 举报
    • 评论 2
    • 1
    • 0
donatello 回复了 xiefy21:不是这个问题,速率太低的话OLED屏刷屏太慢,既然有时候能成功就应该不是速率的问题。 回复
追梦少年 回复了 donatello:也不一定吧,速率太高了,IIC总线数据丢失可能会增加 回复

其他答案 数量:6
  • 换成HAL_I2C_Master_Transmit,我用mem这个函数就没有成功过,换成HAL_I2C_Master_Transmit非常稳定,频谱都能显示
    • 发布于2017-10-30
    • 举报
    • 评论 2
    • 0
    • 0
donatello 回复了 追梦少年 :我第一次就是使用HAL_I2C_Master_Transmit的,貌似不及MEM_Write好用。 回复
追梦少年 回复了 追梦少年 :反正我就是用mem没成功换成HAL_I2C_Master_Transmit,然后关了DMA把速率调回400K,然后就一切正常,其他的就不太清楚了 回复

donatello 回复了 xhuaihe :看一楼 回复

  • IIc的速度太高会是这样。还有外部的上拉电阻是多少
    • 发布于2017-10-31
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :MAX3378EEUD+管装,MAX3378EEUD+T卷装,包装区别,同一颗料 回复

  • 硬件I2C的稳定性本来就不高,用模拟的应该不会有这种问题
    • 发布于2017-11-01
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :https://atta.szlcsc.com/upload/public/pdf/source/20161108/1478586431155.pdf 回复

  • 很有可能是i2c造成的.

    速度,以及时序.

    • 发布于2017-11-19
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :已Q 回复

  • 使用100K的速度测试看看稳定不稳定
    • 发布于2017-11-23
    • 举报
    • 评论 1
    • 0
    • 0
电子老工程师 回复了  :SOT-23-3该物料的封装寻找的型号都没有现货 ,都是无货状态 回复

相关问题

问题达人换一批

HAL库硬件I2C接口调试OLED屏不稳定