一、STM32MP257开发板初体验

文章目录

  • STM32MP257开发板初体验
    • 1. 硬件介绍
    • 2. 下载编译源码
    • 3. 烧录
    • 4. 启动

STM32MP257开发板初体验

从本篇文章开始本专栏将详细记录学习STM32MP257过程中的学习心得,旨在详细掌握嵌入式LINUX中的全流程内容,主要包括启动流程分析、驱动分析、Yocto系统定制等内容。

1. 硬件介绍

硬件平台:
本文采用米尔电子的 MYC-LD25X核心板及开发板,硬件配置如下:

  • 搭载意法半导体最新一代工业级64位微处理器STM32MP257DAK3
  • 2G内存
  • 8G EMMC

STM32MP257DAK3搭载 双核Cortex-A35 +Cortex-M33,主频1.5GHz+400MHz;
配备1.35 TOPS的NPU ,Lite-ISP功能的MIPI CSI;
集成3D GPU, H.264 硬件编解码,RGB, MIPI DSI 以及 LVDS 显示接口

在这里插入图片描述

2. 下载编译源码

编译源码之前需要安装一系列基础库,执行如下指令安装:

sudo apt-get update
sudo apt-get install -y gawk wget git-core diffstat \
unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev \
xterm sed cvs subversion coreutils texi2html docbook-utils python-pysqlite2 \
help2man make gcc g++ desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev \
mercurial autoconf automake groff curl lzop asciidoc u-boot-tools cpio \
sudo locales bc libncurses5-dev screen flex bison vim-tiny \
device-tree-compiler xvfb libgtk2.0-dev libssl-dev net-tools libyaml-dev \
rsync liblz4-tool zstd python3-pip git-lfs iputils-ping jq

接下来就是下载米尔电子官方的yocto源码,可以通过如下指令下载:

repo init -u https://github.com/MYiR-Dev/myir-st-manifest.git --no-clone-bundle --depth=1 -m myir-stm32mp2-6.1.82-1.0.0.xml -b myd-ld25x-v24.06.26-mickledore

然后执行如下编译指令:

DISTRO=openstlinux-weston MACHINE=myd-ld25x source layers/meta-myir/scripts/envsetup.sh
bitbake myir-image-full -k  //编译全功根软件系统   -k: 错误继续编译
bitbake myir-image-core -k  //编译最小系统

然后就是初次编译漫长的等待,根据个人电脑硬件配置和网络环境不同,可能持续一到多个小时,最后会在build-openstlinuxweston-myd-ld25x/tmp-glibc/deploy/images/myd-ld25x 路径下面生成众多image,包括TFA,Uboot, kernel和根文件系统等。
在这里插入图片描述

3. 烧录

接下来烧录上面编译得到的产物,首先将开发板上的启动选择拨码开关设置到0000,然后USB OTG口连接到电脑,上位机软件选择配置如下:
在这里插入图片描述
注意选择的烧录文件是:

build-openstlinuxweston-myd-ld25x/tmp-glibc/deploy/images/myd-ld25x/flashlayout_myir-image-core/optee

烧录镜像位置选择是:

build-openstlinuxweston-myd-ld25x/tmp-glibc/deploy/images/myd-ld25x/

4. 启动

烧录完成以后将开发板的拨码开关重新拨到0100,即EMMC启动,连接串口线到电脑,电脑打开串口软件,可以看到上电信息:

Welcome to ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 4.2.4-snapshot-20241215 (mickledore)!

