开发平台 TQ2440 4.3寸TFT
jlink V8下载
简单的裸led程序(linux下编译的),通过jlink.exe下载到nandflash
控制台命令如下:
r
speed 12000
loadbin e:led.bin 0
setpc 0
g
1)通样的命令 开关打到nandflash 敲g命令之后程序运行正常,为什么复位或断电重启程序都不能运行?
nand不能直接读写,难道要自己添加初始化文件吗,我的疑惑是:程序不是已经存到nandflash了吗,上电后硬件自动copy 4K到内存,应该重启也可执行的,nandflash要怎么下载才能重启继续运行?
2)开关打到norflash g运行原来norflash的程序,led下载不进去,但用JFlash
ARM下载一切正常。
菜鸟刚学,求大侠们指点,非常感谢!
boot代码必须是在非易失性的memory中,而之所以要使用nandflash而不是norflash或者eprom是出于成本的考虑,nand要便宜得多,再加上ic内部一个读nand到sram的逻辑也比nor要便宜。
当没有运行c代码的时候,汇编代码的技巧是可以不要求指定sp的,所以在初始化sdram之前不用考虑栈空间问题。
在arm中,程序空间和数据空间必然是要重叠的,从cpu的角度来看,它们共享同一地址空间。arm9里面所说的哈佛结构也只是指令cache和数据cache是两条分开的总线,而从外部的ahb总线看来,取指和数据操作必然是串行的
一周热门 更多>