当前位置: 首页 > news >正文

【已编译资料】基于正点原子alpha开发板的第三篇系统移植

系统移植的三大步骤如下:

  1. =系统uboot移植====
  2. =系统linux移植====
  3. =系统rootfs制作====

一言难尽,踩了不少坑,当时只是想学习驱动开发,发现必须要将第三篇系统移植弄好才可以学习后面驱动,现将移植好的文件分享出来:
仓库:https://gitee.com/wangyoujie11/imx6u-ll-uboot-kernel-rootfs.git
在这里插入图片描述

使用如下

如果直接使用我移植好的四大组件,只需要完成以下配置

  1. 将usb线连接开发板的OTG串口,另一端连接电脑;然后另一根连接USB_TTL串口,另一端连接电脑;
  2. 检测自己的sd卡是否取下(sd卡槽不能插卡)
  3. 红色拨码开关打到USB启动
  4. 给板子上电,双击打开mfgtool2-alientek-alpha-emmc.vbs文件,提示“符合标准就可以点击start,等待烧入,可以打开串口助手查看下载信息。提示信息如下所示,说明以及将系统烧写到板子上的emmc了。

在这里插入图片描述

从emmc启动将红色拨码开关打到emmc启动,然后复位板子就可以正常进入了boot命令,先输入ls mmc 1:1查看是否是图中的信息,没问题就输入环境变量:


=>setenv bootargs 'console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw=>setenv bootcmd 'mmc dev 1;fatload mmc 1:1 80800000 zImage;fatload mmc 1:1 83000000 imx6ull-alientek-emmc.dtb;bootz 80800000-83000000;'boot

在这里插入图片描述
在这里插入图片描述
从SD启动将红色拨码开关打到SD启动。首先准备工作alientek-linux和alientek-uboot和alientek-rootfs下载到本地ubuntu下解压如下:
链接:https://pan.baidu.com/s/18e-UhGz_HCEF9-Z2ADEjlg
提取码:wjwj

在这里插入图片描述

  1. 进入alientek-uboot文件下,打开终端使用./imxdownload u-boot.bin /dev/sdb(自己的sd)中
  2. 然后将SD卡插入到板子卡槽内,使用SD卡启动模式
  3. 在tftp文件下面添加如下内容(可以在alientek-linux文件中找到)
    在这里插入图片描述
  4. 将rootfs文件解压到nfs文件夹下面
    在这里插入图片描述
  5. 使用chmod 777 -R nfs 和chmod 777 -R tftpboot。给这俩个文件夹权限
  6. 开发板直连电脑搭建NFS&TFTP环境配置:https://blog.csdn.net/zzssdd2/article/details/110455413。注意:路径一定要改为自己的路径
  7. 板子从SD卡启动,然后就可以使用驱动例程来做了,在编译驱动例程的时候,需要替换官方的路径
    在这里插入图片描述
    在这里插入图片描述
  8. 确定板子的信息是
    在这里插入图片描述
 # 设置启动参数bootargs
#	nfsroot后的参数为Ubuntu的nfs文件夹路径;格式为:nfsroot=NFS服务器IP:文件系统的绝对路径.
#	ip后的参数为开发板网络信息:ip=开发板IP:服务器IP:网关,子网掩码::eth0:off. 
setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs rw nfsroot=192.168.104.88:/home/wj/linux/nfs/rootfs ip=192.168.104.90:192.168.104.88:192.168.104.1:255.255.255.0::eth0:off’
# 保存
=> saveenv
Saving Environment to MMC... Writing to MMC(0)... OK
# 复位重启
=> reset

重启板子之后就会出现:
在这里插入图片描述
然后在自己的ubuntu下找到一个编译好的驱动例程,使用如下命令就可以将程序拷贝到开发板的/lib/modules/4.1.15/路径下

sudo cp chrdevbase.ko chrdevbaseApp /home/wj/linux/nfs/rootfs/lib/modules/4.1.15/ -f

至此,所有的移植就完成了,可以愉快的驱动开发了