[  OK  ] Created slice Slice /system/getty.
[  OK  ] Created slice Slice /system/modprobe.
[  OK  ] Created slice Slice /system/serial-getty.
[  OK  ] Created slice User and Session Slice.
[  OK  ] Started Dispatch Password �…ts to Console Directory Watch.
[  OK  ] Started Forward Password R�…uests to Wall Directory Watch.
[  OK  ] Reached target Path Units.
[  OK  ] Reached target Remote File Systems.
[  OK  ] Reached target Slice Units.
[  OK  ] Reached target Swaps.
[  OK  ] Listening on RPCbind Server Activation Socket.
[  OK  ] Reached target RPC Port Mapper.
[  OK  ] Listening on Syslog Socket.
[  OK  ] Listening on Process Core Dump Socket.
[  OK  ] Listening on initctl Compatibility Named Pipe.
[  OK  ] Listening on Journal Socket (/dev/log).
[  OK  ] Listening on Journal Socket.
[  OK  ] Listening on Network Service Netlink Socket.
[  OK  ] Listening on udev Control Socket.
[  OK  ] Listening on udev Kernel Socket.
         Mounting Huge Pages File System...
         Mounting POSIX Message Queue File System...
         Mounting Kernel Debug File System...
         Mounting Temporary Directory /tmp...
         Starting Create List of Static Device Nodes...
         Starting Load Kernel Module configfs...
         Starting Load Kernel Module drm...
         Starting Load Kernel Module fuse...
         Starting Mount partitions...
         Starting RPC Bind...
         Starting Journal Service...
         Starting Load Kernel Modules...
         Starting Generate network �…ts from Kernel command line...
         Starting Remount Root and Kernel File Systems...
         Starting Coldplug All udev Devices...
[  OK  ] Started RPC Bind.
[  OK  ] Mounted Huge Pages File System.
[  OK  ] Mounted POSIX Message Queue File System.
[  OK  ] Mounted Kernel Debug File System.
[  OK  ] Mounted Temporary Directory /tmp.
[  OK  ] Finished Create List of Static Device Nodes.
[  OK  ] Finished Load Kernel Module configfs.
[  OK  ] Started Journal Service.
[  OK  ] Finished Load Kernel Module drm.
[  OK  ] Finished Load Kernel Module fuse.
[  OK  ] Finished Load Kernel Modules.
[  OK  ] Finished Generate network units from Kernel command line.
[  OK  ] Finished Remount Root and Kernel File Systems.
         Mounting FUSE Control File System...
         Mounting Kernel Configuration File System...
         Starting Flush Journal to Persistent Storage...
         Starting Apply Kernel Variables...
         Starting Create System Users...
[  OK  ] Mounted FUSE Control File System.
[  OK  ] Mounted Kernel Configuration File System.
[  OK  ] Finished Flush Journal to Persistent Storage.
[  OK  ] Finished Apply Kernel Variables.
[  OK  ] Finished Create System Users.
         Starting Create Static Device Nodes in /dev...
[  OK  ] Finished Create Static Device Nodes in /dev.
[  OK  ] Reached target Preparation for Local File Systems.
         Starting Rule-based Manage�…for Device Events and Files...
[  OK  ] Finished Mount partitions.
         Starting Resize root files�…to fit available disk space...
[  OK  ] Started Rule-based Manager for Device Events and Files.
[  OK  ] Finished Resize root files�…m to fit available disk space.
         Mounting /var/volatile...
[  OK  ] Finished Coldplug All udev Devices.
[  OK  ] Mounted /var/volatile.
         Starting Load/Save OS Random Seed...
[  OK  ] Reached target Local File Systems.
         Starting Rebuild Dynamic Linker Cache...
         Starting Create Volatile Files and Directories...
[  OK  ] Finished Load/Save OS Random Seed.
[  OK  ] Finished Create Volatile Files and Directories.
         Starting Rebuild Journal Catalog...
         Starting Network Name Resolution...
         Starting Network Time Synchronization...
         Starting Record System Boot/Shutdown in UTMP...
[  OK  ] Finished Rebuild Journal Catalog.
[  OK  ] Finished Record System Boot/Shutdown in UTMP.
[  OK  ] Finished Rebuild Dynamic Linker Cache.
         Starting Update is Completed...
[  OK  ] Finished Update is Completed.
[  OK  ] Started Network Name Resolution.
[  OK  ] Reached target Host and Network Name Lookups.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Time Set.
[  OK  ] Found device /dev/dri/card0.
[  OK  ] Started Starts Psplash Boot screen.
[  OK  ] Created slice Slice /system/systemd-backlight.
         Starting Load/Save Screen �…klight:panel-lvds-backlight...
[  OK  ] Finished Load/Save Screen �…acklight:panel-lvds-backlight.
[  OK  ] Created slice Slice /system/systemd-fsck.
         Starting File System Check on /dev/mmcblk1p7...
