博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

APROM Data Flash LDROM

Posted on 2013-01-15 19:45  皇星客栈--Linux  阅读(4254)  评论(0编辑  收藏  举报

一般单片机中只有2 3种数据,例如 FLASH(程序)RAM/SRAM(数据)EEPROM(数据),新唐的有好多个,刚开始接触还迷糊着!

   APROM:Application Program ROM 用于存储应用程序的FLASH

   Data Flash: Data Flash ROM 用于存储常量数据的FLASH(这个与EEPROM不一样,不可单个擦出哦)

   LDROM: ISP Loader ROM 用于存储BOOTLOADER 固件程序

   RAM:这个大家都知道了,是数据空间

   其实M0也跟一般单片机一样、也是只有FLASHRAM.新唐M0的单片机有两个FLASH,一个是LDROM,另一个就是APROMData Flash(别看有两个其实也只是一个,只是新唐的程序员将其分成了两个而以,其实他们都是一个娘生的,可以算是连体双胞胎)。

    特别说明: LDROM与另一个ROM是相互独立的,由CONFIG中的CBS位选择启动。

   RAM这个就是数据空间了,有用存放变量数据(这个就不讲了)。

 

 

那有些人会问 LDROM作用不是和APROM一样都是记录程序的,是不是可以将程序写在LDROM不用APROM

回答是可以的,若你的程序小就可以这么做,其实不要LDROM也可以做ISP。那新唐为什么要特意做一个LDROM出来呢,我个人认为是:

1、这样BOOTLOADER程序与APPLICATION程序互不相关不会有影响,便于开发人员(若不独自开辟一个LDROM,你调试就必须擦出BOOTLOADER,等等).

2、程序可以加载BOOTLOADER,但以开机可以根本不运行且不会影响到应用程序。

3、更方便做BOOTLOADER程序,坛子里有将APROM做成U盘,直接将程序COPY到这个U盘里就可以升级

 

忘了一点了,那为什么没有EEPROM呢?

   在ARM CORTEX-M架构中没有EEPROM,若增加EEPROM需要额外的成本,EEPROM重要性不够(且可以将FLASH中的几页做为EEPROM来使用)。纵观大多CORTEX-M基本上都没有,我有必要性也不是很高!

   好像前段时间TI出了一个M4系列 带2KEEPROM!有兴趣的朋友可以支申请个样片玩玩,我的想法是:若不是频繁操作,使用FLASHEEPROM足以!

 

刚看ISP Application note看到的FLASH说明,以下为官方说明:

The internal flash memory can be divided into three regions, LDROM, APROM and data flash. The APROM usually saves the program code developed for specific application. And LDROM saves a special program such as ISP code which provides booting control and firmware upgrade functions. Data flash can be use to save some user data.

以下为我的翻译,若可以看懂英文请不要看我翻译的(我英文很差)

内部FLASH可以被分成三个区,LDROM,APROMData Flash

APROM通常用来存储IDE(如:KEIL)开发的应用程序代码。

LDROM用于存储一些特殊代码,如用于固件升级的ISP

Data Flash可以保存一些用户数据。