在windows下学习mini2440,由于移植没有涉及os,所以程序一直烧写到Norflash下。一直想尝试使用mdk直接烧写到nandflash,网上也搜索过如何烧写到nandflash的问题,但是没有找到最终解决方案,最重要的是没有例程学习。学习完nandflash操作,按照网上的资料,自己实现了一个烧写算法,实测可用。(肯定也有bug,不过能初步实现下载了)
1、按照mdk的帮助文件,Help-> Debug Adapters User's Guides->ULINKpro User's Guide->Setup ULINKpro->Configuring µVision->Configure Flash Download->Creating Flash Programming Algorithms,根据帮助文件,创建工程,实现相关函数。帮助文见截图如图1
2、实现的例程见:http://download.csdn.net/detail/cynicalguy/9191565
3、简单的测试例程。如上传的文件。
4、下载设置:如图2
图3
4、下载是出现问题
(1)当使用s3c2440的内部ram时,出现“Insufficient RAM for Flash Algorithms !”错误,如图4,因此图3使用了外部sdram,大小设置为8KB
图4:
(2)、由于使用了外部sdram,因此应该按照图2设置:Init file,如
该设置文件在上传例程文件中。
5、经过1、2、3、4步骤,成功实现了mdk 直接烧写大页nandflash的功能。
注意:例程只是简单的测试程序,大小小于4K,因此不需要拷贝到外部sdram中。现象为nandflash启动模式,实现4个led等轮流闪烁。