Hi,
Currently im developing a project which takes advantage of the In Application Programming feature on the ARM7 MCU. These individual projects are a Bootloader (IAP enabled) and a Main Application.
Ive found that both Apps utilise the same drivers etc but have not seen a way in which Bootloader and Main Application firmware can reference the same drivers. In doing so I can save vast amounts of code space etc. Im not sure where to start, ive seen older examples from uvision2, 8051 but nothing relevant for this MCU/Keil's Uvision4 IDE. Any ideas / keywords will be appreciated as currently ive not seen anything useful to use with the ARM7 MCU yet.
Thanking you in advance
DSP
It should be possible to put together a library that would be used by the bootloader and the main application. If I am not mistaken, TI embeds their Stellarisware library in ROM of some of their MCU's. I suggest that you try to figure out how exactly they do it.
But a library should have to be linked twice, offering no solution to the code size issue. Maybe it is better to place the functions needed in a predefined location - maybe via a function pointer table to make it flexible. That table can then be compiled as part of both components, but the actual implementation will reside in only one of them.
But a library should have to be linked twice
With a rather narrow definition of 'library', yes. What I meant is different.
View all questions in Keil forum