xilinx c语言编程,使用Xilinx SDSoc在Xilinx zcu102开发板上编程HelloWorld

关于Xilinx SDSoc的介绍我就不再复述了,我理解的也不一定准确,可以阅读官方文档了解SDSoc,你可以把它理解为一个集成开发环境 (IDE),通过SDSoc我们能够简单快速的对Xilinx的开发板进行编程,不用像传统的嵌入式编程那样,需要配置嵌入式开发环境,交叉编译链,有时还得去移植Linux到开发板上,而这些繁琐的工作SDSoc都替你做了,相比较传统SoC设计流程,SDSoC通过自动生成硬件连接和软件驱动程序大大简化了Zynq SoC和MPSoC的开发过程,现在开发人员不需要深层次的了解底层指令就能进行嵌入式开发,这无疑是开发人员的一大利器。

6384d2f4b5460deae85930cef2311277.png

解压后执行./xsetup就可以安装, 请注意安装目录需要有能够写入的权限(或者 sudo ./xsetup):

tar zxvf Xilinx_SDx_2017.4_1216_1.tar.gz

cd Xilinx_SDx_2017.4_1216_1/

./xsetup

36f968fd2bd46e50ac14b94c5efc09d5.png

安装完成后会弹出一个license管理的界面,选择左边的load license,选择你本地的license文件,加载好了就可以关闭了,接着进入安装时选定的安装目录(我的是: /opt/Xilinx),启动sdx:

cd /opt/Xilinx/SDx/2017.4/bin

./sdx

c48fdd60ba65d1a44c582528ec012ecb.png

2.创建一个SDx工程, SDx界面的左上角,点击File -> New -> SDx Project

18e3eaf277976651e3c95dfcdf7d2605.png

填写项目名称和工作路径

cb2f0c9a73ed2b5c14da275e31e0bdac.png

选择开发板型号,我这里是zcu102

6d380931ed76b48ca63e58736f90d5fd.png

这一页的属性不用修改,默认就可以

4d6826f4e28aaa0702f70d5b86e913a2.png

选择工程的类型,xinlinx给出了一些模板,这里选择Empty Applicaton,点击finish完成。

acb40820ffbfa2eea19a9ca69ac377ab.png

3. 为我们的程序添加一个源代码文件,左边的project视图里面,鼠标移动到src的目录上点击右键New -> File

bbb3966241758fe38da9e2a1b94b954d.png

在helloworld.cpp里面写上那段延续了几十年的古老的代码

#include

using namespacestd;intmain()

{

cout<< "Hello World from Xilinx zcu102." <

}

52f46f2b8b5df706691f1d1d56a6b290.png

4. 编译源代码,点击SDx上方的build图标,图标旁边的三角形可以下拉选择Debug/Release,我这里选择的Release

ae0c83316f8d80de987120d1436e1299.png

build完成后project视图会多出来一个Release的文件夹(若果你选择的Debug,那就会多出来一个Debug的文件夹)。我们需要把sd_card文件夹里面的所有文件全部复制到sd卡上(事先格式化为fat32格式)

f7f3239db01af87fcc5bdf6222e16d5f.png

现在sd卡里面的文件是这样的

0b880b4b4ca8a6400ee16d9dfa400ee5.png

5. 设置zcu102从sd卡启动,这里可以参考zcu102的快速指南手册,主要就是SW6的4个开关一定要拨正确

16185404cc8c931dac47f1247035c3ae.png

来张特写

e15b82e8c74ac9d77593c44f32bfea78.png

6.连接上串口,串口线和android数据线一样的那两根都连接到电脑就可以了,其中靠近网卡的那根就是串口,如果分不清楚就都连上电脑,电脑上打开串口工具,我用的SecureCRT,linux下一定要注意用sudo 权限打开,win7下不用。

图中的 /dev/ttyUSB0 可能数字 0 会和你的不一致,你可以逐个试一下,其他参数分别为Serial , 115200 ,  8 ,  none  , 1  都是下拉选择的,应该不会选错。

d016781bbf457e3e1cbffed0953eaa23.png

这样就能看到启动信息了,在串口通信的终端打印出来的

abbb4c81f7cc3788d0c30deb3bfeda8d.png

7.运行我们的程序,默认情况下你的sd卡会被挂载到/mnt 目录,所以进入/mnt目录就可以执行我们生成的firstSDXProject.elf文件

cd /mntls -l

./firstSDXProject.elf

0644a9c79ae57733e8dd49bcb5a4c7fc.png

ok,  这样就可以看到运行结果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值