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

1. 第一步就是安装Xilinx SDx, 我安装的是2017.4版本 Xilinx_SDx_2017.4_1216_1.tar.gz 点击下载

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

tar zxvf Xilinx_SDx_2017.4_1216_1.tar.gz

cd Xilinx_SDx_2017.4_1216_1/

./xsetup

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

cd  /opt/Xilinx/SDx/2017.4/bin

./sdx

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

填写项目名称和工作路径

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

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

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

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

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

#include <iostream>
using namespace std; int main()
{
cout << "Hello World from Xilinx zcu102." << endl; return ;
}

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

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

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

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

来张特写

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

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

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

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

cd /mnt

ls -l

./firstSDXProject.elf

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

使用Xilinx SDSoc在Xilinx zcu102开发板上编程HelloWorld的更多相关文章

  1. [转载]在iTOP-4412开发板上调试helloworld应用

    本文转自迅为论坛:http://www.topeetboard.com 1.安装ADB驱动 在开发板上调试 Android 应用,首先要安装 ADB 驱动. 通过“SDK Manager.exe”来安 ...

  2. easycwmp在开发板上的配置

    原创作品,转载请注明出处 copyright:weishusheng   2015.3.18 email:642613208@qq.com 平台: Linux version 2.6.32-279.e ...

  3. FS210开发板上Qt4.7.0移植过程

    作者:冯老师,华清远见嵌入式学院讲师. 1. 搭建Qt开发环境平台 1.开发环境:ubuntu 12.04 2.交叉编译链:arm-cortex_a8-linux-gnueabi 3.开发板:FS21 ...

  4. 开发板上使用core文件调试

    转载:http://www.nginx.cn/1521.html 如果开发板的操作系统也是linux,core调试方法依然适用.如果开发板上不支持gdb,可将开发板的环境(依赖库).可执行文件和cor ...

  5. DE1-SOC开发板上搭建NIOS II处理器运行UCOS II

    DE1-SOC开发板上搭建NIOS II处理器运行UCOS II   今天在DE1-SOC的开发板上搭建NIOS II软核运行了UCOS II,整个开发过程比较繁琐,稍微有一步做的不对,就会导致整个过 ...

  6. 物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上

    在HelloX开发团队的努力下,以及Winzent Tech公司(总部在瑞典斯德哥尔摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX开发板上.相关源代码已经发布到 ...

  7. ZTE AD3812 3G模块在linux 2.6.34 内核的开发板上的支持方法

    先说段废话,话说在linux 2.6.34 下,好多比较新的3G网卡及3G模块都没有很好的支持.如果想支持的这些3G网卡/3G模块呢,基本上有两种方式: 1.使用该3G模块的 linux 下的驱动,交 ...

  8. 运行在TQ2440开发板上以及X86平台上的linux内核编译

    一.运行在TQ2440开发板上的linux内核编译 1.获取源码并解压 直接使用天嵌移植好的“linux-2.6.30.4_20100531.tar.bz2”源码包. 解压(天嵌默认解压到/opt/E ...

  9. 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上

    博客地址 : http://blog.csdn.net/shulianghan/article/details/40299813  本篇文章中用到的工具源码下载 : -- ok-6410A 附带的 A ...

随机推荐

  1. 20170325 ABAP调用webservice

    转自:http://www.cnblogs.com/SolisOculus/archive/2013/04/01/2993198.html 在ABAP中调用Webservice     1.创建Pro ...

  2. Why use async requests instead of using a larger threadpool?(转载)

    问: During the Techdays here in the Netherlands Steve Sanderson gave a presentation about C#5, ASP.NE ...

  3. Quartz的misfire理解

    misfire用于Trigger触发时,线程池中没有可用的线程或者调度器关闭了,此时这个Trigger变为misfire.当下次调度器启动或者有可以线程时,会检查处于misfire状态的Trigger ...

  4. debian7 amd64版本添加对x86包的支持

    dpkg --add-architecture i386apt-get updateapt-get install ia32-libs ia32-libs-gtk

  5. C# 计时器 以“天时分秒毫秒”形式动态增加显示

    参考:http://zhidao.baidu.com/link?url=j-jxQJenrO54BSKJ_IkXWbhdDqbVLUyyenjjSGs8G0xdisgBZ0EMhzyWgARSFct6 ...

  6. SpringBoot2.0之整合Dubbo

    Dubbo支持协议 Dubbo支持dubbo.rmi.hessian.http.webservice.thrift.redis等多种协议,但是Dubbo官网是推荐我们使用Dubbo协议的. Sprin ...

  7. 无法定位程序输入点glPopAttrib于动态连结库OPENGL.dll上

    已经下载glut.lib glut32.lib glut.h glut.dll glut32.dll并放到了相应的文件夹中运行程序时还提示说缺少opengl.dll,我又下载了一个opengl.dll ...

  8. Rabbitmq+Nginx+keepalived高可用热备

    摘自: http://www.cnblogs.com/wangyichen/p/4917241.html 公司两台文件服务器要做高可用,避免单点故障,故采用keepalived实现,其中一台宕机,依靠 ...

  9. html5实现进度条功能效果非常和谐

    1. [图片] html5.jpg ​2. [代码][HTML]代码  <script type="text/javascript">    var i = 0;    ...

  10. RQNOJ 429 词链:单调栈

    题目链接:https://www.rqnoj.cn/problem/429 题意: 如果一张由一个词或多个词组成的表中,每个单词(除了最后一个)都是排在它后面的单词的前缀,则称此表为一个词链. 如:i ...