完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我最后一次尝试用 I2C 连接 2x 8266。
一为主人,一为奴隶。 但没有结果。我在 Web 上阅读了很多内容并尝试了很多变体,但没有任何效果。 I2C 总线工作正常,因为我在同一总线上有一个 I2C OLED TFT 或一个 I2C 传感器用于测试。 然后我禁用 TFT 和传感器并只尝试主从。 我在来自 Web 的测试 PCB 上使用 ESP 8266 12F 模块。 所以我只能通过 LED 或串行打印看到主从连接正在工作。 2 线 SCL 和 SDA 是正确的,只有 7 厘米长。 有人知道我做错了什么吗? 我可能会尝试,但我在这里设置了我也尝试过的链接。 |
|
相关推荐
1个回答
|
|
首先,请确保您的I2C地址是唯一的,主和从之间不应该有相同的地址。如果地址正确,您可以尝试以下解决方案:
- 确保您的ESP8266代码正确地初始化I2C总线。使用Wire.begin()函数并确保SCL和SDA引脚是正确的。 - 对于从机ESP8266,确保您正确地初始化了Wire.onReceive()和Wire.onRequest()回调函数。您应该在这些函数中添加代码,以便从机可以接收和处理从主机发送的数据。 - 在主ESP8266上,使用Wire.beginTransmission()和Wire.endTransmission()函数发送数据。确保你发送的数据是正确的,地址和数据格式都是正确的。 - 最后,请注意电源供应。ESP8266需要稳定的电源,如果电源波动或不稳定,I2C总线可能无法正常工作。您可以使用电解电容器来稳定电源,或者使用稳压器来提供稳定的电源。 如果您仍然无法解决问题,请检查硬件线路是否正确连接,特别是SDA和SCL线路是否正确连接。您也可以使用逻辑分析仪或示波器来检查I2C通信是否正常。 |
|
|
|
只有小组成员才能发言,加入小组>>
417浏览 6评论
349浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
331浏览 5评论
333浏览 4评论
314浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-22 06:07 , Processed in 0.675462 second(s), Total 46, Slave 40 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号