首页 > 系统相关 >Petalinux ARM设置自启动、自动加载驱动、自动挂载SD卡

Petalinux ARM设置自启动、自动加载驱动、自动挂载SD卡

时间:2025-01-03 15:36:18浏览次数:6  
标签:profile echo etc init 自动 myapp 自启动 sd SD

一、在工程路径下新建app

petalinux-create -t apps --template install -n myapp-init --enable

petalinux会在metausr目录下新建一个目录,结构如下

project-spec/meta-user/recipes-apps/myapp-init/
├── files
│   └── myapp-init
├── myapp-init.bb
└── README

1 directory, 4 files

二、修改myapp-init文件

#!/bin/sh

echo "Hello PetaLinux PD2201"

#mount /dev/mmcblk0p1 /mnt/sd-mmcblk0p2

echo "insmod my spi driver"
echo 'cd /lib/modules/5.4.0-xilinx-v2020.2/extra'>> /etc/profile
echo 'modprobe myspidriver.ko'>> /etc/profile

echo 'FILE=/media/sd-mmcblk0p2/nanomsg_zc702.elf'>> /etc/profile
echo 'if [ -f "$FILE" ]; then'>> /etc/profile
echo '    echo "sd-mmcblk0p2 exist"'>> /etc/profile
echo '    cd /media/sd-mmcblk0p2'>> /etc/profile

echo 'else'>> /etc/profile
echo '    echo "sd-mmcblk0p1 not exist,start mount"'>> /etc/profile
echo '    mkdir media/sd-mmcblk0p2'>> /etc/profile
         'mount /dev/mmcblk0p1 /media/sd-mmcblk0p2' >> /etc/profile
echo '    cd /media/sd-mmcblk0p2'>> /etc/profile
echo 'fi'>> /etc/profile

echo 'cp ./nanomasg_lib/libnanomsg.so* /lib/'>> /etc/profile

echo './nanomsg_zc702.elf' >> /etc/profile

因为/etc/profile文件会在登陆后自动执行,因此可以将挂载驱动、sd卡、启动APP的命令写在该文件后。

三、修改myapp-init.bb文件

#
# This file is the myapp-aoturun recipe.
#

SUMMARY = "Simple myapp-aoturun application"
SECTION = "PETALINUX/apps"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

SRC_URI = "file://myapp-init \
        "

S = "${WORKDIR}"

inherit update-rc.d
INITSCRIPT_NAME = "myapp-init"
INITSCRIPT_PARAMS = "start 99 5 ."


do_install() {
#             install -d ${D}/${bindir}
#             install -m 0755 ${S}/myapp-aoturun ${D}/${bindir}
             install -d ${D}${sysconfdir}/init.d
             install -m 0755 ${S}/myapp-init ${D}${sysconfdir}/init.d/myapp-init
}
FILES_${PN} += "${sysconfdir}/*"

四、rootfs中查看是否存在该APP

petalinux -config -c rootfs

五、build整个工程,并更新boot,rootfs

petalinux -build
petalinux-package --boot --fsbl --fpga --u-boot --force

标签:profile,echo,etc,init,自动,myapp,自启动,sd,SD
From: https://www.cnblogs.com/dy-stairmed/p/18650187

相关文章

  • WinUI(WASDK)使用BotSharp框架开发多AI Agent协同
    WinUI(WASDK)使用BotSharp框架开发多AIAgent协同的桌面机器人管理助手(生图开关灯不在话下)前言大语言模型(LargeLanguageModels,LLMs)近年来在各行各业中展现出了巨大的潜力和影响力。从自然语言处理到自动化客服,从内容生成到智能助手,LLMs正在改变我们与技术互动的方式。随着技术......
  • FreeBSD VMware Tools踩坑指南
    FreeBSDVMwareTools踩坑指南闲着没事装了一下FreeBSD的虚拟机,在安装VMwareTools里踩了大坑,在网上几乎没有找到任何关于新版本如何解决这些问题的操作,这里就来记录一下应该怎么样正确安装。系统配置主系统Windows1124H2x86-64软件VMWareWorkstation17.6.1build-2431......
  • 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-9- 浏览器的相关操作 (详细教程)
    1.简介在自动化测试领域,元素定位是非常重要的一环。正确定位页面元素是测试用例能否成功执行的关键因素之一。playwright是一种自动化测试工具,它提供了丰富的元素定位方法,可以满足不同场景下的定位需求。前边宏哥已经通过不少的篇幅将playwright的元素定位的一些常用的基本方法和......
  • nodejs+vue+expressd协同过滤算法的毕业生租房平台java+python+php-计算机毕业设计
    目录技术栈和环境说明具体实现截图预期达到的目标系统设计详细视频演示技术路线解决的思路性能/安全/负载方面可行性分析论证python-flask核心代码部分展示python-django核心代码部分展示研究方法感恩大学老师和同学源码获取技术栈和环境说明本系统以Python开发语言......
  • AI 自动化编程对编程教育的影响
    AI自动化编程的未来引言你是否曾想过,未来的程序员需要掌握哪些技能呢?随着人工智能的迅猛发展,特别是生成式AI工具的普及,编程的世界正在发生翻天覆地的变化。编程教育也在这种环境下进行着深刻的转型。那么,AI自动化编程究竟会如何影响编程教育呢?在这篇文章中,我们将一起探......
  • 基于YOLOv8深度学习的智慧医疗皮肤病理图像自动化诊断系统
    随着人工智能技术在医学影像分析中的广泛应用,自动化皮肤病理图像诊断已成为提高诊断效率和准确性的重要手段。本研究提出了一种基于YOLOv8深度学习模型的智慧医疗皮肤病理图像自动化诊断系统,旨在实现皮肤病变的快速、准确诊断。系统能够自动识别和分类皮肤病变,包括但不限于“痣......
  • 使用Python自动生成历史发表博客目录列表,并计算出单篇访问量、点赞量、收藏量topN生成
    使用Python自动生成历史发表博客目录列表,并计算出单篇访问量、点赞量、收藏量topN生成目录并绘制折线图展示效果图2024博客列表按发表时间顺序从1月到12月2024年01月2024年02月2024年03月2024年04月2024年05月2024年06月2024年07月2024年08月2024年09月2024年10月2024年1......
  • 自动化测试工具Ranorex Studio(七十八)-故障排除
    故障排除如果你有连接问题,请考虑以下潜在的问题来源:•   请确保被测系统(移动设备)和运行测试的机器(安装Ranorex的)是在同一网络中的。设备上的Wi-Fi设置更改后,请务必重新启动设备。•   在常规设置的“插件”选项卡,在“Mobile”部分尝试延长搜索超时时间。•   ......
  • 【stable diffusion教程】AI绘画最强SD(Stable Diffusion)玩法实操教学案例及商业变现项
    前言AI绘画现在越来越火爆了,很多人无论大人小孩都在玩,还有的很多电商老板也在使用辅助生成产品主图和详情页,可以说是非常的实用。而其中最让人追捧和好评的就是SD(StableDiffusion)这款AI绘图软件了,StableDiffusion是一款基于深度学习的图像生成工具,它可以根据文本描述生成......
  • (二)编译原生SDK以及配置交叉编译链
    文章目录编译原生SDKLinuxSDK的安装第一步解压LinuxSDK第二步安装依赖软件第三步解压Buildroot的dl文件Linux系统镜像编译、生成第一步配置编译环境第二步编译LinuxSDK编译上面配置好的环境配置编译LinuxSDK配置内核选项配置Buildroot编译Qt库编译生成Linux......