kl82进入 rom boot之后,需要使用 KinetisFlashTool 工具连接一次,才能进入应用程序运行,需要怎么处理可以直接运行应用程序?
1、使用芯片内部 128k flash,通过 ROM Bootloader 与 KinetisFlashTool 工具下载后,由于我的板子不是官方开发板,板子上未接出复位键,所以我断电再上电运行正常,与你描述的按复位键运行应用程序相符,但按复位键才运行这个步骤是必须的吗,可不可以调整为下载完后自动运行应用程序?
Hi Hao peng,
楼主你好!
复位按键不是必须的,如果你没有复位按钮,那么用来下载ROM bootloader的串口肯定是有的。
现在有两个办法。
1. 使用 kinetisFlash Tool 下载
根据 Kinetis Flash TOOL User's Guide.pdf 文档,下载之后会自动实现reset的,我这边试下来,也是可以实现reset的,只不过要等个几秒钟运行你的应用程序。
我这边测试下来,下载之后,是能够实现自动复位的,无需板子重新上电。
2. 使用blhost下载。
下载之后,你可以在blhost中输入:blhost.exe -p COMxx -- reset
然后回车,就可以实现系统的复位。COMXX指的是你的实际COM 串口号。
所以你那边按照我上面说的两种方法再试下看看。
如果遇到任何问题,请跟帖。
Have a great day,
Jingjing
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
1、上面的方法可以实现,现在的问题是自动运行时,应用程序运行异常,需重新复位才运行正常,问题暂未查明,芯片BootLoad版本为1.5
2、通过QSPI下载升级时,如我上述描述所遇到问题是否已经有结论?
你好!
1. 如我上面回你的帖子,我这边下载进去之后,不用上电复位,会实现自动复位并且正常运行应用程序,不论是串口还是Qspi都是正常的。你说的应用程序运行异常,这个异常是什么?不能运行你的应用程序?
我现在烧录的代码是KSDK2.0-k82的代码,不知道你的应用程序是自己写的还是官方的,你可以试试官方例程。
2. QSPI下载升级代码,使用Kinetis Flash TOOL烧录.sb文件,也是能够成功工作的。
我下载的应用程序是:SDK_2.0_FRDM-K82F\boards\frdmk82f\demo_apps\hello_world_qspi\iar
里面的应用程序地址是从0x68001000开始的。
所以你那边可以试试官方应用程序。
1、使用 QSPI下载升级代码,使用Kinetis Flash TOOL烧录hello_world_qspi.sb文件,也是能够成功工作的。
问题是我按照上面描述的方式更改配置,自己编写的应用程序不能在 QSPI 里面正常工作,是否是配置有问题,希望帮忙查看一下!
2、
使用 QSPI flash 跑应用程序,更改 M_text
define symbol m_text_start = 0x68001000;
define symbol m_text_end = 0x6FFFFFFF;
设置 qspi_image.bd
#4. Erase the QuadSPI memory region before programming.
erase 0x68000000..0x68004000;
然后根据 qspi_config_block.bin 、qspi_image.bd 和 qspitest.srec生成 xxx.sb文件,通过KinetisFlashTool工具下载 xxx.sb文件,此时不会进入应用程序,需要使用KinetisFlashTool工具连接再断开,才能进入应用程序,断电重启情况一样?
是这个吗?
除了修改app地址,还有.bd的擦除范围,其他的文件都没有修改?.bd里面的文件名称有没有改呢?
我马上试下把KSDK中helloword修改生成试试。
是这个问题,你那边测试成功没有?
1、使用芯片内部 128k flash,通过 ROM Bootloader 与 KinetisFlashTool 工具下载后会自动进入应用程序运行,此时应用程序运行异常,然后断电重启,应用程序运行正常;
2、QSPI Flash问题期待你的测试结果;
Hi Hao peng,
1. 使用ROM bootloader之后,需要按下板子上的reset按键,然后可以运行应用程序。
2. QSPI flash的问题,不知道你有没有试过使用blhost的方式,我之前写过一篇使用blhost的中文文章,你那边有空也可以试下
【经验分享】TWR-K80F150M QSPI BOOTLOADER例程运行指南 ...
下载之后,按下reset按钮,运行应用程序。
kinetisFlashTool的下载情况,我正在试,你有没有试过,下载之后,按下reset按钮,看看是否运行应用程序呢?
Have a great day,
Jingjing
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Hao peng,
你说进入ROM bootloader之后,你是使用什么进入的呢?KinetisFlashTool 工具?
KinetisFlashTool下载之后,reset下应该是可以直接运行应用程序了。
另外就是,你的应用程序,0X40D写的是什么值呢?你可以把你的应用程序FOPT(0X40D)配置为直接从flash运行,这样下载好应用程序之后,就能直接从flash运行了。
7-6 位配置为00.
你先试下,如果还不行,欢迎继续交流!
Have a great day,
Jjingjing
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
1、
使用芯片内部 128k flash,通过 ROM Bootloader 与 KinetisFlashTool 工具下载后会自动进入应用程序运行,此时应用程序运行异常,然后断电重启,不显示进入ROM Bootloader状态,应用程序直接运行--正常;
下载成功截图
0x40D的值截图
使用内部flash设置截图
2、
使用 QSPI flash 跑应用程序,更改 M_text
define symbol m_text_start = 0x68001000;
define symbol m_text_end = 0x6FFFFFFF;
设置 qspi_image.bd
#4. Erase the QuadSPI memory region before programming.
erase 0x68000000..0x68004000;
然后根据 qspi_config_block.bin 、qspi_image.bd 和 qspitest.srec生成 xxx.sb文件,通过KinetisFlashTool工具下载 xxx.sb文件,此时不会进入应用程序,需要使用KinetisFlashTool工具连接再断开,才能进入应用程序,断电重启情况一样?
也就是说,目前你的问题主要是QSPI flash 运行程序才会有这个问题对吧,好的,我这边会试下,并且确认问题和找解答方法,然后总结后给你回复。
可能需要点时间,所以还请耐心等待下。
谢谢。
Jingjing