使用02_led驱动例程测试:
在这里插入图片描述
挂载之后就行点灯操作:
在这里插入图片描述请添加图片描述

相关文章:

【已编译资料】基于正点原子alpha开发板的第三篇系统移植

系统移植的三大步骤如下: 系统uboot移植系统linux移植系统rootfs制作 一言难尽,踩了不少坑,当时只是想学习驱动开发,发现必须要将第三篇系统移植弄好才可以学习后面驱动,现将移植好的文件分享出来: 仓库&…...

地下城堡3魂之诗食谱,地下城堡3菜谱37种

地下城堡3魂之诗食谱大全,让你解锁制作各种美食的方法!不同的食材搭配不同的配方制作,食物效果和失效也迥异。但有时候我们可能会不知道如何制作这些食物,下面为您介绍地下城堡3菜谱37种。 关注【娱乐天梯】,获取内部福…...

HDMI 基于 4 层 PCB 的布线指南

HDMI 基于 4 层 PCB 的布线指南 简介 HDMI 规范文件里面规定其差分线阻抗要求控制在 100Ω 15%,其中 Rev.1.3a 里面规定相对放宽了一些,容忍阻抗失控在 100Ω 25%范围内,不要超过 250ps。 通常,在 PCB 设计时,注意控…...

理解Go中的布尔逻辑

布尔数据类型(bool)可以是两个值之一,true或false。布尔值在编程中用于比较和控制程序流程。 布尔值表示与数学逻辑分支相关的真值,它指示计算机科学中的算法。布尔(Boolean)一词以数学家乔治布尔(George Boole)命名,总是以大写字母B开头。 …...

rv1126-rknpu-v1.7.3添加opencv库

rv1126所使用的rknn sdk里默认是不带opencv库的,官方所用的例程里也没有使用opencv,但是这样在进行图像处理的时候有点麻烦了,这里有两种办法: 一是先用python将所需要的图片处理好后在转化为bin格式文件,在使用c或c进行读取&…...

【Redis】Redis持久化深度解析

原创不易,注重版权。转载请注明原作者和原文链接 文章目录 Redis持久化介绍RDB原理Fork函数与写时复制关于写时复制的思考 RDB相关配置 AOF原理AOF持久化配置AOF文件解读AOF文件修复AOF重写AOF缓冲区与AOF重写缓存区AOF缓冲区可以替代AOF重写缓冲区吗AOF相关配置写后…...

c/c++--字节对齐(byte alignment)

1. 默认字节对齐 在所有结构体成员的字节长度都没有超出操作系统基本字节单位(32位操作系统是4,64位操作系统是8)的情况下 按照结构体中字节最大的变量长度来对齐;若结构体中某个变量字节超出操作系统基本字节单位 那么就按照系统字节单位来对齐。 注意&#xff1…...

算法进阶——字符串的排列

题目 输入一个长度为 n 字符串&#xff0c;打印出该字符串中字符的所有排列&#xff0c;你可以以任意顺序返回这个字符串数组。 例如输入字符串ABC,则输出由字符A,B,C所能排列出来的所有字符串ABC,ACB,BAC,BCA,CBA和CAB。 数据范围&#xff1a;n<10 要求&#xff1a;空间复…...

js中 slice 用法用法全解析

slice 工作原理 在深入研究一些更高级的用法之前&#xff0c;让我们看一下 slice 方法的基础知识。如MDN文档&#xff0c; slice 是数组上的一个方法&#xff0c;它最多有两个参数: arr.slice([begin[, end]]) begin 从该索引处开始提取原数组中的元素,如果该参数为负数&am…...

Typora安装教程

Typora 安装教程 安装 官网最新版 自行官网下载 社区版&#xff08;老版本&#xff0c;附带激活码&#xff09; 链接: https://pan.baidu.com/s/1t_3o3Xi7x09_8G1jpQYIvg?pwdmeyf 提取码: meyf 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 将百度云盘下…...

Pytorch中张量的维度扩张与广播操作示例

