【项目笔记:HT46】设备USB在HUB上升级导致未连接

问题描述

在 APP_DTQ_RP55x_CPU_v010008_202004161_b4.bin 版本的固件上发现一个现象:使用HUB的时候发现设备是未连接的
在这里插入图片描述
当设备直接接在电脑上的时候
在这里插入图片描述
设备显示是链接的

  • 经过多次降级测试发现:只要是升级到 v0.1.08 就算 升级自己部分升级也是会出现这个问题,但是从 v1.0.8 升级到 v0.7.7 是OK的

就是这个 升级到高版本的过程会把HUB弄死,但是在电脑自身不会死掉

  • 测试 2 种类型的HUB都会死掉【那么这个问题就是我们的问题】

问题的分析与解决

还是猜测最近出现的系统兼容问题都是和USB断开延时有关联,于是尝试在USB线程启动之前断开设备
修改如下

  /* 启动参数初始化完成之后端口 USB */
  USB_DevDisconnect(USB_OTG_HS);
  /* set LED0 pin */
  rt_pin_mode(APP_LED0_PIN, PIN_MODE_OUTPUT);
  rt_pin_mode(APP_LED1_PIN, PIN_MODE_OUTPUT);
  rt_pin_write(APP_LED1_PIN, PIN_LOW);
  dfu_image_info_read((uint32_t *)(sys_tcb_val.img_name), &img_rlen);
  /* 初始化内部参数 */
  INIT_DEBUG("> 配置参数 init\n");
  ret = fee_system_config_init();
  INIT_DEBUG("> 配置参数 %s\n", (ret == 0) ? "OK" : "FAIL");
  /* 启动工作线程 */
  th_lcd_init();
  th_card_init();
  th_spi_init();
  th_voc_init();
  th_wifi_init();
  th_dtq_init();
  th_swd_init();
  th_usb_init();

测试有效


总结

在 USB 的应用中如果程序无法响应USB的上行数据,就一定要断开链接,否则就可能会导致对方出现不可预见的异常


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值