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

stm32做usb device,如何清空PMA?

buyadong 2018-05-22 浏览量:1621

情况是这样的~

stm32f103作为usb device时,与主机通信,如果某一次主机程序异常导致未读走stm32 usb模块PMA缓冲区的数据包,下次主机程序启动之后,直接发一条命令,然后读取答复,但是会发现读取到的是上次未读走的数据包,从而导致错位。


请问stm32f103在通过usb发送一个数据包时,如何使PMA中之前的未读走的数据包失效或者清空?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 发送之前先清空缓冲区,让整个缓冲区都归0
    • 发布于 2018-05-22
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:1
  • STM32做USB或者串口设备时都需要用缓冲区来暂存数据,发送之前要清空缓冲区,才能准备下一次的发送。

    • 发布于2018-05-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32做usb device,如何清空PMA?