WIFI技术
直播中

南中南

9年用户 1003经验值
擅长:光电显示
私信 关注
[问答]

SDIO总线启动失败, whd_kso_enable失败的原因?

我们在新产品中移植了 WIFI 协议栈,但出现了 WIFI 稳定性问题,主要是显示 SDIO 总线通信错误,出现该问题时我们重启了协议栈,但不知道根本原因何在,您能帮我们解决这个问题吗?
非常感谢!

  • 设置
  • 问题

    • "SDIO总线启动失败,whd_kso_enable 失败" 时常出现错误,有时在刚连接 AP 后出现,有时在几分钟后出现。
    • 对堆栈进行了一些改动,但没有任何改进:

      • 强制速度为 25MHz(不跳至 50MHz)。
      • 强制使用复制到内部 RAM 的 DMA 内存 () -- bool"use_temp_dma_buffer = true"
      • #define CYBSP_WIFI_SDIO_NEEDS_INIT (0)
      • 某些定时/重试时间过长

        • #define SDIO_ENUMERAtiON_TRIES (1000)
          #define SDIO_RETRY_DELAY_MS (2)
          #define SDIO_BUS_LEVEL_MAX_RETRIES (200)
        • #define SPINWAIT_POLL_PERIOD 20
        • #defineKSO_WAIT_MS(2)
          #defineMAX_KSO_ATTEMPTS(1000)




回帖(1)

王敏

2024-5-28 16:34:18
根据您提供的信息,我将尝试分析可能导致 "SDIO总线启动失败,whd_kso_enable失败" 的原因,并提供一些建议来解决这个问题。

1. 硬件问题:首先,检查硬件连接是否正确。确保 SDIO 接口的引脚连接正确,并且没有损坏。此外,检查 Murata 2.4/5 GHz 双频 Wi-Fi 模块是否与您的 STM32H7B3LI 兼容。

2. 驱动问题:确保您使用的是适用于您的硬件和操作系统的最新驱动程序。如果可能,请尝试更新驱动程序或使用其他版本的驱动程序。

3. 固件问题:检查您的 Wi-Fi 模块固件是否是最新版本。如果不是,请尝试更新固件。

4. 电源问题:确保 Wi-Fi 模块的电源供应稳定且符合规格要求。不稳定的电源可能会影响 SDIO 总线的正常工作。

5. 软件配置问题:检查您的软件配置是否正确。确保 SDIO 总线的时钟频率、电源管理设置等参数正确设置。

6. 协议栈问题:由于您提到在新产品中移植了 Wi-Fi 协议栈,可能存在一些兼容性问题。请检查协议栈的代码,确保它与您的硬件和操作系统兼容。

7. 错误处理:在您的代码中添加更详细的错误处理和日志记录,以便在出现问题时能够快速定位问题所在。

8. 调试:使用调试工具(如 ST-Link)对您的系统进行调试,以便更好地了解问题发生时的系统状态。

9. 社区支持:如果您仍然无法解决问题,可以尝试寻求社区支持,例如在相关论坛或 GitHub 仓库中提问。

希望这些建议能帮助您找到问题的根本原因并解决它。祝您好运!
举报

更多回帖

×
20
完善资料,
赚取积分