树莓派-I2C问题解析-SDA线被抬高

电路setup
在这里插入图片描述
问题:
1, 元器件1 - 可以通讯
在这里插入图片描述
在这里插入图片描述
2, 元器件2: 不可以通讯

  • SDA线有电压抬高
  • vdd基本可以

在这里插入图片描述
分析:

  • 直接接树莓派的I2C脚,问题一样。
    在这里插入图片描述

  • 更换到树莓派4上面,问题一样 (带10k上拉电阻)
    在这里插入图片描述

  • 树莓派4,无上拉电阻
    在这里插入图片描述

  • 另外一个树莓派+另外一个系统
    在这里插入图片描述

  • 新的树莓派+新的系统lite
    在这里插入图片描述

  • Module + Kita
    在这里插入图片描述

  • SEK + kita
    在这里插入图片描述
    调查发现:
    MCU端存在上拉电阻,并且上拉电阻过小。

  • 树莓派端上拉电阻为1.8K

  • kita的MCU端的上拉电阻为2.2K
    在这里插入图片描述
    解决方法:

  • 增加MCU端的上拉电阻阻值大小,同理,i2c器件端的上拉电阻也应该增加,因为存在同样的问题–》 阻值范围参考i2c规范的定义

  • 减少串联series电阻的组织

验证:

  • STM32:增加MCU的上拉电阻到10K
    在这里插入图片描述
  • 树莓派:将R23,R24从1.8k改成10k后
    树莓派电路图:
    在这里插入图片描述
    修改成10k后的i2c信号
    在这里插入图片描述

参考:
如果传感器的每个脚对着kita的每个脚 --》 线序不正确的连接
在这里插入图片描述
用kita的传感器转接板–》 线序正确的话
在这里插入图片描述

版权声明:本文为CSDN博主「不甘懦弱」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/morgan2018/article/details/121248373

生成海报
点赞 0

不甘懦弱

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

RT-Thread Studio移植LAN8720A驱动

RTT网络协议栈驱动移植(霸天虎) 1、新建工程 ​ 工程路径不含中文路径名,工程名用纯英文不含任何符号。 2、用CubeMx配置板子外设 2.1、配置时钟 ​ 按照自己板子配置相应时钟。

【STM32Cube笔记】12-配置外部中断

【STM32Cube笔记】系列文章目录 1-基于STM32的VSCode入门级教程前言 2-STM32Cube安装教程 3-STM32CubeIDE汉化 4-STM32Cube配置时钟设置 5-跑马灯引脚配置 6-Cortex-M7内核基本配

stm32cubemx+HAL+串口接收中断

stm32cubemxHAL串口接收中断 在cubemx配置完串口和global interrupt后需要在keil中添加如下代码。 第一步:在main函数中添加接收中断标志位开启函数 HAL_UART_Receive_IT