LPC2300的IAP技术:在应用中编程与升级

需积分: 13 2 下载量 92 浏览量 更新于2024-08-16 收藏 912KB PPT 举报
"该资源主要涉及ARM架构处理器,特别是ARM7处理器,以及使用IAP(In-Application Programming)技术进行代码升级的过程。其中,UART0串口被用于接收升级代码,P0.6引脚的状态指示了程序运行的区域。在LPC2300系列芯片中,Boot代码被固化在地址0x0007E000~0x0007FFFF的8KB Boot Block区域,并在复位后进行地址重映射到高位地址,以便在0x00000000开始执行。" 详细说明: 1. **UART-ARM IAP**: UART0是用于接收升级代码的串口通信接口,与ARM7处理器核协同工作,允许在应用运行过程中接收并更新程序代码,这就是IAP技术的应用。 2. **处理器核**: ARM7是一种常见的32位RISC微处理器核,常用于嵌入式系统,支持IAP和ISP(In-System Programming)功能。 3. **HIGH区和LOW区**: 程序分为两个区域,LOW区和HIGH区。程序通常运行在LOW区(地址0x0000 0000到0x0000 4000),而HIGH区位于0x0000 8000到0x0001 0000。当通过UART0接收到新的升级代码后,程序标志会被修改,CPU将运行在HIGH区的用户代码。 4. **Boot代码**: LPC2300系列芯片内置Boot加载程序,它负责复位后的初始化和Flash编程。Boot区位于地址0x0007E000到0x0007FFFF,复位后,Boot代码会被重映射到接近2G地址空间的顶端,以便在运行时访问。 5. **IAP技术**: IAP允许在应用程序运行期间对Flash进行编程,例如存储数据表或进行软件升级。它可以避免对SRAM的占用,并方便地添加新功能而无需物理拆除设备。 6. **ISP(In-System Programming)**: 另一种编程方式,通过Boot装载程序和UART0接口,可以对片内Flash进行擦除和编程。在系统编程通常在系统上电或者通过特定接口(如UART0)进行。 7. **数据存储解决方案**: IAP技术可用于存储在运行过程中产生的大量数据,如4k字节的数据表,将其写入Flash,释放SRAM资源。 8. **在线升级解决方案**: IAP使得用户能够在不拆卸设备的情况下,通过UART0等通信接口接收并安装新版本的软件,从而扩展或优化系统的功能。 通过这些知识点,我们可以了解到如何在基于ARM7的系统中利用UART和IAP技术实现程序的在线升级和数据存储,以及Boot加载程序在这一过程中的作用。