首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改atmel studio7中的开始地址studio7

更改atmel studio7中的开始地址studio7
EN

Stack Overflow用户
提问于 2019-05-12 15:27:50
回答 1查看 1.7K关注 0票数 2

我在ATMELStudio7中为AVR做了一个引导加载程序,当生成.hex时,它是从地址0x00创建的,但是引导加载程序必须从地址0x1e000开始,如果有人知道如何在编译后的选项中更改这一点,我将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2019-05-13 06:58:36

  • 转到项目属性 (Alt + F7)
  • 选择工具链
  • 选择AVR/GNU链接器 -> 内存设置
  • 在“快闪段”部分按下“添加项目”按钮并键入:

.text=0xF000

(UPD)备注,此地址以文字表示,即如果您希望将一个8KB引导加载程序放入128 8KB设备(字节偏移量为0x1E000),则word偏移量将为0xF 000。32 4KB设备上的4KB引导加载程序将是0x3800,依此类推。

按OK,然后编译项目。它将告诉链接器主代码部分的起始地址位于哪里。

顺便说一句,在>64k设备的引导程序中使用pgmspace.h时要小心,因为通常放置在较低64k的闪存中的常量现在也会放在较高的地址中,并且可能无法使用通常的pgm_read.宏。在这种情况下,可以使用pgm_get_far_address和pgm_read_..._far宏。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56100706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档