广播操作允许你对不同形状的张量执行逐元素操作&#xff0c;而无需显式循环。 一个关于分子坐标离散格点化的实战例子&#xff1a; def cdists(mols, grid):Calculates the pairwise Euclidean distances between a set of molecules and a listof positions on a grid (uses…...

身份证号码,格式校验:@IdCard(自定义注解)

目标 自定义一个用于校验 身份证号码 格式的注解IdCard&#xff0c;能够和现有的 Validation 兼容&#xff0c;使用方式和其他校验注解保持一致&#xff08;使用 Valid 注解接口参数&#xff09;。 校验逻辑 有效格式 符合国家标准。 公民身份号码按照GB11643&#xff0d;…...

【Java】instanceof 关键字

instanceof 通过返回一个布尔值来指出&#xff0c;某个对象是否是某个特定类或者是该特定类的子类的一个实例。 如果 object 是class 的一个实例&#xff0c;则 instanceof 运算符返回 true&#xff0c;如果 object 不是指定类的一个实例&#xff0c;或者object 是null, 则返回…...

Android 13.0 recovery出厂时正在清理字体大小的修改

1.前言 在13.0的系统rom定制化开发中,在系统中recovery模块也是系统中比较重要的模块,比如恢复出厂设置,recovery ota升级,清理缓存等等, 在一些1080p的设备,但是density只是240这样的设备,会在恢复出厂设置的时候,显示的字体有点小,产品要求需要将正在清理的字体调大…...

京东商品数据:8月京东环境电器行业数据分析

8月份&#xff0c;环境电器大盘市场整体下滑。鲸参谋数据显示&#xff0c;8月京东平台环境电器的大盘将近570万&#xff0c;环比下滑约29%&#xff0c;同比下滑约10%&#xff1b;销售额为25亿&#xff0c;环比下滑约23%&#xff0c;同比下滑约8%。 *数据源于鲸参谋-行业趋势分析…...

elasticsearch(ES)分布式搜索引擎04——(数据聚合,自动补全,数据同步,ES集群)

目录 1.数据聚合1.1.聚合的种类1.2.DSL实现聚合1.2.1.Bucket聚合语法1.2.2.聚合结果排序1.2.3.限定聚合范围1.2.4.Metric聚合语法1.2.5.小结 1.3.RestAPI实现聚合1.3.1.API语法1.3.2.业务需求1.3.3.业务实现 2.自动补全2.1.拼音分词器2.2.自定义分词器2.3.自动补全查询2.4.实现…...

webdriver.Chrome()没反应

今天学习爬虫安装selenium之后刚开始webdriver.Chrome()正常 后面运行突然卡在这一步了 百度发现是版本不匹配 我们下载旧版本的chrome Download Google Chrome 95.0.4638.69 for Windows - Filehippo.com 禁用chrome的自动更新 打开文件所在位置 点击Google文件夹 右键up…...

java html转word、pdf(包含图片)

html转word maven依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.14</version> </dependency> <dependency><groupId>org.jsoup</groupId><artifactId>…...

不容易解的题10.10

5.最长回文子串 5. 最长回文子串 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/longest-palindromic-substring/?envTypelist&envIdZCa7r67M给一个字符串&#xff0c;让我们找最长回文子串 这题不用说&#xff0c;回文子串那一定是连续的&#…...

淘宝天猫店铺所有商品数据接口,淘宝API接口

获取淘宝店铺所有商品数据接口的步骤如下&#xff1a; 获取授权&#xff1a;使用 OAuth 2.0 协议对应用进行授权&#xff0c;以便能够访问店铺的商品信息。获取店铺信息&#xff1a;使用淘宝 API 的 taobao.shop.get 接口&#xff0c;传入店铺的 user_id 参数&#xff0c;获取…...

Nestia:基于TypeScript编译时分析的NestJS端到端类型安全实践

1. 项目概述&#xff1a;当NestJS遇上TypeScript的极致类型安全如果你正在用NestJS开发后端API&#xff0c;并且对TypeScript的类型安全有近乎偏执的追求&#xff0c;那么你很可能已经听说过&#xff0c;或者正在寻找一个能让你“写一次&#xff0c;安全两次”的工具。我说的“…...

