My project needs a bootloader using I2C interface to implement online upgrade. We do not allow using a hardware pin to switch bootloader and application!!!
That is we do not allow switching bootloader and application by controlling BM pin high or low!!!
As we know that a I2C bootloader is built in ADuC702xi serials.
I used ADuC7023i before. About switching bootloader and application, the datasheet of ADuC7023i describes like this:
|"Boot Mode Entry Pin. The ADuC7023 enters I2C download mode if BM is
low at reset with a flash address 0x80014 = 0xFFFFFFFFF. The ADuC7023
executes code if BM is pulled high at reset or if BM is low at reset with a
flash address 0x80014 not equal to 0xFFFFFFFFF"
So I can switch bootloader and application by changing the value of flash address 0x80014 and pull BM pin low at the meanwhile.
Now for the new project we will use ADuC7029i, I read the datasheet and found that the description about switching bootloader and application was not the same with ADuC7023i:
|"The ADuC7029 enters UART download mode if BM is low
at reset and executes code if BM is pulled high at reset through a 1 kΩ resistor"
I have no idea whether ADuC7029i can use the value of flash address 0x80014 to switch bootloader and application or not!!!
add quotation mark
[edited by: luopeng45 at 2:39 AM (GMT 0) on 10 Apr 2020]