首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

MicroZed测评9-创建启动映像文件

MicroZed测评9-创建启动映像文件

    上次我们说明了使用SDK中的工程模块创建FSBL的方法,并且把先前创建的HelloWorld和Periph_Test两个工程也从Debug模式改成了Release模式。为了保证工程被正确编译,可以在全部更改后点击SDK菜单栏中的Project---Build All重新编译各个工程。       接下来我们就可以为MicroZed创建一个启动映像文件了。这个文件是非易失性的,也就是说会存储在非易失性的存储器中,对于MicroZed来说,板子自带的QSPI Flash和microSD卡都可以用来存放这个映像文件。然后在SDK的项目管理器中,选中HelloWorld或者Periph_Test,再点击SDK菜单栏中的Xilinx Tools---Create Zynq Boot Image,就启动了映像文件的创建向导,图如图1所示。[[wysiwyg_imageupload:927:]]图1 ZYNQ启动映像文件向导       图1中的向导创建的启动映像,是用来加载FSBL以及各个工程的可执行ELF文件的。根据我们上次提到的ZYNQ启动顺序,需要先加载FSBL,然后配置PL(如果存在为PL编写的比特流文件的话),接下来才能启动用户的程序,这个顺序是不能能乱的。目前版本的SDK中,还不能探测程序是Debug模式还是Realease模式,所以可以看到图1中,向导自动找到了Debug模式下生成的ELF文件;这就需要我们把Debug模式的ELF文件从启动映像中移除(先移除用户程序的ELF,然后点击Browse找到FSBL的elf,再添加用户Release模式的ELF),而把Release模式的ELF文件加入到启动映像,改动之后如图2所示。[[wysiwyg_imageupload:928:]]图2 修改之后的启动映像配置       点击图2中的Create Image,启动映像就建立好了。在SDK工程管理器中,展开Periph_Test文件夹,可以看到生成的启动映像文件,如图3所示。[[wysiwyg_imageupload:929:]]图3 生成的启动映像       把生成的启动映像烧写到QSPI Flash(.mcs文件)或者拷到microSD卡(.bin文件)中,然后配置相应的启动模式,就可以使用启动映像启动PS了。分别描述如下。1. 使用QSPI启动       在断开MicroZed供电的情况下,把MicroZed的JTAG模式改变了QSPI启动模式,如图4所示。[[wysiwyg_imageupload:930:]]图4 QSPI启动管脚配置       然后连接JTAG电缆(为了烧Flash)和USB-UART电缆(给板子供电,并使用串口调试助手)。在SDK中,点击菜单栏的Xilinx Tools---Program Flash,找到刚才生成的.msc文件,然后点击Program就可以了,如图5所示。[[wysiwyg_imageupload:931:]]图5 烧写QSPI Flash       进度条会提示烧写进度,SDK的控制台中也会显示烧写信息,提示成功的时候:100% 100%Inforogrammed flash successfullyInfo:Closed cable successfully       这时需要断开USB-UART的电缆,因为板子是使用它供电的;将板子重新上电从而使得烧到Flash中的映像生效。然后打开任意一个串口调试助手,并设置COM口为115200/8/n/1/n,再按一下板子上的复位按钮,就能在串口调试助手里收到测试相关的信息了,如图6所示。[[wysiwyg_imageupload:932:]]图6 测试信息2. 使用microSD卡启动       使用microSD卡启动不需要烧写Flash,所以也不需要JTAG。首先在PC中把生成的启动映像中的Periph_Test.bin文件拷到SD卡里,然后需要把它重命名为boot.bin文件(否则PS启动时找不到启动映像),然后把JP1-3按照图7的模式进行配置。再按照和前面相同的方法配置给MicroZed上电,配置串口,然后按一下复位按钮,就能在串口调试助手里看到图6相同的测试信息了。[[wysiwyg_imageupload:933:]]图7 SD卡启动管脚配置
记录学习中的点点滴滴,让每一天过的更加有意义!
返回列表