您好,欢迎进入山西润盛进出口有限公司!

咨询服务热线

15383419322

解决多次插拔后 USB 无法再工作的问题

发布时间:2024-04-02 09:06人气:

客户使用的MCU 是STM32F446,反馈在做压力测试时发现多次插拔后,产品意外无法再工作。分析了几天仍然无进展,只有MCU 复位后才能恢复正常。

1 问题描述客户使用的 MCU 是 STM32F446,反馈在做压力测试时发现多次插拔后,产品意外无法再工作。分析了几天仍然无进展,只有 MCU 复位后才能恢复正常。2 问题分析由于此问题以属于偶发现象,一时半刻无法重现。首先能想到的是可能客户使用到了动态内存。通过与客户沟通,发现客户在一个比较老的 HAL 库版本上的基础上进行了改造,将原来的动态内存方式改成了静态内存,因此,不应该是内存分析失败导致。

好在之前客户有通过 USB 分析仪采集通信过程,如下图所示:

1711939600556152.png

从上图可以看出,当出现问题时,有一堆异常数据,显示为 1044 个字节,展开内容却发现大部分字节值为 0Xff,如下图所示:

1711939656176687.png

这部分数据没有合法格式,姑且认为是 USB 总线上的干扰数据,由插拔操作导致。接下来要客户尝试在调试模式下重现问题,然后再截取异常出现时 USB 各寄存器的值,检查是否有异常。

更多内容请下载阅读。

  • 联系方式
  • 传 真:
  • 手 机:15383419322
  • 电 话:15383419322
  • 地 址:山西太原市杏花岭区解放路 175 号万达中心 A 座 33 楼 3301 室
友情链接
plc控制器
自动化设备
自动化设备
伺服驱动器
在线咨询

咨询电话:

15383419322

  • 微信扫码 关注我们

Copyright © 2022-2024 山西润盛进出口有限公司 版权所有 晋ICP备2021008479号-14

晋公网安备 14010702070906号

扫一扫咨询微信客服
15383419322