一种片外Flash存储器IAP的方案
时间:07-15
来源:互联网
点击:
2.2 扇区擦除
事先编程在Flash中的程序前自复制到SRAM制定的位置,然后,赋PC为SRAM中扇区编程代码段的起点ERASEPART。程序于SRAM中的ERASEPART起点开始执行,按照SST39VF160扇区擦除的时序要求开始擦除。按照ARM公司提出的ATPCS规定,C语言程序调用汇编程序时,寄存器R0-R3传递参数,返回值由寄存器R0传递原则,扇区擦除程序的一个参数,要擦除的扇区号,由R0传递;返回参数置于R0,扇区擦除成功返回"1",否则返回"0"。
2.3 字编程
程序于SRAM中的PROGRAMPART起点开始执行,按照SST39VF160字编程的时序要求开始编程。入口参数有三个,一次为编程地址、数据起始地址、编程数据长度。字编程成功返回"1",否则返回"0"。
3.结论
在嵌入式应用系统中,IAP是极为有效的一种技术。根据本文提出的方案,在实际应用中只需针对选用的Flash,更改特定的擦、写操作代码就可实现系统片外存储器的在应用编程。本文提出的IAP代码重入到SRAM执行的方法,有效地解决了应用无片内程序存储器的32位ARM处理器的嵌入式系统IAP难题,有很大的应用价值。
事先编程在Flash中的程序前自复制到SRAM制定的位置,然后,赋PC为SRAM中扇区编程代码段的起点ERASEPART。程序于SRAM中的ERASEPART起点开始执行,按照SST39VF160扇区擦除的时序要求开始擦除。按照ARM公司提出的ATPCS规定,C语言程序调用汇编程序时,寄存器R0-R3传递参数,返回值由寄存器R0传递原则,扇区擦除程序的一个参数,要擦除的扇区号,由R0传递;返回参数置于R0,扇区擦除成功返回"1",否则返回"0"。
2.3 字编程
程序于SRAM中的PROGRAMPART起点开始执行,按照SST39VF160字编程的时序要求开始编程。入口参数有三个,一次为编程地址、数据起始地址、编程数据长度。字编程成功返回"1",否则返回"0"。
3.结论
在嵌入式应用系统中,IAP是极为有效的一种技术。根据本文提出的方案,在实际应用中只需针对选用的Flash,更改特定的擦、写操作代码就可实现系统片外存储器的在应用编程。本文提出的IAP代码重入到SRAM执行的方法,有效地解决了应用无片内程序存储器的32位ARM处理器的嵌入式系统IAP难题,有很大的应用价值。
ARM 嵌入式 电子 仿真 总线 PWM 电压 看门狗 C语言 相关文章:
- 基于ARM的除法运算优化策略(01-14)
- 基于ARM的CAN总线智能节点的设计(01-24)
- ARM基础知识教程五 (02-08)
- ARM基础知识教程六(02-08)
- ARM基础知识教程七(02-08)
- ARM基础知识教程八(02-08)