用户程序采用HID方式和上位机传输数据,现在准备写个bootloader 程序,也采用USB HID方式进行程序下载,硬件上没有做升级按键, 现在的思路是: bootloader 程序首先等待5s(枚举),判断用户程序是否有效,如果用户程序有效,而且上位机没有发送升级命令,则执行用户程序,否则 ,执行下载程序。
bootloader 的USB 枚举是采用查询方式,代码位置在(0xEA00-0XFE00),用户代码放在(0x1200-0xE9FF);
现在的问题是: bootloader 跳转到用户程序是正常的,但是从用户程序跳转到bootloader,出现枚举失败,不能识别设备。
是不是这种方式不合理,还是需要升级按键来判断是否升级?
|