找回密码
 立即注册
查看: 490|回复: 4

STC I2C通信问题请教

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-05-09 08:48:39

4

主题

20

回帖

156

积分

注册会员

积分
156
发表于 2024-5-27 17:22:38 | 显示全部楼层 |阅读模式
有一个主机和10个从机,主机以前是用ESP32+micropython编写的,10个从机是用STC8G1K08,从机的地址设定为90~99,主从机之间通过4Pin的插座连接。以前micropython有个函数,主机可以查询到全部连接的I2C的地址,现在想用STC8H做为主机,请问怎样能查询到连接在总线上的从机的设备地址?
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-06-16 00:13:00
已绑定手机

37

主题

2221

回帖

2658

积分

荣誉版主

积分
2658
发表于 2024-5-27 20:32:38 | 显示全部楼层
自己编写一个类似于micropython的那个函数,原理很简单,按照通信规则遍历所有地址,有正常回应的进行记录统计。
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-05-09 08:48:39

4

主题

20

回帖

156

积分

注册会员

积分
156
发表于 2024-5-29 18:13:57 | 显示全部楼层
用逻辑分析仪看了ESP32发的数据,发现一个很奇怪的事情,micropython 命令START后,程序写的是发的地址是92(10进制),逻辑分析仪看到发的地址是乘了2的,发的是184。STC主机改为发184后,也OK了。有点不是很明白。mpy 用的是这个命令:i2c.writeto_mem(92, 0,01)。记得当时用:I2C.writeto(92,01),从机收不到信息。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:500
  • 最近打卡:2025-06-16 10:39:44
已绑定手机

29

主题

349

回帖

1991

积分

金牌会员

机长

积分
1991
发表于 2024-6-21 11:36:12 | 显示全部楼层
zhang_*** 发表于 2024-5-29 18:13
用逻辑分析仪看了ESP32发的数据,发现一个很奇怪的事情,micropython 命令START后,程序写的是发的地址是92 ...

I²C的地址是7位,十进制的92是二进制的1011100,再加上一位表示写指令的0,就是二进制的10111000,是不是就是你以为的184了?
业余撸代码,专业开飞机 https://gitee.com/STC-MCU
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-16 12:55 , Processed in 0.208252 second(s), 68 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表