Hi,
currently we are doing a development with the FRDM-KL03Z dev board. We plan to create a custom board. This board must be very small and therefore we want to avoid anything not really needed.
We want to use the on-chip ROM Bootloader. We need to know:
1. what is the factory setting of the BCA and the clock settings, because we want to avoid the debugging interface for programming.
2. Is it enough to boot with NMI tied to ground to enter and use the ROM bootloader? Or what else is needed?
3. Can we use the UART interface and blhost for programming?
4. We develop with MCUXpresso (11). Do we need to check/set anything in the project in order to not overwrite settings (and "brick") the device with the first programming?
Thanks in advance for answering the above questions or hinting at a document which helps,
Steffen
已解决! 转到解答。
Hello Steffen
Since the chips are delivered with blank memory (apart from not being secured) with all loading peripherals enabled by default, the KL03 starts in its ROM LOADER mode. The LPUART can then be used for loading mode with the blhost.
Your application must set the flash configuration to NOT disable the ROM loader, to disable the NMI interrupt and to allow the ROM LOADER mode to be selected by the BOOT input (NMI pin) and then you will "always" be able to boot to the ROM Loader by holding the NMI input to 0V at reset. BCA is not needed unless you want to expressly disable the possibility to load via certain interfaces since a blank BCA allows any to be used.
The uTasker project (open source on Github, including opimised KL03 project and KL03 simulation) uses:
#define KINETIS_FLASH_CONFIGURATION_NONVOL_OPTION (FTFL_FOPT_LPBOOT_CLK_DIV_1 | FTFL_FOPT_RESET_PIN_ENABLED | FTFL_FOPT_BOOTSRC_SEL_FLASH | FTFL_FOPT_BOOTPIN_OPT_ENABLE | FTFL_FOPT_NMI_DISABLED) // use boot ROM if NMI is held low at reset
to configure for the KL03 in this mode.
Regards
Mark
[uTasker project developer for Kinetis and i.MX RT]
Contact me by personal message or on the uTasker web site to discuss professional training, solutions to problems or rapid product development requirements
For professionals searching for faster, problem-free Kinetis and i.MX RT 10xx developments the uTasker project holds the key: https://www.utasker.com/kinetis/FRDM-KL03Z.html
Hello Steffen
Since the chips are delivered with blank memory (apart from not being secured) with all loading peripherals enabled by default, the KL03 starts in its ROM LOADER mode. The LPUART can then be used for loading mode with the blhost.
Your application must set the flash configuration to NOT disable the ROM loader, to disable the NMI interrupt and to allow the ROM LOADER mode to be selected by the BOOT input (NMI pin) and then you will "always" be able to boot to the ROM Loader by holding the NMI input to 0V at reset. BCA is not needed unless you want to expressly disable the possibility to load via certain interfaces since a blank BCA allows any to be used.
The uTasker project (open source on Github, including opimised KL03 project and KL03 simulation) uses:
#define KINETIS_FLASH_CONFIGURATION_NONVOL_OPTION (FTFL_FOPT_LPBOOT_CLK_DIV_1 | FTFL_FOPT_RESET_PIN_ENABLED | FTFL_FOPT_BOOTSRC_SEL_FLASH | FTFL_FOPT_BOOTPIN_OPT_ENABLE | FTFL_FOPT_NMI_DISABLED) // use boot ROM if NMI is held low at reset
to configure for the KL03 in this mode.
Regards
Mark
[uTasker project developer for Kinetis and i.MX RT]
Contact me by personal message or on the uTasker web site to discuss professional training, solutions to problems or rapid product development requirements
For professionals searching for faster, problem-free Kinetis and i.MX RT 10xx developments the uTasker project holds the key: https://www.utasker.com/kinetis/FRDM-KL03Z.html