7228|10

5

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

稍稍复杂一点的问题: bootloader代码是否可以写到应用区? [复制链接]

原来3KB+的bootloader要移植到atmega644,发现启动区最大只有2KB,不够用.
想通过修改代码段映射的方法把一部分bootloader代码移到应用区,但手册上说:
The Application section can never store any
Boot Loader code since the SPM instruction is disabled when executed from the Application
section.

如果我只把不含SPM指令的部分转移到应用区, 也不行吗?
有没有做过的高人, 指点一下
此帖出自单片机论坛

最新回复

分开写是没有问题的, 通常的做法是定位整个text包括中断向量,我也是一直这么做的. 但是这需要boot和app编译两次,它们之间的公共代码也不方便共享. 如果可以随意给text分段和定位,完全可以不编译bootloader而只用 app实现代码大小不受限制的bootloader,而这正是你在楼主位的要求  详情 回复 发表于 2008-5-29 10:55
点赞 关注
 

回复
举报

5

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

回复 楼主 的帖子

看来又是个没人关心的问题
是不是大家很少用bootloader?
此帖出自单片机论坛
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

回复 沙发 的帖子

boot区只要有一个main和一个写flash的函数就可以了.
告诉连接器把其他函数可以放在app区的最后几页.
关键是怎么实现,我没有尝试过..
此帖出自单片机论坛
 
 
 

回复

5

帖子

0

TA的资源

一粒金砂(初级)

4
 

回复 板凳 的帖子

只要自定义一个段放置APP区的代码,再把这个段定位到APP区的指定位置就行了
具体实现要看用什么linker
等芯片到了把程序烧进去试试看,再公布结果
此帖出自单片机论坛
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

5
 

回复 4楼 的帖子

反正必须得把一部分放应用区外

不能自己写自己,因为必须得考虑中间过程
此帖出自单片机论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

6
 

回复 5楼 的帖子

不过你要先知道函数编译后的代码量才比较好分配空间。
我这边说的是使用gcc编译器把函数定义到自定义段空间。

函数声明如下:

type function (...) __atribute__ ((section(".yoursection")));
此帖出自单片机论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

7
 

回复 6楼 的帖子

查看本帖全部讨论,请登录或者注册
此帖出自单片机论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

8
 

回复 7楼 的帖子

查看本帖全部讨论,请登录或者注册
此帖出自单片机论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

9
 

回复 8楼 的帖子

查看本帖全部讨论,请登录或者注册
此帖出自单片机论坛
 
 
 

回复

5

帖子

0

TA的资源

一粒金砂(初级)

10
 

回复 9楼 的帖子

查看本帖全部讨论,请登录或者注册
此帖出自单片机论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

11
 

回复 10楼 的帖子

查看本帖全部讨论,请登录或者注册
此帖出自单片机论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
直播报名最后1周:艾迈斯欧司朗 OSP 开放协议,从氛围灯动态照明到传感器交互融合
直播时间:4月22日(周二)10:00
直播奖励:京东卡、蓝牙温湿度计、定制水杯

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 8

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表