当前位置:首页 > 单片机 > 单片机
[导读] 我们2410的板子使用了intel 28F系列的flash作为存储器,并且同时使用了两片合成一个32位的外部存储器。为了将bootloader烧写进flash我们自己编写了一段代码完成这项任务,但这个方法比较麻烦,需要安装不少庞大的

我们2410的板子使用了intel 28F系列的flash作为存储器,并且同时使用了两片合成一个32位的外部存储器。为了将bootloader烧写进flash我们自己编写了一段代码完成这项任务,但这个方法比较麻烦,需要安装不少庞大的软件。为了偷懒我试了一下H-jtag附带的H-flasher和Flash programmer,其中,H-flasher根本就不支持Intel的flash,而Flash programmer则不能写入,不时有错误发生。
我仔细研究了这个软件,发现,选中2410的时候,各寄存器都是使用的缺省设置。有些寄存器的名字都没有写对,我估计这些缺省设置很可能就是程序不能工作的源头。按照我们uboot的设置我修改了相应的寄存器,如下列表:
BWSCON 0x22112124
BANKCON0 0x0000070A
......................(这中间的几个我觉得没有太大作用)
BANKCON6 0x00018005
BANKCON7 0x00018005
REFRESH 0x008C0000
BANKSIZE 0x00000032
MRSRB6 0x00000030
MRSRB7 0x00000030
WTCON 0x00008001
最关键的是最后一个Watchdog的设置寄存器不对,所以我就把它关掉了,然后烧写一切正常。也可能不用关掉,只需要修改其中某些参数即可。最近没有时间以后再试吧。^^

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