您好!
我的客户询问:
我正在使用 MSP432引导加载程序。 现在、我有一个可以使用 TI BSL 脚本程序成功引导加载的项目。 我已‘此脚本,因此我可以将代码映像下载到内存(0x00200000)中的“保存位置”,以验证我是否可以将映像放置在我想要的位置。
最后、我希望创建一个系统、该系统将下载映像(可能通过无线方式)并将其写入闪存、然后在映像加载并验证后、执行脚本以将此新映像复制到实际的可执行区域。 我已经编写了驱动程序库代码来执行此验证并将代码从一个区域移动到另一个区域。
虽然 driverlib 代码可以从 ROM 中运行、但在写入闪存的过程中、我仍然需要我的小引导加载脚本在某个位置运行、因此我需要将存储器分区到三个区域: 最后一个代码图像区域为0、我新下载的图像为0x200000、我的脚本代码位于其他地方。 我想知道、您是否可以向我指出一些执行类似函数的示例代码、以便我可以看到构建和定位存储器中各种片段的最佳方法、以及如何最好地将片段从一个片段传递到另一个片段?
此外、我还查看了资源浏览器(来自 FLASH_program_memory 示例)上提供的示例代码、我复制了这些代码、但仍然无法使内部复制函数正常工作。 我所做的与示例不同的一件事是不设置编程速度–我将其保留为默认值。 是否需要该代码(如下所示)?
/*将 MCLK 设置为48MHz 以加快编程速度*/
MAP_PCM_setCoreVoltageLevel (PCM_VCORE1);
FlashCtl_setWaitState (FLASH_BANK0、2);
FlashCtl_setWaitState (FLASH_BANK1、2);
MAP_CS_setDCOCenteredFrequency (CS_DCO_FREQUENCY 48);
感谢您的建议!
Blake
