单片机 > 单片机程序设计 > 详情

ARM7 LPC2378 远程升级----扇区

发布时间:2024-10-28 发布时间:
|

    这里有个时间概念,大家先了解一下:LPC2378单个 Flash 扇区或整个芯片擦除的时间为 400ms,256 字节编程的时间为 1ms,对IAP的操作时间有个大概的了解。

    再回到扇区,扇区数:有些 IAP 和 ISP 命令根据“扇区”进行操作并指定扇区数。下图列出了 LPC2300 系列器件的扇区数和存储器地址之间的对应关系,这些器件包括含 64KB、 128KB、 256KB 和512KB Flash 的器件在内。 IAP、 ISP 和 RealMonitor 程序都位于 boot 区。 boot 区位于所有器件中地址 0x0007 E000 到 0x0007 FFFF 处。 ISP 和 IAP 命令不允许对 boot 扇区执行写/擦除/运行操作。 由于 boot 区的原因, 在 512kB Flash 器件中只有 500kB Flash 可供用户程序和数据使用。  

              

    根据上图,可在你远程升级的工程中,创建一个flash.h文件,方便我们使用扇区:

#ifndef  __FLASH_H__
#define  __FLASH_H__
#define FAD00    0x00000000 //0x1000 4K Flash各扇区起始地址
#define FAD01    0x00001000 //0x1000
#define FAD02    0x00002000 //0x1000
#define FAD03    0x00003000 //0x1000
#define FAD04    0x00004000 //0x1000
#define FAD05    0x00005000 //0x1000
#define FAD06    0x00006000 //0x1000
#define FAD07    0x00007000 //0x1000
#define FAD08    0x00008000 //0x8000 32K
#define FAD09    0x00010000 //0x8000
#define FAD10    0x00018000 //0x8000
#define FAD11    0x00020000 //0x8000
#define FAD12    0x00028000 //0x8000
#define FAD13    0x00030000 //0x8000
#define FAD14    0x00038000 //0x8000
#define FAD15    0x00040000 //0x8000
#define FAD16    0x00048000 //0x8000
#define FAD17    0x00050000 //0x8000
#define FAD18    0x00058000 //0x8000
#define FAD19    0x00060000 //0x8000
#define FAD20    0x00068000 //0x8000
#define FAD21    0x00070000 //0x8000
#define FAD22    0x00078000 //0x1000 4k
#define FAD23    0x00079000 //0x1000
#define FAD24    0x0007A000 //0x1000
#define FAD25    0x0007B000 //0x1000
#define FAD26    0x0007C000 //0x1000

//这里定义#define FMD00     8 ,是因为我在编程扇区的时候选择的是512字节
#define FMD00     8 //该扇区为512字节的8倍(0x1000[4096==512*8]),所以可以编程8次
#define FMD01     8
#define FMD02     8
#define FMD03     8
#define FMD04     8
#define FMD05     8
#define FMD06     8
#define FMD07     8
#define FMD08    64
#define FMD09    64
#define FMD10    64
#define FMD11    64
#define FMD12    64
#define FMD13    64
#define FMD14    64
#define FMD15    64
#define FMD16    64
#define FMD10    64
#define FMD11    64
#define FMD12    64
#define FMD13    64
#define FMD14    64
#define FMD15    64
#define FMD16    64
#define FMD17    64
#define FMD18    64
#define FMD19    64
#define FMD20    64
#define FMD21    64
#define FMD22     8
#define FMD23     8
#define FMD24     8
#define FMD25     8
#define FMD26     8
#endif

    扇区的概念还是比较简单,下篇将介绍IAP和编写IAP的基本函数。


关键字:ARM7  LPC2378  远程升级  扇区

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
STM32学习笔记4:外部中断