Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
VL53L0X
模拟IIC_I2C
stm32F103核心板使用IIC出现的问题
发布于 2021-12-14 16:06:04 浏览:1168
订阅该版
如标签,板子使用的是STM32F103ZET6核心板,在使用传感器VL53L0X(TOF)时出现了下面的报错。 ![image.png](https://oss-club.rt-thread.org/uploads/20211214/315e43bee74ad1c2d6a2d6b6f89ba96a.png.webp) 同时询问了软件包的作者,按照作者提供的方法检查了I2C的配置和器件地址: ![image.png](https://oss-club.rt-thread.org/uploads/20211214/4c7fa44856160d76a10f4d35f2a0886d.png) ![image.png](https://oss-club.rt-thread.org/uploads/20211214/8ddac84a55d9f10e8c74f82c02021189.png) 最后定位到rt_i2c_transfer(i2c_bus_dev, msg, 2)一直返回-8 再往下定位到是bus->ops->master_xfer(bus, msgs, num);返回-8 ![image.png](https://oss-club.rt-thread.org/uploads/20211214/de06749ba5833c3c7d750b7920aac054.png) 原型函数如下: ![image.png](https://oss-club.rt-thread.org/uploads/20211214/70b32ba4ad44358b08dedd4ae40953ff.png) ![image.png](https://oss-club.rt-thread.org/uploads/20211214/b49da9c0a53a59f21996f82cc2a77cfc.png) 一直到下面函数里 ![image.png](https://oss-club.rt-thread.org/uploads/20211214/43223273526578e9ca6519c1b601b3a9.png.webp) ret = i2c_recv_bytes(bus, msg);这一函数的返回值符合if条件,最后输出了-8 进入到这一函数中 ![image.png](https://oss-club.rt-thread.org/uploads/20211214/051c924c00a1ffc216e919c20d397aed.png.webp) 这是硬件导致的问题吗
查看更多
Acuity
2021-12-15
这家伙很懒,什么也没写!
这个包是我提供的。仿真单步调试,检查第一步,发送器件地址后,有无收到ACK。更直接的办法是用逻辑分析仪抓下i2c波形(X宝上几十块有可以搞一个了)。
6
个回答
默认排序
按发布时间排序
CharlesX
2021-12-14
Make science fiction science
给你个思路? 1. 先别用软件包,找个别人写好的、验证过的软件看看能不能驱动,排除硬件问题; 2. 我在之前用这个驱动的时候发现,如果从器件是只读不能写的话,就会写入失败,可以自己改一下驱动逻辑,该驱动默认是读完后切换R/W读写位的,有些只读器件不支持写的;可以从这个地方调试排查一下。
小小李sunny
2021-12-14
这家伙很懒,什么也没写!
1.建议先排查一下硬件问题; 2.可以看一下I2C的波形,看一下输出是否正确; 3.先把I2C通信调试没问题再用软件包呢
嚜軒公告
2021-12-15
努力中
他这个iic好像是rtt库去对接硬件,然后你直接调用rtt的库,先写出来的测试一下用示波器,然后再看看接口是否正确
游走在01的海洋
2021-12-15
In the end, it's not the years in your life that count. It's the life in your years.
一、建议 1.看看原子的相关IIC是如何实现的。 2.使用示波器,查看时序是否正确;可以在应用中编写一个,在固定地址写入读取的函数,只查看这个函数的时序,看是否正确;根据时序结果进行分析。
南城
2021-12-15
这家伙很懒,什么也没写!
感谢大家的回复,我下单买个逻辑分析仪测一下波形
撰写答案
登录
注册新账号
关注者
0
被浏览
1.2k
关于作者
南城
这家伙很懒,什么也没写!
提问
4
回答
6
被采纳
0
关注TA
发私信
相关问题
1
模拟IIC中 SCL 延时的问题
2
在RTT中增加IIC设备
3
rt-thread ov2640 模拟iic 初始化失败
4
模拟I2C使用,线程调度貌似有问题
5
RTT studio打开软件IIC加载不出来drive_iic.c文件
6
使用max30102软件包时出现线程断言错误
7
F407zgoled编译报错
8
rt_thread IICunlock问题
9
使用sensor_lsm6dsm时,出现了传感器可以注册成功却无法读数的问题
10
硬件定时器太长卡串口中断
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用百度AI助手辅助编写一个rt-thread下的ONVIF设备发现功能的功能代码
2
RT-Thread 发布 EtherKit开源以太网硬件!
3
rt-thread使用cherryusb实现虚拟串口
4
《C++20 图形界面程序:速度与渲染效率的双重优化秘籍》
5
《原子操作:程序世界里的“最小魔法单位”解析》
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
at_device
ulog
C++_cpp
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
张世争
9
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
a1012112796
13
个答案
1
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
本月文章贡献
程序员阿伟
6
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
Betrayer
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部