因为项目需要开始接触Xilinx公司的SDx2017.4开发工具,然后尝试着一键生成SD卡的启动文件,具体步骤如下:
一、准备工作
1、下载SDSoC2017.4安装文件并安装成功
https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/sdx-development-environments/2017-4.html
2、准备好一块ZCU102开发板(含SD卡和串口线)
二、创建工程
1、双击打开SDx IDE2017.4开发环境,选择一个路径作为工作空间,启动过程有点慢。
2、创建工程,工程名为Test1
File->New->SDx Project... 默认工程类型
3、选择相应硬件平台 ZCU102对应选zcu102
4、系统配置
文件系统不勾选,使用它自己生成的文件系统。
5、建立一个空应用
单击Finish完成工程创建
6、创建源文件src->New->File
新建一个helloworld.c的文件
#include <stdio.h> int main() { printf("Hello World\n"); return 0; }
7、编译
单击小锤子Build,大约需要1分钟编译完成。
8、拷贝文件到SD卡中
Test1->Debug->sd_card文件夹中的所有文件都要拷贝到SD卡中。
README.txt
9、上电启动
设置串口通信
打开SecureCRT软件,可以看到Linux系统正常启动。
10、运行Test1.elf文件
由于文件系统和elf应用程序是分开的,所以在文件系统内是不能直接找到Test1.elf文件的,需要挂载SD卡到文件系统中进行操作首先在root目录下,新建一个device文件夹,用于映射出SD卡。
root@xilinx-zcu102-2017_4:~# mkdir device
将SD卡(mmcblk0)的p1分区,挂载到root下的device文件夹下,这样就能从device文件夹下操作SD的文件(helloworld.elf)了
root@xilinx-zcu102-2017_4:~# mount /dev/mmcblk0p1 device
进入device文件夹,并浏览内容
root@xilinx-zcu102-2017_4:~# cd device/ root@xilinx-zcu102-2017_4:~/device# ls BOOT.BIN README.txt System Volume Information Test1.elf _sds image.ub运行Test1.elf应用程序
root@xilinx-zcu102-2017_4:~/device# ./Test1.elf Hello World
解除挂载(首先回到root目录,然后卸载)
root@xilinx-zcu102-2017_4:~/device# cd .. root@xilinx-zcu102-2017_4:~# umount /dev/mmcblk0p1