玩转赛灵思Zedboard开发板(6):如何在Zedboard上运行linux下的应用程序?
linux开发一样来使用Zedboard了。SDK提供了标准可视化的linux-arm交叉编译链,不需要再进行交叉编译环境的搭建。
启动SDK,new-》C project,选择工程类型为"Xilinx ARM Linux Executable",工具链为"Xilinx ARM GNU/Linux Toolchain"
在工程配置选项中,去掉Debug(因为我们不需要进行调试),只保留Release
工程建立后好,新建main.c文件,修改内容如下:
1 /*
2 * hello.c
3 *
4 * Created on: 2012-11-8
5 * @超群天晴 http://www.cnblogs.com/surpassal/
6 */
7
8 #include 《stdio.h》
9
10 int main()
11 {
12 printf("HelloWorld!\n");
13 printf("This is from Zedboard Linux!\n");
14 printf("2012年11月8日16:43:22 by 超群天晴\n");
15 return 0;
16 }
就是一个简单的从控制台输出helloworld信息。编译后生成了lab_6.elf可执行文件,将其拷贝到了U盘上。
三、运行linux可执行程序
将U盘连接到Zedboard,控制台会提示有USB device连接上,分配给这个设备的名称是sda1
1 zynq> [ 2263.970000] usb 1-1: new high-speed USB device number 2 using xusbps-ehci
2 [ 2264.120000] scsi0 : usb-storage 1-1:1.0
3 [ 2265.130000] scsi 0:0:0:0: Direct-Access Generic Flash Disk 8.07 PQ: 0 ANSI: 4
4 [ 2265.140000] sd 0:0:0:0: [sda] 3932160 512-byte logical blocks: (2.01 GB/1.87GiB)
5 [ 2265.140000] sd 0:0:0:0: Attached scsi generic sg0 type 0
6 [ 2265.150000] sd 0:0:0:0: [sda] Write Protect is off
7 [ 2265.150000] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn‘t support DPO or FUA
8 [ 2265.170000] sda: sda1
9 [ 2265.180000] sd 0:0:0:0: [sda] Attached SCSI removable disk
10
11 zynq>
使用mount命令
mount /dev/sda1 /mnt/
将设备挂载到mnt目录下,
输入命令
cd /mnt
切换到mnt目录
输入命令
ls
可以看到目录下有我们刚刚生成的lab_6.elf可执行文件
输入命令
./lab_6.elf
运行,可以看到执行结果,控制台输出了我们需要的信息
===============================
Digilent官方OOB设计参考:http://www.digilentinc.com/Data/Documents/Other/ZedBoard_OOB_Design.zip
完整工程下载:【详见】