使用的芯片时STM32F103,使用USB转串口与PC通讯
目前程序有bootloader和APP 2个程序,bootloader中有IAP升级后跳转到APP。现在情况如下:
1、如果bootloader和APP中都有对USB初始化的操作,那IAP升级跳转到APP之后,需要重新插拔USB才能与PC正常通讯。(正常操作需要不能插拔USB)
2、如果只是在bootloader中对USB初始化,那IAP升级跳转到APP后,PC可发数据,但是芯片未收到数据。跟踪进去后发现是bootloader中USB所用的RAM和APP中的RAM地址不同。
如果想bootloader程序和APP程序的存放USB状态的数据使用同一块RAM,该怎么设置呢?
如果不设置RAM,那么怎样才能实现程序跳转之后,USB不需要重新插拔也可与PC正常通讯呢? |