ZYNQ跑系统 系列(三) SDsoc方式移植linux
来源:互联网 发布:数字油画淘宝 编辑:程序博客网 时间:2024/06/05 10:26
移植linux之SDsoc
想让ZYNQ上跑个linux系统,除了之前的两篇文章中的传统方式和petalinux方式外,还有一种更简单快捷的SDsoc,xilinx的SDx系列开发工具主要是面向软件开发人员和系统工程师,加快应用的开发,让软件开发者加入到项目中,SDsoc侧重的是对软件算法进行加速,本文仅仅是使用该工具生成一个linux环境下的helloworld应用
SDsoc可以直接运行在Windows环境下,不需要搭建linux开发环境,一键生成SD卡的启动文件,可以说是很省心了
一、准备工作
1.下载SDsoc的预安装程序
这里没有去下载全安装包,因为太大了,30多个G,而是选择了可以根据自己的需要,去定制要下载的安装包的预安装程序
SDsoc的安装程序建议去官网下载,也可以从这里直接下载2.打开安装程序,选择自己需要安装的东西,越少越好
3.继续,等待下载和安装
4.安装完成后要去下载一个SDsoc的lic
这个lic只能自己去官网生成并下载了,这个是根据自己的MAC物理地址生成的对应相应主机的lic,所以分享出来也是没有用的,可以免费申请60天试用,申请的次数好像没有限制5.通过lic管理器,激活SDsoc
二、创建工程
SDsoc创建工程是特别简单的,如果试过之前两种移植linux的方式,再看这个方式,会被惊艳到的
1.选择工作空间,创建工程,工程名h1_test
2.这里选择相应型号
3.选择linux系统环境
文件系统不勾选,使用它自己生成的文件系统4.建立一个空应用
5.在项目视图中右击src,添加一个helloworld.c的文件
#include <stdio.h>int main(){ printf("Hello World\n"); return 0;}
6.直接build,因为默认会输出SD卡的文件
经过一分钟左右的样子,就编译完成了7.拷贝文件进SD卡
在工程文件夹—>Debug文件夹—>sd_card文件夹
将sd_card文件夹下的所有文件都拷贝到SD卡中
<所有所需的文件都在一分钟之内全部生成完毕了>
README.txt:-= SD card boot image =-
Platform: zybo
Application: h1_test.elf- Copy the contents of this directory to an SD card
- Set boot mode to SD
- Insert SD card and turn board on
8.上电启动
打开putty软件,上电启动,可以看到linux系统正常启动,接下来就是去找到并运行我们的h1_test.elf文件9.找到并运行我们的h1_test.elf文件
由于文件系统和elf应用程序是分开的,所以在文件系统内是不能直接找到h1_test.elf文件的,需要挂载SD卡到文件系统中进行操作首先在root目录下,新建一个device文件夹,用于映射出SD卡
root@zybo:~# mkdir device
将SD卡(mmcblk0)的p1分区,挂载到root下的device文件夹下,这样就能从device文件夹下操作SD的文件(helloworld.elf)了
mount /dev/mmcblk0p1 device
进入device文件夹,并浏览内容
root@zybo:~# cd device/
root@zybo:~/device# ls
BOOT.BIN h1_test.elf README.txt image.ub sds_trace_data.dat _sds
运行h1_test.elf应用程序
root@zybo:~/device# ./h1_test.elf
Hello World
解除挂载(首先回到root目录,然后卸载)
root@zybo:~/device# cd ..
root@zybo:~# umount /dev/mmcblk0p1
目前来说,这个linux下的helloworld,是做起来最省心的了,相对于前两种方法,之后再考虑如何自动执行helloworld
- ZYNQ跑系统 系列(三) SDsoc方式移植linux
- ZYNQ跑系统 系列(一) 传统方式移植linux
- ZYNQ跑系统 系列(二) petalinux方式移植linux
- zynq zc706 Linux系统移植笔记
- Xilinx ZYNQ 7000+Vivado2015.2系列(五)之ZYNQ的三种启动方式-JTAG、SD card、Flash
- Zynq-Linux移植学习笔记之三-ramdisk
- Zynq-Linux移植学习笔记之18-Zynq下NOR_FLASH挂载文件系统
- Xilinx ZYNQ 7000+Vivado2015.2系列(四)之GPIO的三种方式:MIO、EMIO、AXI_GPIO
- Xilinx ZYNQ 7000+Vivado2015.2系列(三)之HelloWorld实验(最小系统)(纯PS)
- 最小系统zynq petalinux移植学习
- zynq-7000系列基于zynq-zed的AMP模式的实现(linux+bare-metal)
- Zynq-Linux移植学习笔记之一-入门
- 从读手册开始让zynq板卡跑起linux(三)------内核的编译
- ARM+linux系统移植3G拨号上网收发短信(三)
- ARM+linux系统移植3G拨号上网收发短信(三)
- ARM+linux系统移植3G拨号上网收发短信(三)
- 【嵌入式Linux学习七步曲之第三篇 Linux系统bootlaoder移植】U-BOOT全线移植分析系列之三--U-BOOT在AT91RM9200上的移植
- 【嵌入式Linux学习七步曲之第三篇 Linux系统bootlaoder移植】U-BOOT全线移植分析系列之三--U-BOOT在AT91RM9200上的移植
- C#中的深复制和浅复制(在C#中克隆对象)
- 大数据——hadoop——基本安装、hadoop伪分布实际操作
- 强大的地图库--Leaflet.js爬坑记录(2)
- Gradle项目转成Maven项目
- Bom对象模型
- ZYNQ跑系统 系列(三) SDsoc方式移植linux
- 自定义MyBatis Generator Plugin
- Android Matrix 带你掌控雷电
- Hadoop,Spark :文件输出压缩
- darwin之rtsp请求信息解析(RTSPRequest)
- ubuntu 16.04 转换DBC文件到excel
- STL学习系列之一——标准模板库STL介绍
- 数据结构与算法day2--冒泡排序
- 比较完整的junit单元测试之-----mock模拟测试