完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
这应该不难。我已经使用 Arduino Uno 或使用我自己围绕 Atmega328p 设计的电路板完成了它。拥有一个带有受控器(例如 ILI9341)的 TFT LCD,并让它与 SD 卡共享 SPI,这是一件很容易的事。但是,试图用 ESP8266(例如 12-E)完成同样的事情,似乎是一项不可能完成的任务。
我已经阅读了几篇关于这个问题的帖子,但没有人提供解决方案——也许根本就没有。大多数人只会使用 ESP8266 中的内部闪存。问题在于闪存的写入周期寿命有限。因此,在频繁写入时使用 SD 卡更有意义——您可以轻松更换 SD 卡。 我已经尝试了很多方法来尝试使 SD 卡和 TFT 发挥良好,从使用上拉电阻,到为 ESP 和卡和 TFT 提供单独的电源(仅通过接地连接),再到尝试巫毒教。到目前为止没有任何效果。有人说是因为SD卡和TFT在SPI上的通信方式有冲突。但是,如果是这样的话,Arduino UNO 中也会存在同样的问题。但是,事实并非如此。 我还必须提到,我已经尝试使用 ESPlorer 中的 Lua 以及 Arduino 中的 C 甚至 MircoPython 来解决这个问题。我还使用数字分析仪分析了信号。但是,到目前为止,我一无所获。 我想知道是否有其他人遇到过这个问题并找到了解决方案……或者,这是不可能的吗? |
|
相关推荐
1个回答
|
|
ESP8266 共享 SPI,但是由于 ESP8266 的硬件设计,使用 SD 卡时可能会出现问题。因为 ESP8266 的协议栈占用了 SPI 控制器,并且在访问 SD 卡时需要频繁切换 SPI 总线上的从设备。这会导致 SD 卡与其他设备(如 TFT LCD)之间的 SPI 信号干扰,从而导致数据传输错误。此外,ESP8266 的一些型号(如 ESP-12E)只有一个 SPI 控制器,因此共享 SPI 总线时会更加困难。
有一些解决方案可尝试: 1.使用软件 SPI 使用软件 SPI 可以避免由于 ESP8266 与 SD 卡共享同一个硬件 SPI 控制器而导致的干扰问题。但是,使用软件 SPI 会降低传输速度且不稳定。 2.使用更高级的 ESP8266 模块 一些更高级的 ESP8266 模块(如 ESP-WROOM-32)提供了多个 SPI 控制器,使得共享 SPI 总线更容易。 3.使用外部 SPI 控制器 一个可能的解决方案是使用一个外部 SPI 控制器,例如 SPI EEPROM 控制器或 SPI SD 卡扩展板。 总之,虽然可以尝试共享 SPI 总线,但出现干扰问题可能导致错误的数据传输。因此,使用 SD 卡时建议使用软件 SPI 或使用外部 SPI 控制器。 |
|
|
|
只有小组成员才能发言,加入小组>>
168个成员聚集在这个小组
加入小组313 浏览 0 评论
1170 浏览 1 评论
585浏览 6评论
483浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
468浏览 5评论
467浏览 4评论
442浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 11:06 , Processed in 0.935616 second(s), Total 47, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号