Home > other >  Freescale (NXP) 9 s12g bootloader to upgrade the app question
Freescale (NXP) 9 s12g bootloader to upgrade the app question

Time:11-29

Recent development in study freescale 9 s12g, met a program to upgrade don't understand, want to ask next everybody a great god:

My current idea is:
Bootloader code separately in A 16 k of flash area A, app put another 16 k flash area B, startup if you need to upgrade, will receive the s19 file, according to parse out the address of record, write data to corresponding address,

The confusion is:
1, bootloader and app is divided into two project, or a project? If is two projects, the app will also need to be initialized after the establishment, then jump to the main function, then the main function does not conflict with the bootloader project? Compare the bootloader and app project s19 file, some records address is the same, but the code content is not the same, that how to solve this conflict?

2, if the bootloader and app integration in an engineering, upgrade, as long as the resolution to the s19 file record address is bootloader area, will not go to wipe, the rest of the record to wipe, is that possible? Because the bootloader area is not always wipe, if there is a hard coded in the bootloader app project jump address? If there is one, jump should there will be a problem?

Also please tell experienced a great god,

CodePudding user response:

Two projects, so as to define different starting address, enter the bootloader has upgrade instructions and erase the app that part of the address, and then write data, complete the upgrade and then jump to the starting address of the app

CodePudding user response:

reference 1st floor qq_41616609 response:
two projects, so as to define different starting address, enter the bootloader has upgrade instructions and erase the app that part of the address, then write data, to complete the upgrade and then jump to the starting address of the app can


Can help to explain, how to obtain the starting address of the app. S19 file parsing app, can know which one record contains the starting address of the app?

CodePudding user response:

refer to the second floor qq_42613993 response:
Quote: refer to 1st floor qq_41616609 response:

Two projects, so as to define different starting address, enter the bootloader has upgrade instructions and erase the app that part of the address, then write data, to complete the upgrade and then jump to the starting address of the app can


Can help to explain, how to obtain the starting address of the app. S19 file parsing app, can know which one record contains the starting address of the app?

App address is your own definition, bootloader with app two programs to define different starting address, single-chip computer are the same, you use the keil compiler, set the start address can be set there, compiled hex file contains

CodePudding user response:

reference qq_41616609 reply: 3/f
Quote: refer to the second floor qq_42613993 response:

Quote: refer to 1st floor qq_41616609 response:

Two projects, so as to define different starting address, enter the bootloader has upgrade instructions and erase the app that part of the address, then write data, to complete the upgrade and then jump to the starting address of the app can


Can help to explain, how to obtain the starting address of the app. S19 file parsing app, can know which one record contains the starting address of the app?

App address is your own definition, bootloader with app two programs to define different starting address, single-chip computer are the same, you use the keil compiler, set the start address can be set there, compiled hex file contains


I'm using the codewarrior,
Such as the definition of the PRM file has the following:
ROM_VAR,

STRINGS,

DEFAULT_ROM,

NON_BANKED INTO ROM_F000;

Some to ROM_F000 prestartup and startup are installed, it is said the app is the starting address of the 0 xf000?

I go to verify, thank you very much,
  • Related