微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 用J-Flash ARM烧写NorFalsh的方法

用J-Flash ARM烧写NorFalsh的方法

时间:11-20 来源:互联网 点击:
烧写Bios到Nor Flash或者Nan Flash是嵌入式系统开发硬件完成后的第一步涉及到软件的工作,很重要。烧写Nor Flash的工具和方法很多,近期网上有一篇用J-Link ARM间接烧写Nor Flash的方法:

avr.com/bbs/bbs_content.jsp?bbs_sn=3228953&bbs_page_no=1&search_mode=1&search_text=jlink&bbs_id=9999">http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=3228953&bbs_page_no=1&search_mode=1&search_text=jlink&bbs_id=9999

本人按部就班,试了一把,感觉还可以,只是有些麻烦。尝试着用J-Flash ARM来烧写,该方法非常简单方便。

前段时间心血来潮,花了近800大洋,买了一个Mini2440的开发板。该开发板有一片2M的Nor Flash和64M的Nand Flash。买回家,一不做、二不休将所有里面的BootLoader全部擦除了。整个系统就成了什么也干不了的“裸板”。主要原因就是不想吃现成的,逼迫自己,从零开始,构建好完整的系统。熟悉整个过程的原理和操作。

要启动嵌入式系统,必须要将BootLoader烧写到Nor Flash 或者Nand Flash(系统上电会拷贝MCU片内的内部的4Kb的SDRAM去开始执行)。这类似于PC机的Bios。

从难易程度来说,因为Nor Flash是并行的操作相对容易;Nand是串行的,操作起来麻烦一些。所以,就选这Nor Flash作为烧写对象吧。一旦将BootLoader(比如U-Boot之类的,我的开发板可以选用的是SuperVivi)烧写到Nor Flash以后,选择Nor Flash启动BootLoader,就可利用它烧写Nand Flash以及实现其他工作了。

J-Flash ARM的使用方法,可以参考用户手册。按照手册,我们只需要直接烧写就可以了。但是速度很慢的。要加快速度,就要用MCU内部的RAM。这样就必须初始化MCU的PLL了和RAM了,并且烧写之前必须将看门狗关掉。

我们可以查阅芯片手册,利用J-Flash的初始化命令的功能,输入初始化命令序列,就可以直接利用RAM加速烧写了。这并不难,只需要简单的指令的可以,但是得去查芯片手册,对于没有查看芯片手册习惯的人来说,还是挺麻烦的。为此,我们需要更简单、直观的方法:那就是分两步实现。

先不用RAM加速,直接烧写初始化程序,比如我用的init.bin(芯片公司一般会提供的,小于1K),我用的init.bin只有280字节。该程序烧完以后就可以完成初始化了。

启用RAM加速功能,烧写最终的SuperVivi了到Nor Flash。

总结一下:

1. 不用Ram加速,用J-Flash ARM 烧写init.bin到Nor Flash,为Ram加速提供条件。

2. 启用Ram加速,用J-Flash ARM 烧写SuperVivi.bin到Nor Flash。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top