终极指南:3步实现PotPlayer实时字幕翻译,外语视频无障碍观看

终极指南&#xff1a;3步实现PotPlayer实时字幕翻译&#xff0c;外语视频无障碍观看 【免费下载链接】PotPlayer_Subtitle_Translate_Baidu PotPlayer 字幕在线翻译插件 - 百度平台 项目地址: https://gitcode.com/gh_mirrors/po/PotPlayer_Subtitle_Translate_Baidu 还…...

设计师速存!Midjourney未公开的风格隐藏开关:--style raw、--s 750、--no texture三者协同作用的神经渲染原理(GPU显存占用下降41%实测)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;设计师速存&#xff01;Midjourney未公开的风格隐藏开关&#xff1a;--style raw、--s 750、--no texture三者协同作用的神经渲染原理&#xff08;GPU显存占用下降41%实测&#xff09; Midjourney v6.1…...

Midjourney像素艺术提示词工程:98%新手忽略的4个隐藏权重指令,实测提升风格还原度320%

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Midjourney像素艺术提示词工程的底层逻辑重构 像素艺术在 Midjourney 中并非天然适配的生成模态&#xff0c;其高精度、低分辨率、强风格约束的特性与扩散模型默认的连续性渲染范式存在根本张力。要实现…...

AI智能体任务控制中心:构建可管理复杂项目的协作框架

1. 项目概述&#xff1a;为智能体装上“任务控制中心” 最近在折腾AI智能体&#xff08;Agent&#xff09;开发的朋友&#xff0c;可能都遇到过这样的场景&#xff1a;你精心设计了一个能联网搜索、处理文档、调用API的智能体&#xff0c;它单次任务的表现堪称完美。但当你试图…...

ARM处理器仿真技术:Cortex-R52与Neoverse实战解析

1. ARM处理器仿真技术概述在现代芯片设计和软件开发流程中&#xff0c;处理器仿真模型已成为不可或缺的关键工具。作为Arm生态系统的重要组成部分&#xff0c;Iris仿真组件提供了对Cortex-R52和Neoverse系列处理器的精确模拟能力。这些模型不仅能够模拟指令执行流程&#xff0c…...

DIY热熔螺母压入装置:从原理到实践,解决3D打印螺纹连接痛点

1. 项目概述&#xff1a;为什么我们需要一台热熔螺母压入装置&#xff1f;如果你和我一样&#xff0c;是个热衷于用3D打印制作原型、工具甚至小批量功能件的爱好者&#xff0c;那你一定遇到过这个痛点&#xff1a;如何在塑料件上实现一个坚固、耐用且能反复拆装的螺纹连接&…...

基于PWM舵机与NeoPixel的万圣节互动蝙蝠制作全解析

1. 项目概述&#xff1a;一个会动的万圣节蝙蝠又快到万圣节了&#xff0c;想给家里的装饰来点不一样的“活物”吗&#xff1f;每年都摆静态的南瓜灯和蜘蛛网&#xff0c;总觉得少了点气氛。今年我琢磨着&#xff0c;不如自己动手做一个能扑腾翅膀、眼睛还会发光的机械蝙蝠&…...

【c++面向对象编程】第24篇:类型转换运算符:自定义隐式转换与explicit

目录 一、一个自然的想法 二、类型转换运算符的基本语法 写法 使用 三、隐式转换的风险 问题1&#xff1a;意外的不希望发生的转换 问题2&#xff1a;多个转换路径的歧义 问题3&#xff1a;与构造函数隐式转换叠加导致混乱 四、explicit&#xff1a;禁止隐式转换 语法…...

基于xclaude-plugin框架的Claude自定义插件开发实战指南

1. 项目概述&#xff1a;Claude插件生态的“瑞士军刀”如果你最近在深度使用Claude&#xff0c;尤其是Claude Desktop应用&#xff0c;那你大概率已经感受到了插件生态的潜力与混乱。官方插件商店虽然方便&#xff0c;但总有些特定需求找不到现成的解决方案&#xff0c;或者找到…...