我说说我了解的LPC2100系列的相关操作;
在写/擦FALSH的时候点用了FALSH的总线,所有的FLASH只有一根总线和系统相联,所以如果同时再进行FLASH操作将产生冲突;这个冲突包括读FLASH的程序区并执行FLASH区域的程序;
解决办法:
把相关的程序放在SRAM区域执行,这样FLASH擦写的时候就不会影响SRAM中的程序执行(操作完成前,不能读FLASH区域);这种处理方式现在是唯一的;否则只能关断中断并等待(相当于停机);
在下一代的LPC1800中,每个FLASH区域都有独立的总线,这样情况就大大好处,只要不是同时操作同一个扇区的FLASH,应该是允许的,至少,程序不会因此而停机;
(END) |