N76E003 Keil设置芯片使用FLASH的地址空间

博客原文:N76E003 Keil设置芯片使用FLASH的地址空间

这篇文章讲的是如何设置芯片使用FLASH的大小,比如新塘的芯片N76E003的FLASH大小只有18K,但是我需要一些空间存储一些别的信息,掉电不丢失,那么我就要把FLASH空间分成两部分,第一部分用作存储代码,第二部分用作存储信息。如果你不设置,默认工程FLASH全部空间都是存储代码的,擦除也是擦除整个芯片。如果要将FLASH分为两部分我这里提供两个思路。

 

第一:设置擦除使用扇区,计算程序代码大小,将所需要的数据放入代码占用空间之后(最好用最后的地址空间)。

 

首先设置只擦除使用扇区,如下图,设置Setttings选项时需要Nu-Link连接到目标板,勾选Erase Used Sectors。

N76E003 Keil设置芯片使用FLASH的地址空间_第1张图片

之后是计算程序代码大小,在程序编译链接之后在Build Output会有信息提示,只要看Code的大小即可,单位为字节。如下图:

N76E003 Keil设置芯片使用FLASH的地址空间_第2张图片

在这个前提下,我就可以把其他的数据放入Code代码占用地址之后了。这个方法可行,已经过验证。

第二:将数据放入LDROM中

LDROM和APROM的空间一共是18K,如下图:

N76E003 Keil设置芯片使用FLASH的地址空间_第3张图片

在此可以将数据丢到LDROM中,只存所需要数据,不存代码,每次从APROM启动,这只是个想法,没有经过验证。有想法的小伙伴可以挑战一下。

 

PS:20190614更新,原文章误导了很多朋友,在此修正。在此感谢“xbyu520_007”。

你可能感兴趣的:(N76E003)