2021-08-26 09:10发布
大家好,我想知道我们是否可以在ARM单片机的EEPROM中存储程序的子程序。从而,主程序从FLASH中运行,当它调用特定的子程序时,再从EEPROM运行。另外,还有一个外部EEPROM,它可以将子程序复制到ARM单片机内部的EEPROM中。基本上,我想做的是通过烧写电路中的EEPROM来改变程序的一部分子程序,而不需要再次去擦除烧写单片机。
我在NXP的LPC1517中使用EEPROM。根据Datasheet,只能通过使用它们在ROM中提供的IAP例程来读写。但是,用普通的ldr指令完全可以去读取它,而且不会报任何硬件错误,如果试图读取不存在的内存,通常会产生硬件错误。因此,很可能可以从EEPROM中执行代码,但是您将在Datasheet建议之外使用它。
您可以使用IAP例程将EEPROM的块复制到RAM中并从RAM中执行。
最多设置5个标签!
我在NXP的LPC1517中使用EEPROM。根据Datasheet,只能通过使用它们在ROM中提供的IAP例程来读写。但是,用普通的ldr指令完全可以去读取它,而且不会报任何硬件错误,如果试图读取不存在的内存,通常会产生硬件错误。因此,很可能可以从EEPROM中执行代码,但是您将在Datasheet建议之外使用它。
您可以使用IAP例程将EEPROM的块复制到RAM中并从RAM中执行。
一周热门 更多>