先说解决方法:开始报错Problem in Initializing Hardware Flash programming initialization failed. ERROR: Flash Operation Failed。是因为我在Program flash中选择的其他elf文件,应该选择FsBl对应的ZED_FSBL.elf文件。后来报这个错:Flash programming initialization failed. ERROR: Flash Operation Failed 是因为忘了把模式改成JTAG模式了。所以主要是两步。选对elf文件,设置成jtag模式

我在Microzed的板子上学习。根据MicroZed/PicoZed: FSBL and Boot from QSPI and SD Card文档内容学习。

首先建立application project zed_fsbl,添加进zed_fsbl工程,具体步骤和在SDK上加入一个helloworld类似,所以我当时没注意它的重要性,当时做完这个在另一个类似helloworld工程的Perigh_test工程下右键添加Xilinx-》create boot image 按照步骤做完后。再在Xilinx-》program flash 。但那个教程用的vivado 2016 那里不需要添加fsbl文件,只需要添加mcs文件后即可点击program  。但我的是vivado 2018版本。不添加fsbl文件,就无法点击program 是灰色的。所以我点击浏览,自动进入了perigh_test ->debug ->perigh_test.elf 我就选了这个,觉得理所应当肯定对。然后按照步骤先设置成JTAG模式就报Problem in Initializing Hardware Flash programming initialization failed. ERROR: Flash Operation Failed。万万没想到这里会出错。原来这个fsbl文件只能是fsbl工程下的ZED_FSBL.elf,这个软件自动的误导对我这个菜鸟影响太大了。后来问了专业人士了解了下fsbl是啥。后来试着把elf文件换成了fsbl的。然后就报Flash programming initialization failed. ERROR: Flash Operation Failed。以为猜想不对呢。后来发现忘了把QSPI模式改成JTAG模式了。改完以后就通过了。又鼓捣了一天啊。。。附一张图吧。

Problem in Initializing Hardware Flash programming initialization failed Flash Operation Failed

相关文章: