petalinux笔记[通俗易懂]

petalinux笔记[通俗易懂]记录一下这两天用正点原子开发板学petalinux的过程,众所周知,ZYNQ可以跑逻辑的FPGA,也可以跑裸机的SDK代码,还能跑个linux系统。在SDK开发中,只是在塔好的FPGA上跑一些简单的c代码,还没有安装上一个系统。1.首先是petalinux2018.3版本的安装建议参考正点原子的安装方法,注意事项就是使用ubuntu16.04版本而不是ubuntu18。要么就用ubuntu16.04配上petalin2018.3版本,要么就是ubuntu18配上pet…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

        记录一下这两天用正点原子开发板学petalinux的过程,众所周知,ZYNQ可以跑逻辑的FPGA,也可以跑裸机的SDK代码,还能跑个linux系统。在SDK开发中,只是在搭好的FPGA上跑一些简单的c代码,还没有安装上一个系统。

1.首先是petalinux2018.3版本的安装

        建议参考正点原子的安装方法,注意事项就是使用ubuntu16.04版本而不是ubuntu18。要么就用ubuntu16.04配上petalin2018.3版本,要么就是ubuntu18配上petalinux2019.1的版本

2.其次是petalinux的使用

        首先得先用vivado搭一个bit(用zynq的ip核)文件出来,然后在ubuntu16.04中进行开发。

主要流程是:

1.搭建vivado工程,配置好zynq核,DDR啥的,得到hdf硬件描述文件;

2.在ubuntu整好petalinux,在shell下source petalinux的settings.sh,打开这个配置好的环境,也可以把这个环境设计为默认启动;

3.petalinux-create -t project –template zynq -n ALIENTEK-ZYNQ 新建工程,然后cd进入工程的文件夹

4.petalinux-config配置,导入hdf文件,在窗口中进行配置,正点原子这里需要修改一下Serial Settings的串口为ps7_uart_0(两个串口一个是ps7_uart_0,一个是RS232/485)。

5.配置内核 petalinux-config -c kernel

6.配置linux根文件系统 petalinux-config -c rootfs

7.修改设备树

8.编译petalinux工程 petalinux-build

9.制作BOOT.BIN文件,使用petalinux-package指令来进行

10.格式化SD卡,两个盘一个是FAT32格式的启动盘,一个是ext4格式的根目录,复制BOOT.BIN即可以。

11.开发板打开sd启动模式(两个no),使用串口连接板卡。

        如果没有路由器,比如我……

        可以先连接板卡,配置一下IP,ifconfig eth0 192.168.1.10,

        再用windows的网络管理把对应的以太网的ip设置为192.168.1.2以及对应的掩码,这里这样设置后开发板和电脑就在一个网段内,可以进行后续的scp以及ssh通信等过程。

3.xsdk的使用

        主要是三种运行的方法,第一种是软件内的TCF Agent,只需要对应开发板的IP就可以运行;

第二种是NFS的文件共享;第三种是ssh的远程连接。

4.uboot移植

        这里主要讲到uboot的具体移植方法,我个人兴趣不大,没有仔细看。

5.linux驱动开发

        首先需要按照它给出的方式,用另外一种方式编译ZYNQ镜像,个人觉得配置的过程相当繁琐……

        配置好后,可以跑一下第一个例子,即字符设备驱动

        使用arm-linux-gnueabihf编译一下驱动程序产生 chrdevbase.ko的驱动模块

        使用scp将文件传输到我们的开发板上

        再用insmod或者modprobe加载模块

        之后可以用lsmod查看加载的mod模块

        再用mknod创建设备节点文件,使用

        ./chrdevbaseApp /dev/chrdevbase 1  测试读操作

        ./chrdevbaseApp /dev/chrdevbase 2  测试写操作

        最后用 rmmod chrdevbase.ko来卸载模块。

        驱动开发需要编写驱动程序以及对应的驱动测试程序,然后通过交叉编译驱动程序,将其编译为ko格式的驱动模块,之后在linux系统中加载这个模块并创建对应的设备节点文件,最后用这个设备模块来测试我们自己编写的对应驱动测试程序。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/194903.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • pycharm如何设置字体大小快捷键_ps字体放大缩小快捷键

    pycharm如何设置字体大小快捷键_ps字体放大缩小快捷键一、pycharm字体放大的设置File->setting->Keymap->在搜寻框中输入:increase->IncreaseFontSize(双击)->在弹出的对话框中选择AddMouseShortcut在弹出的对话框中同时按住ctrl键和鼠标滚轮向上滑,点击OK完成设置二、Pycharm字体缩小的设置File->setting->Keymap->在搜寻框中输入:decrease->Decre.

  • 笔记28-MYSQL约束「建议收藏」

    笔记28-MYSQL约束「建议收藏」DQL:查询语句1.排序查询 *语法:orderby子句 *orderby排序字段1排序方式1,排序字段2排序方式2… *排序方式: *ASC:升序,默认的。 *DESC:降序。 *注意: *如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。2.聚合函数:将一列数据作为一个整体,进行纵向的计算。 1.count:计算个数 1.一般选择非空的列:主键 2.count(*) 2.max:计算最大值 3.

  • YDOOK: ASCII码表:完整的 ASCII码表 ASCII码官方全收录

    YDOOK: ASCII码表:完整的 ASCII码表 ASCII码官方全收录YDOOK:ASCII码表:完整的ASCII码表ASCII码官方全收录ASCii打印字符对照表DEC OCTHEX BIN 缩写/符号 HTML实体 符号描述0 000 00 00000000 NUL &#+000; Nullchar(空字符)1 001 01 00000001 SOH &#+001; StartofHeading(标题开始)2 002 02 00000010 STX &#+002; StartofText(正文开始)3 003

  • pycharm mac 激活码【2021最新】

    (pycharm mac 激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html4M7HSKPBXS-eyJsa…

  • 2016年1月15日面试某互联网公司总结(转)

    2016年1月15日面试某互联网公司总结(转)

  • mysql联合索引失效

    mysql联合索引失效联合索引,能够缩小查询范围的字段放在第一个,比如表sensor_coc_repay_feature存近一个月数据两千多万条,建立联合索引(time,distinct_id),按照查询select*fromsensor_coc_repay_featurewheredistinct_id=%sandtime>‘2022-02-20’,此时然后按照联合索引最左匹配有使用到了time,distinct_id,但是经过time查询后的数据还会是全表,mysql会认为该查询还不如走全表查询

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号