KL03 factory setup of the ROM Bootloader

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

KL03 factory setup of the ROM Bootloader

跳至解决方案
1,065 次查看
steffen_norbert
Contributor II

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

标签 (1)
标记 (1)
0 项奖励
回复
1 解答
1,054 次查看
mjbcswitzerland
Specialist V

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

在原帖中查看解决方案

2 回复数
1,055 次查看
mjbcswitzerland
Specialist V

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

1,047 次查看
steffen_norbert
Contributor II

Hi MArk,

 

thanks for your post. It's exactly the information I needed.

Regards,

Steffen

0 项奖励
回复