微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > Zynq交叉编译环境链的建立与C程序编写

Zynq交叉编译环境链的建立与C程序编写

时间:02-10 来源:网络整理 点击:

在Vivado下完之前,先把Zynq的软件编译环境安装好,可以用来重新编译基于Zynq的Linux系统,同时能写基于Zynq的C程序(其实Vivado中的SDK也能实现)。下面是具体步骤:

1. 电脑原有XP,为了安装Zynq的交叉编译链,又装了Ubuntu 12.04。
2. 在这个页面找到ARM GNU Tool,注册Xilinx官网后可下载
3. 下载得到的文件是xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin,接着安装。安装之前需要在 Ubuntu下打开一个终端,输入命令 "sudo dpkg-reconfigure dash",然后出现下图,选择"否",退出。此步就是将dash改成bash,原理我不懂,只是安装刚下载那个文件的时候,需要改成bash才行。

4. 将"xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin"此文件拷贝到"主文件夹"下面,打开一个终端,运 行"sudo ./xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin"。然后出现安装界面,一步一步向下安装即可。部分 截图如下


期 间会问你是否安装到一个路径,我默认安装到指定路径的(我的是/root/CodeSourcery /Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/)。同时,还会问道需不需要"Modify PATH",我默认"修改"。
5.安装完以后,根据这个页面最后一小段说明,需要修改环境变量,命令如下
打开一个终端,输入su,然后输入密码,进入root
再输入export CROSS_COMPILE=arm-xilinx-linux-gnueabi-
再输入export PATH=/root/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/bin/PATH

6. 然后编译一个简单的C程序,我写的如下

然后,在终端中输入先输入su进入root,然后输入"arm-xilinx-linux-gnueabi-gcc ./hello.c -g -o hello",将C文件编译成可执行文件hello。此时的hello就是Zynq能执行的程序了。

7. USB转UART接上Zedboard,同时用网线把你电脑与Zedboard相连。给Zedboard加电。Ubuntu下用minicom做串口调试 助手,很好用。同时Ubuntu能直接识别Cypress的这个USB2UART芯片,串口默认对应的是/dev/ttyACM0。设置好比特率后,就能 与Zedboard交互。
同时,输入"ifconfig"命令,如下图

可 以看到Zynq不是DHCP的,默认IP是"192.168.1.10",子网掩码是"255.255.255.0",那么需要在Ubuntu下把网卡设 置成固定IP。比如"192.168.1.1"以及对应的子网掩码。设置完以后,可能还需重启Zedboard,你的电脑和Zedboard才能通过网线 连上。在Zynq中输入"ping 192.168.1.1",可以看到ping通了。同时,在Ubuntu下打开浏览器,输入"192.168.1.10",可以看到下图

8.在电脑上另开一个终端,输入"ftp 192.168.1.10",这样可以通过ftp连接到Zedboard了,这样的话就能实现电脑与Zedboard之前相互发送文件了。
用put命令,通过ftp将刚才生成的hello文件传送到Zedbord的usr文件夹下

然后在Zynq端输入,"chmod +x ./hello"把此hello文件加权限为可执行,然后再输入"./hello",即可看到程序输出结果,如下图

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top