DA2升级(DCFTP 协议)报错,MD5校验不通过

已完成

评论

4 条评论

  • ayo

    大佬 这个bootloader程序里面的相关资料在哪儿能找到呀  有点没看懂  就比如这一段代码是什么意思呀         returnCode = DjiUpgradePlatformStm32_GetUpgradeRebootState(&isUpgradeReboot, &upgradeEndInfo);
            if (returnCode == DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS && isUpgradeReboot == true &&
                upgradeEndInfo.upgradeEndState == DJI_UPGRADE_END_STATE_SUCCESS) {
                //replace old program
                returnCode = DjiUpgradePlatformStm32_ReplaceOldProgram();
                if (returnCode != DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS) {
                    upgradeEndInfo.upgradeEndState = DJI_UPGRADE_END_STATE_UNKNOWN_ERROR;
                    DjiUpgradePlatformStm32_SetUpgradeRebootState(&upgradeEndInfo);
                }
            }

    0
    评论操作 固定链接
  • Rick

    可以自己一点一点看看,PSDK里面STM32例程挺详细的

    DjiUpgradePlatformStm32_GetUpgradeRebootState这个是拿一些升级标志位,

    然后判断这些标志位,确认了就通过DjiUpgradePlatformStm32_ReplaceOldProgram替换新固件到APP地址

    0
    评论操作 固定链接
  • ayo

    感谢大佬!还有一个问题就是  

      if (Button_GetState(BUTTON_KEY1) == GPIO_PIN_SET) {
            /* Execute the IAP driver in order to reprogram the Flash */
            IAP_Init();
            /* Display main menu */
            Main_Menu();
        } 这个Main_Menu();里面是进行获取下载新固件并重启程序的操作吗,重启完成后再进行DjiUpgradePlatformStm32_GetUpgradeRebootState升级标志位的判断,判断通过之后,通过DjiUpgradePlatformStm32_ReplaceOldProgram进行新app程序的地址写入,然后跳转程序吗 不知道我的理解对不对 希望大佬解答一下

    0
    评论操作 固定链接
  • ayo

    还有就是 我用STM32F4的开发板 连接飞机 串口一直报错 大佬有遇见过这个情况吗

    0
    评论操作 固定链接

请先登录再写评论。