要把程序烧写进外部的nor flash,有几种方法,一种是从SD卡把烧写文件搬到nor flash,或是在MDK里编写烧写算法,网上也有挺多教程的,我也是跟着做了一遍,没成功。还有一个就是用j-flash这个软件,但需要制作一个合适的.jflash文件。
这里设置的是flash一些信息
然后是要烧写到外部nor flash的程序。这里以显示3张图片为例
LCD_WriteBMP(0,0,240,320,(u8 *)gImage_11);
LCD_WriteBMP(0,0,240,320,(u8 *)gImage_pict);
LCD_WriteBMP(0,0,240,320,(u8 *)gImage_pict2);
程序编写好后,设置输出bin文件。
然后需要编写一个启动程序,以便跳转到外部nor flash运行
/**
* @brief Main program.
* @param None
* @retval None
*/
int main(void)
{
RCC_Configuration(); //系统时钟初始化
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE); //FSMC时钟使能
FSMC_NOR_Init(); //初始化 FSMC Bank1 NOR/SRAM2
JumpAddress = *(__IO uint32_t*) (ApplicationAddress + 4);
Jump_To_Application = (pFunction) JumpAddress;
__set_MSP(*(__IO uint32_t*) ApplicationAddress); //初始化用户程序的堆栈指针
Jump_To_Application(); //跳转至外部NOR Flash加载并执行
while (1)
{
}
}
编译后烧写到STM32。
添加需要烧写到外部Nor 的bin文件
现象是显示完3张图片后,LED闪烁 |