[  OK  ] Finished File System Check on /dev/mmcblk1p7.
         Mounting /run/media/vendorfs-mmcblk1p7...
         Starting File System Check on /dev/mmcblk1p9...
[  OK  ] Mounted /run/media/vendorfs-mmcblk1p7.
[  OK  ] Finished File System Check on /dev/mmcblk1p9.
         Mounting /run/media/userfs-mmcblk1p9...
         Starting File System Check on /dev/mmcblk1p6...
[  OK  ] Mounted /run/media/userfs-mmcblk1p9.
[  OK  ] Finished File System Check on /dev/mmcblk1p6.
         Mounting /run/media/bootfs-mmcblk1p6...
[  OK  ] Mounted /run/media/bootfs-mmcblk1p6.
[  OK  ] Found device /dev/tee0.
[  OK  ] Found device /dev/hwrng.
[  OK  ] Started Hardware RNG Entropy Gatherer Daemon.
[  OK  ] Reached target System Initialization.
[  OK  ] Started Serves stm32mp clocks calibration..
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Reached target Timer Units.
[  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Listening on dropbear.socket.
[  OK  ] Reached target Socket Units.
[  OK  ] Reached target Basic System.
         Starting ST set alsa state configuration...
         Starting Avahi mDNS/DNS-SD Stack...
[  OK  ] Started Kernel Logging Service.
[  OK  ] Started System Logging Service.
         Starting D-Bus System Message Bus...
         Starting Ethernet Bridge Filtering Tables...
         Starting IPv6 Packet Filtering Framework...
         Starting IPv4 Packet Filtering Framework...
         Starting Reboot and dump vmcore via kexec...
[  OK  ] Started Seat for Weston user.
         Starting ST Load M33 firmware via remoteproc...
[  OK  ] Started Calibrates HSI/CSI clocks.
         Starting Resets System Activity Logs...
         Starting User Login Management...
         Starting TEE Supplicant...
         Starting Check if the gpu �…orrect weston configuration...
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Finished Ethernet Bridge Filtering Tables.
[  OK  ] Finished IPv6 Packet Filtering Framework.
[  OK  ] Finished IPv4 Packet Filtering Framework.
[  OK  ] Finished Reboot and dump vmcore via kexec.
[  OK  ] Finished Resets System Activity Logs.
[  OK  ] Started TEE Supplicant.
[  OK  ] Finished ST Load M33 firmware via remoteproc.
[  OK  ] Started Avahi mDNS/DNS-SD Stack.
[  OK  ] Started User Login Management.
[  OK  ] Reached target Preparation for Network.
[  OK  ] Reached target Hardware activated USB gadget.
[  OK  ] Listening on Load/Save RF �…itch Status /dev/rfkill Watch.
[  OK  ] Started Temperature Control Service.
         Starting Load Kernel Module drm...

>>>PN:MYC-LD257-8E2D-150-I
>>>SN:WKRD24110702600025U
         Starting Network Configuration...
[  OK  ] Finished Load Kernel Module drm.
         Starting Userfs cleanup package...
[  OK  ] Created slice User Slice of UID 1000.
         Starting User Runtime Directory /run/user/1000...
[  OK  ] Finished Check if the gpu �… correct weston configuration.
         Starting Load/Save RF Kill Switch Status...
[  OK  ] Finished User Runtime Directory /run/user/1000.
[  OK  ] Finished ST set alsa state configuration.
         Starting Save/Restore Sound Card State...
[  OK  ] Started Load/Save RF Kill Switch Status.
[  OK  ] Started Network Configuration.
[  OK  ] Finished Save/Restore Sound Card State.
[  OK  ] Reached target Network.
[  OK  ] Reached target Sound Card.
[  OK  ] Started IIO Daemon.
         Starting Real time performance monitoring...
         Starting Simple Network Ma�…ent Protocol (SNMP) Daemon....
         Starting Simple Network Ma�…rotocol (SNMP) Trap Daemon....
         Starting TSN service...
         Starting Permit User Sessions...
         Starting Target Communication Framework agent...
[FAILED] Failed to start TSN service.
See 'systemctl status st-tsn.service' for details.
[  OK  ] Finished Permit User Sessions.
[  OK  ] Started Target Communication Framework agent.
[  OK  ] Started Real time performance monitoring.
[  OK  ] Started Getty on tty1.
[  OK  ] Started Serial Getty on ttySTM0.
[  OK  ] Reached target Login Prompts.
         Starting User Manager for UID 1000...
         Starting Weston graphical session...
[  OK  ] Finished Userfs cleanup package.
[  OK  ] Started User Manager for UID 1000.
[  OK  ] Started Session c1 of User weston.
[  OK  ] Started Session c2 of User weston.
[  OK  ] Started Session c3 of User weston.

ST OpenSTLinux - Weston - (A Yocto Project Based Distro) 4.2.4-snapshot myd-ld25x ttySTM0

可以通过命令行终端和开发板交互:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/937068.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

分析M0G突破后急剧下跌内因,x.game阐述不利面延续多久

MOG最新消息显示,美国唐纳德-的一则声明公开表示支持一种基于以太坊网络ERC-20代币标准的病毒式meme代币——Mog Coin(MOG),这一消息迅速发酵。然而,令人意想不到的是,在这位全球知名政治人物的背书之后&am…

P8772 求和 P8716 回文日期

文章目录 [蓝桥杯 2022 省 A] 求和[蓝桥杯 2020 省 AB2] 回文日期 [蓝桥杯 2022 省 A] 求和 题目描述 给定 n n n 个整数 a 1 , a 2 , ⋯ , a n a_{1}, a_{2}, \cdots, a_{n} a1​,a2​,⋯,an​, 求它们两两相乘再相加的和,即 S a 1 ⋅ a 2 a 1 ⋅ a 3 ⋯ a…

【优选算法】二分算法(在排序数组中查找元素的第一个和最后一个位置,寻找峰值,寻找排序数组中的最小值)

二分算法简介: 提到二分我们可能都会想起二分查找,二分查找要求待查找的数组是有序的,与我们今天讲的二分算法不同,并不是数组元素严格按照有序排列才可以使用二分算法,只要数组中有一个点可以将数组分为两个部分&…

升级Ubuntu 24.04 LTS报错“Oh no! Something has gone wrong.”

强烈建议:升级Ubuntu系统之前先配置好SSH远程访问 最近升级Ubuntu系统(18->24),经历了一些惊魂时刻,复盘下来没有重装系统的最得益于SSH访问。 在升级到24.04版本时,一切似乎表现得很正常,…

大模型底座 Transformer 的核心技术解析

1. 引言 说明目标 在深度学习领域,Transformer架构已成为近年来最重要的技术突破之一。它最早由Vaswani等人在2017年的论文《Attention is All You Need》中提出,迅速成为自然语言处理(NLP)和其他序列建模任务的核心工具。传统方法…

2.生成Transformation

目录 前言 Source FlatMap KeyBy sum print 总结 前言 以下面的WordCount为例 package com.wlh.p1;import org.apache.flink.api.common.functions.FlatMapFunction; import org.apache.flink.api.java.functions.KeySelector; import org.apache.flink.api.java.tuple…

1. 机器学习基本知识(3)——机器学习的主要挑战

1.5 机器学习的主要挑战 1.5.1 训练数据不足 对于复杂问题而言,数据比算法更重要但中小型数据集仍然很普遍,获得额外的训练数据并不总是一件轻而易举或物美价廉的事情,所以暂时不要抛弃算法。 1.5.2 训练数据不具有代表性 采样偏差&#…

TypeScript学习路线图

‌ TypeScript 是由微软开发和维护的一种静态类型编程语言,它是 JavaScript 的超集。TypeScript 的创建是为了解决构建大规模 JavaScript 应用程序所面临的挑战,并向该语言添加了可选的类型注解、类、接口和其他特性。 使用 TypeScript 的主要好处包括&a…

负载均衡oj项目:编译模块

编译运行模块是一个网络服务&#xff0c;这样编译模块就可以可以快速部署到&#xff0c;其他主机上。 编译模块思路 util.hpp #pragma once #include <string> #include <vector> #include <sys/types.h> #include <sys/stat.h> #include <unistd…

绿色浪潮,VELO Angel Glide坐垫奏响环保骑行乐章

地球的环境日益恶劣&#xff0c;冰川消融、海平面上升、极端天气频繁出现&#xff0c;这一切都在不断提醒着我们&#xff0c;保护地球家园刻不容缓。而在这场关乎人类未来的环保行动中&#xff0c;各个领域都在积极探索可持续发展的道路&#xff0c;自行车坐垫领域也迎来了绿色…

【从零开始入门unity游戏开发之——C#篇09】if-else条件表达式、三元运算符、switch-case的使用

文章目录 一、if条件表达式1、if 语句基本结构示例输出&#xff1a; 2、else语句示例输出&#xff1a; 3、else if 语句示例输出&#xff1a; 4、组合逻辑运算符示例输出&#xff1a; 5、嵌套 if 语句示例输出&#xff1a;总结 二、三元运算符1、语法&#xff1a;2、示例&#…

Visual Studio 使用 GitHub Copilot 扩展

&#x1f380;&#x1f380;&#x1f380;【AI辅助编程系列】&#x1f380;&#x1f380;&#x1f380; Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码Visual Studio 安装和管理 GitHub CopilotVisual Studio 使用 GitHub Copilot 扩展Visual Studio 使用 GitHu…

conda学习

参考: Anaconda 官网教程 https://freelearning.anaconda.cloud/get-started-with-anaconda/18202conda配置虚拟环境/conda环境迁移/python环境迁移 https://blog.csdn.net/qq_43369406/article/details/127140839 环境&#xff1a; macOS 15.2Anaconda Navigator 2.4.2 x.1…

Nginx配置示例教程

最近对Nginx做了一些初步研究&#xff0c;Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发。主要根据工作中各类应用服务部署访问的需求&#xff0c;围绕HTTP服务、负载均衡、正反向代理、子路由、静态资源发布访问等&#xff0c;以及结合minio管理的图片文件资…

git使用教程(超详细)-透彻理解git

一.核心基础 核心概念有六个 首先请把与svn有关的一切概念暂时从你的脑海中移除掉&#xff0c;我们要重新认识本文所讲述的所有概念。 1.worktree worktree是一个目录&#xff0c;你在这里对文件进行增加、删除、修改。也就是我们常说的工作区。在git中worktree必须要与一个…

Django结合websocket实现分组的多人聊天

其他地方和上一篇大致相同&#xff0c;上一篇地址点击进入, 改动点1&#xff1a;在setting.py中最后再添加如下配置&#xff1a; # 多人聊天 CHANNEL_LAYERS {"default":{"BACKEND": "channels.layers.InMemoryChannelLayer"} }因此完整的se…

Keil-MDK开发环境编译后axf自动转换bin格式文件

编译选项添加如下&#xff0c;调用fromelf工具自动完成转换&#xff1a; fromelf --bin -o "$LL.bin" "#L"

如何快速搭建若依管理系统?

1、下载若依管理系统前后端分离版代码至本地&#xff08;当前版本为RuoYi v3.8.8&#xff09;&#xff1a; RuoYi-Vue: &#x1f389; 基于SpringBoot&#xff0c;Spring Security&#xff0c;JWT&#xff0c;Vue & Element 的前后端分离权限管理系统&#xff0c;同时提供…

【JavaEE】网络(1)

&#x1f435;本篇文章开始讲解计算机网络相关的知识 一、基础概念 1.1 局域网和广域网 局域网→Local Area Network→简称LAN&#xff0c;局域网是局部组建的一种私有网络&#xff0c;局域网内的主机之间可以进行网络通信&#xff0c;局域网和局域网之间在没有连接的情况不能…

网络应用技术 实验八:防火墙实现访问控制(华为ensp)

目录 一、实验简介 二、实验目的 三、实验需求 四、实验拓扑 五、实验步骤 1、设计全网 IP 地址 2、设计防火墙安全策略 3、在 eNSP 中部署园区网 4、配置用户主机地址 5、配置网络设备 配置交换机SW-1~SW-5 配置路由交换机RS-1~RS-5 配置路由器R-1~R-3 6、配置仿…