· 我在C6678 烧写应用程序到NAND中遇到一点困难,请详细指教。
· 我使用的软硬件是:mcsdk_02_00_09_21 ;ccs_base_5.0.03; evm6678L
· 在烧写这个过程中我的步骤是:
1. 把文件xxx 到文件夹
mcsdk_2_00_01_12\tools\writer\nand\evmc6678l\bin 下,并改其名字为
app.bin
2. 修改该文件夹下的文件nand_writer_input.txt,默认为
file_name = app.bin
start_addr = 16384
3. EVM 上boot 模式设置为 no boot/EMIF16 模式
4. 打开CCSv5,
5. 打开evmc66xx emulator target configuration
6. 连接core 0
7. 加载(确保evmc66xxl.gel 已执行,DDR 已初始化)
mcsdk_2_00_09_21\tools\writer\nand\evmc6678l\bin\
nandwriter_evm6678l.out
8. 打开 memory view( CCSv5 里 view->Memory Browser),查看内存地
址0x80000000
9. 把app.bin 下载到0x80000000 处
10. 执行
11. 当烧写完成时,终端显示NAND programming completed successfully,
错误时也有错误提示
编译步骤
工程文件位置
mcsdk_2_00_01_12\tools\writer\nand\evmc6678l
clean nandwriter 工程
build
完成后,生成的文件位于
mcsdk_2_00_01_12\writer\nand\evmc66xxl\bin
· nandwriter_evm66xxl.out 和nandwriter_evm66xxl.map
最后查看运行结果是: 0x70000000之后的地址范围(对应Block 0)值均为0xE0E0E0E0,
理论上应该都是0Xffffffff,,擦除没有成功。自然也写不进去任何数据。难道是系统擦除程序:
“mcsdk_2_00_09_21\tools\writer\nand\evmc6678l\bin\nandwriter_evm6678l.out”有问题?还是我什么地方使用的不对?请高手指点!多谢了!
noaming:
您好,你程序烧写在NAND中的位置为:start_addr = 16384。请检查一下NAND该位置的数据,是否和你烧写的二进制数据一致。
guizhen wang:
谢谢你的解答!
NAND中的位置的数据值均为0xE0E0E0E0.
noaming:
回复 guizhen wang:
您好,在CCS将数据烧写到NAND前,仔细查看一下0x80000000 处的数据是什么?
guizhen wang:
回复 noaming:
在CCS将数据烧写到NAND前,仔细查看一下0x80000000 处的数据是烧写的程序.
noaming:
回复 guizhen wang:
烧写NAND,显示的是:NAND programming completed successfully,而数据却没有烧写进去。我建议你用BIOS-MCSDK-02-00-05-17\mcsdk_2_00_05_17\tools\post\evmc6678l,运行一下该程序,看运行结果,查一下你的板子NAND。
Xinhai Chen:
回复 Xinhai Chen:
sorry,链接中是有关eeprom烧写的!