你好:
如题,这个flag的值是如何产生的?为什么会等于0x5A5A5A5A?
对于这一步flag的判断是必要的吗?还是只要观察GPIO的电平变化就可以判断是否需要进入更新程序?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你好:
如题,这个flag的值是如何产生的?为什么会等于0x5A5A5A5A?
对于这一步flag的判断是必要的吗?还是只要观察GPIO的电平变化就可以判断是否需要进入更新程序?
不知您是否参考过下面的文档?
https://www.ti.com/lit/an/spna241/spna241.pdf
在 10 CAN Bootloader Operation 给出了详细说明,您可以看一下流程
对于这一步flag的判断是必要的吗?还是只要观察GPIO的电平变化就可以判断是否需要进入更新程序?
If the flag is a valid number (0x5A5A5A5A), the bootloader jumps to the application code at 0x00010020.
If the flag is not the valid number, it configures CAN and SCI, then starts to update the application code by calling UpdaterCan().
您可以看一下附件内的工程,如 boot-can
这个5A是预先定义好的放在这个地址的?还是CPU一上电默认等于这个?
uint32_t g_pulUpdateSuccess[] = {0x5A5A5A5A, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0};
个人认为这个值是固定的,放在ROM内的,即CPU一上电默认等于这个
请问传输文件的串口上位机是哪个?
您现在不是使用的CAN进行程序升级吗?

在此使用的是 A windows 10 PC with Visual C++ 2010