• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32f103 usb hid 接收运行一段时间后出问题

FEItwo 2018-10-30 浏览量:1824
我用的hid 现在是mcu到PC发送一切正常,但是pc发送到mcu一段时间后,pc发到mcu每10秒一次。短的几分钟,长的时间半个小时,mcu就会被挂起,具体表现是,端点0就的DTOG_TX和DTOG_RX 都会被置位1,istr寄存器里面的susp和wkup寄存器也会被置位,然后电脑通信上传和下发就都不正常了。如果我不让上位机发送数据,跑多久都正常。
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 要进行仿真一下,看看程序运行的问题发生在哪些函数内。

    是缓存太小了,还是速度太快而单片机无法反应过来的

    • 发布于 2018-11-27
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
  • 单片机应该是个来不及处理,你降低数据量看看
    • 发布于2018-10-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 看看有没有进入硬件错误中断,如果没有的话那应该是usb缓冲区满了,导致数据接收出问题。
    • 发布于2018-10-31
    • 举报
    • 评论 0
    • 0
    • 0

  • 是不是优先级不够,或者中断错误,修改参数看看
    • 发布于2018-10-31
    • 举报
    • 评论 0
    • 0
    • 0

  • 看一下,是不是单片机在串口接收的时候,有别的中断出现,导致数据没有及时处理,造成溢出错误了
    • 发布于2018-11-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 这种有可能是你的优先级处理的问题,检查一下你的优先级设置
    • 发布于2018-11-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 也可能是你的缓存太小或者地址的问题,这个也要检查一下
    • 发布于2018-11-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 一般来说数据的的处理中有地址的问题就会导致这种情况,建议检查你的地址
    • 发布于2018-12-11
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32f103 usb hid 接收运行一段时间后出问题