Writing /share/Web/wiki/data/cache/b/b586a5283e157dcffffb5d6e592c31b6.metadata failed
fpga:zynq学习
差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
| fpga:zynq学习 [2023/02/07 09:48] – [2.3 create app] zhangguo | fpga:zynq学习 [2023/03/17 10:12] (当前版本) – 外部编辑 127.0.0.1 | ||
|---|---|---|---|
| 行 17: | 行 17: | ||
| - | |||
| - | |||
| - | ===== - petalinux ===== | ||
| - | ==== - create project ==== | ||
| - | |||
| - | |||
| - | <code bash> | ||
| - | source / | ||
| - | |||
| - | petalinux-create -t project --template zynq -n xxx_name | ||
| - | petalinux-config --get-hw-description . | ||
| - | |||
| - | </ | ||
| - | |||
| - | |||
| - | ==== - create modules ==== | ||
| - | 相当于创建linux模块驱动 | ||
| - | |||
| - | <code bash> | ||
| - | petalinux-create -t modules -n xxx_module --enable | ||
| - | </ | ||
| - | |||
| - | |||
| - | ==== - create app ==== | ||
| - | 创建一个linux平台下的app可执行程序 | ||
| - | |||
| - | <code bash> | ||
| - | petalinux-create -t apps -n xxx_app | ||
| - | </ | ||
| - | |||
| - | 然后进入recipes-apps/ | ||
| - | |||
| - | |||
| - | |||
| - | ==== - build ==== | ||
| - | <code bash> | ||
| - | petalinux-build -c rootfs | ||
| - | petalinux-build -c xxx_module | ||
| - | petalinux-build -c xxx_app -x do_install | ||
| - | petalinux-build | ||
| - | </ | ||
| - | |||
| - | ==== - package to BOOT.BIN ==== | ||
| - | |||
| - | <code bash> | ||
| - | petalinux-package --boot --fsbl zynq_fsbl.elf --u-boot --kernel --fpga system.bit --force | ||
| - | # --boot, 打包成BOOT.BIN文件 | ||
| - | # -- 输入fsdb文件 | ||
| - | # --u-boot, 输入默认u-boot文件, 一般是指u-boot.elf | ||
| - | # --kernel ,输入petalinux内核, 默认是指image.ub | ||
| - | # --fpga, 指定FPGA bits文件。 | ||
| - | # | ||
| - | </ | ||
| - | |||
| - | ==== - 一个简单的驱动开发例程——GPIO流水灯(Petalinux部分) ==== | ||
| - | https:// | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== - 实现app开机启动 ==== | ||
| - | |||
| - | 参考ug1144, | ||
| - | |||
| - | <code bash> | ||
| - | |||
| - | |||
| - | 实现开机启动 | ||
| - | 本章节内容参考UG1144。 | ||
| - | (1)创建myapp-init应用 | ||
| - | |||
| - | cd < | ||
| - | petalinux-create -t apps --template install -n myapp-init --enable | ||
| - | |||
| - | (2)修改myapp-init.bb配置文件 | ||
| - | 配置文件的位置在: | ||
| - | |||
| - | project-spec/ | ||
| - | 修改文件内容为: | ||
| - | |||
| - | # | ||
| - | # This file is the myapp-init recipe. | ||
| - | # | ||
| - | SUMMARY = " | ||
| - | SECTION = " | ||
| - | LICENSE = " | ||
| - | LIC_FILES_CHKSUM =" | ||
| - | MIT; | ||
| - | SRC_URI = " | ||
| - | " | ||
| - | S = " | ||
| - | FILESEXTRAPATHS_prepend := " | ||
| - | inherit update-rc.d | ||
| - | INITSCRIPT_NAME = " | ||
| - | INITSCRIPT_PARAMS = "start 99 S ." | ||
| - | do_install() { | ||
| - | | ||
| - | | ||
| - | } | ||
| - | FILES_${PN} += " | ||
| - | (3)修改myapp-init脚本文件内容 | ||
| - | 脚本文件的位置在: | ||
| - | |||
| - | project-spec/ | ||
| - | myapp-init/ | ||
| - | |||
| - | 本文修改的内容为加载xilinx-axidma.ko module和在后台启动程序07和08,shell脚本比较简陋,更专业的写法可参考文末链接【1】: | ||
| - | |||
| - | #!/bin/sh | ||
| - | |||
| - | cd / | ||
| - | insmod xilinx-axidma.ko | ||
| - | |||
| - | cd /usr/bin | ||
| - | ./08 & | ||
| - | ./07 & | ||
| - | 完成后进行petalinux-build,使用新生成的镜像,下次就可以开机自启动了。 | ||
| - | ———————————————— | ||
| - | 版权声明:本文为CSDN博主「夏言谦」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 | ||
| - | 原文链接:https:// | ||
| - | |||
| - | </ | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== - zynq设备上运行指定驱动的app程序 ==== | ||
| - | |||
| - | 在zynq fpga运行过程。 | ||
| - | |||
| - | < | ||
| - | |||
| - | root@petalinux_boot_from_flash:/ | ||
| - | / | ||
| - | root@petalinux_boot_from_flash:/ | ||
| - | blink.ko | ||
| - | |||
| - | modprobe blink.ko | ||
| - | mknod / | ||
| - | ls / | ||
| - | blinkapp | ||
| - | |||
| - | </ | ||
fpga/zynq学习.1675734502.txt.gz · 最后更改: 2023/03/17 10:12 (外部编辑)