查看: 8451|回复: 16

[分享] 【经验分享】基于AN2295的K53bootloader修改步骤

[复制链接]

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
发表于 2014-9-10 17:09:12 | 显示全部楼层 |阅读模式
本帖最后由 FSL_TICS_ZJJ 于 2014-9-10 17:18 编辑

【经验分享】基于AN2295K53bootloader修改步骤
作者:FSL_TICS_ZJJ, FSL_TICS_ZP
一,经验分享简介
        从之前FSL_TICS_ZP的三篇经验分享AN2295 bootloader文档解析中,大家可以了解到bootloader的基本知识以及建立连接的过程。另外,在AN2295的文档中,也讲了些基本的修改方法,但是实际中,还是有些客户在修改的过程中发现了问题,所以这里以K53芯片为例,讲解如何修改AN2295K53bootloader并下载调试。
二,K53 bootloader的修改步骤
        AN2295kinetis例程,默认是针对K60的,所以如果要修改为K53,就需要修改相关的一些引用头文件。除了AN2295的例程需要修改之外,再烧录用户程序的时候,还需要修改用户程序的相关flash分配文件,将用户程序重新定向到非bootloaderflash区域。下面分两部分讲解K53bootloader程序的修改以及应用程序的相关修改。
1K53 bootloader程序修改
       AN2295工程的修改有如下几点:
1)文件AN2295_TWR_K60_cfg.h修改
        需要屏蔽掉“"#define KINETIS_MODELK60_100MHz”,然后加上“#define KINETIS_MODEL K53_100MHz” ,这个主要用于后续的K53头文件调用。
2)文件kinetis_params.h修改
   添加K53_100MHZ的定义:
      #define K53_100MHz      0x5310
用于后续K53头件的调用。
(3)文件main.h修改                                                                                       
添加头文件调用:
#elif KINETIS_MODEL== K53_100MHz
  #include "MK53DZ10.h"
上述(1),(2)两点都是为了第三点的K53头文件调用服务。
修改之后,重新编译工程,大家可以发现编译之后bootloader.C调用的是MK53DZ10.h了,这里以IAR工程为例。如图1所示:
1.jpg
1 K53头文件调用
2K53应用程序修改
    K53应用程序的修改,主要是修改工程中的icf文件,将应用程序重新定义到新的flash地址,并且拷贝中断向量表等。本次以MK53DN512ZCMD10芯片以及IAR工程为例,讲解如何修改IAR工程的ICF文件。通过MK53DN512ZCMD10的用户手册可以知道,该芯片的Pflash512KB,地址为:0x00000000- 0x0007FFFFK53的内存分配情况如图2,需要把中断向量表拷贝到0x4000 然后用户的实际代码从0x4410开始存放。
2.jpg
2 K53内存分配情况
用户程序的修改就需要修改icf文件,使得中断向量表地址由0x00000000偏移到0x00004000,用户代码地址由0x00000410偏移到0x00004410。修改512KB_Pflash.icf如下:
3.jpg
图 3 512KB_pflash.icf 修改情况
修改好之后,只需要编译生成.srec文件即可。
回复

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
 楼主| 发表于 2014-9-10 17:23:31 | 显示全部楼层
三,结果测试
       本次测试是在TWR-K53N512平台上进行,结合塔式梯度板以及串口板,实物练连接如图4所示。该例程测试需要分两部分。第一部分,利用bootloader程序以及上位机win_hc08sprg.exe下载用户应用程序到K53中;第二部分,测试应用程序是否正常工程。
4.jpg
  图4 实物连接
1:下载应用程序
(1)配置上位机
      打开串口,选择好S19应用程序,选择好波特率为9600,如图5所示。
5.jpg
图5上位机配置
(2)建立和K53的连接
点击图5的connect,同时按下板子的reset按键,出现图5情况即说明已经成功连接。
6.jpg
图6 建立连接
(3)擦除应用程序区域
  点击erase按钮,  如图7所示,为擦除用户应用程序区域。
7.jpg
图7 擦除用户flash
(4)下载用户程序
点击program按钮,即下载用户程序,结果如图8所示
8.jpg
图8 下载用户程序

2:用户应用程序功能测试
  本次用户程序的例程是helloworld,功能即通过串口发送hello world!!,测试结果如图9所示。
9.jpg
图9 用户程序功能测试
回复 支持 反对

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
 楼主| 发表于 2014-9-10 17:32:38 | 显示全部楼层
四,附件
  附件给出相关的bootloader修改工程以及应用测试程序的icf文件。
512KB_Pflash.rar (763 Bytes, 下载次数: 104)
回复 支持 反对

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
 楼主| 发表于 2014-9-11 09:57:00 | 显示全部楼层
不足之处恳请指正,同时也欢迎大家分享自己的经验。
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

273

帖子

0

高级会员

Rank: 4

积分
718
最后登录
1970-1-1
发表于 2014-9-16 16:55:11 | 显示全部楼层
很好的资料,谢谢斑竹分享!
回复 支持 反对

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2014-9-16 17:20:04 | 显示全部楼层
很好的经验分享,顶一下!
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

705

帖子

0

金牌会员

Rank: 6Rank: 6

积分
1745
最后登录
1970-1-1
发表于 2014-9-16 17:24:48 | 显示全部楼层
支持原创经验!
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

6

帖子

0

注册会员

Rank: 2

积分
56
最后登录
2019-12-11
发表于 2014-9-24 16:13:43 | 显示全部楼层
我最近在尝试用KE06通过 MSCAN 来做bootloader烧程序。编程环境Codewarrier。有好多问题想问,楼主可不可以给我一个邮箱,或者qq? 我的qq:642338673。十二分感谢。
回复 支持 反对

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
 楼主| 发表于 2014-9-25 09:07:30 | 显示全部楼层
deadpig 发表于 2014-9-24 16:13
我最近在尝试用KE06通过 MSCAN 来做bootloader烧程序。编程环境Codewarrier。有好多问题想问,楼主可不可以 ...

你好,如果有问题,欢迎直接发帖交流。
我们支持的方式是通过回帖来解决问题。
回复 支持 反对

使用道具 举报

该用户从未签到

10

主题

102

帖子

0

中级会员

Rank: 3Rank: 3

积分
413
最后登录
2016-12-7
发表于 2015-3-25 18:36:27 | 显示全部楼层
求助啊  bootloader移植到K22FN512上,K22貌似没有SCB_Register。怎么破??
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-8-21 13:14 , Processed in 0.091071 second(s), 29 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表