设计基于NXP LPC2000的次级启动加载程序用于代码升级
时间:04-04
来源:电子产品世界
点击:
在于闪存的0x0000 0000到0x0000 003F,因此用户应用程序的中断向量表只能被映射到片内SRAM(对于支持外部总线接口的LPC2000器件,也可以映射到片外存储器)。在跳转到用户应用程序执行前,要将这64字节的数据复制到片内SRAM的底部(0x4000 0000 – 0x4000 003F),并且将系统的内存映射模式设置为"User RAM Mode"。这样当用户应用程序产生中断时,系统会自动到位于SRAM的中断向量表取中断向量入口,而不是错误地跳转到位于0x0地址处的、属于次级启动加载程序的中断向量表。
运行用户应用程序
更新完成后,修改PC指针,使其指向新的用户程序的起始地址,然后开始执行。
注意:要保证用户应用程序能运行,必须还要做一些必要的初始化工作,包括RW区域的复制、ZI区域的清零等等,这些没有放在次级启动加载程序里完成,而是在用户应用程序开始运行时首先执行。
程序(从串口利用XMODEM协议更新代码)上电运行时,串口将会打印出如图4的信息。
用户可以测试一些IAP命令,或者选择PROG命令更新用户代码,更新完成后,选择RUN命令来执行。
代码升级 Boot Loader 次级启动加载程序 相关文章:
- VxWorks中怎么从Flash BOOT(11-15)
- U-Boot的编译与移植到QT-S3C44B0X开发板上(03-08)
- WinCE系统下BootLoader的开发(04-10)
- 嵌入式linux启动信息完全注释(04-24)
- 基于S3C2410A的嵌入式系统的U-Boot移植(01-24)
- 嵌入式系统 Boot Loader 技术内幕(03-19)