I.MX6ULL开发笔记(一)——环境搭建、镜像烧录、网络连接

news2024/9/20 6:31:59

本系列为使用野火IMX6ULL开发的学习笔记,使用的开发板为如下:
在这里插入图片描述
具有的硬件资源有如下:
在这里插入图片描述

文章目录

    • 一、环境搭建
      • Win11安装WSL
      • 安装串口驱动
      • 安装串口工具
      • 安装Ubuntu与windows文件互传
    • 二、镜像烧录
      • 修改串口终端登录前信息
    • 三、fire-config工具配置
      • EMMC/NAND FLASH刷机
    • 四、WIFI连接

一、环境搭建

Win11安装WSL

https://blog.csdn.net/weixin_44301630/article/details/122390018

安装虚拟机也可以,需要安装一个Ubuntu系统。直接在微软商城中搜索ubuntu20.04

安装串口驱动

  • CH340(波特率115200)

    https://www.wch.cn/products/CH340.html

安装串口工具

在 Windows 下有很多种终端工具,例如 MobaXterm、secureCRT、xShell、Putty 等,但是最推荐的还是MobaXterm:

  • MobaXterm:https://mobaxterm.mobatek.net/download.html

安装Ubuntu与windows文件互传

  • FileZilla下载地址:https://www.filezilla.cn/download

  • 开启Ubuntu下的FTP服务:sudo apt-get install vsftpd

  • 等待软件自动安装,安装后打开配置文件:sudo vi /etc/vsftpd.conf

  • 打开 vsftpd.conf 文件以后找到如下两行,输入i进行编辑,按下Esc,输入“:和wq”保存:

    local_enable=YES
    write_enable=YES
    

    在这里插入图片描述
    确保上面两行不能注释,把他打开:
    在这里插入图片描述

  • 使用如下命令重启FTP服务:

    sudo /etc/init.d/vsftpd restart

  • 使用FileZillla连接到Ubuntu的FTP服务器:
    在这里插入图片描述
    在这里插入图片描述

二、镜像烧录

  • 准备一张Micro SD卡,容量需要2GB以上。
  • 下载 Etcher 软件,用于烧录镜像至 SD 卡,下载地址:https://www.balena.io/etcher ,根据自 己的电脑系统下载对应版本即可。
  • 下载野火最新的 Debian 镜像:https://pan.baidu.com/s/1pqVHVIdY97VApz-rVVa8pQ 提取码:uge1

imx6ull-lubancat-carp-console-armhf-2022-02-10.img.xz: Debian的纯净版固件,没有带桌面环境和野火的QT App。
imx6ull-lubancat-carp-qt-armhf-2022-02-10.img.xz: 具有QT App功能的Debian固件,系统启动后会进入QT App的界面。

  • 把开发板控制启动模式的 BOOT 拨码开关设置成 SD 卡启动模式,即 2-5-8 档位至 ON 档。
  • 给开发板接入烧录好的 SD 卡,启动运行。

注意:开发板插入烧录好 Debian 镜像的 SD 卡,调整拨码开关为 SD 卡启动方式,然后注意使用 SD 卡时开发板右下角的 J2 竖排针不要盖有跳帽需断开(此为 WIFI 模块供电,核心板只引出一路 SDIO,SD 卡和 WIFI 不能同时用);开发板第一次从 SD 卡启动时,系统会自动进行 SD 卡扩容,以保证充分利用 SD 卡存储空 间。扩容完毕后,系统自动重启生效。
在这里插入图片描述
插入SD卡,烧录完后即可登录:

普通用户(带 sudo 权限):

账户: debian
密码: temppwd

ROOT用户:

账户: root
密码: root

在这里插入图片描述

这样即可登录。可以使用passwd来进行对密码的修改。

使用 SSH 终端登录时,可以通过主机名和 IP 连接板子:

主机名: npi
IP 不固定,默认由路由动态分配,可先通过串口终端连接,使用 ifconfig 命令查看具体 IP

若要修改主机名,修改 /etc/hostname 文件中的内容即可。

修改串口终端登录前信息

希望登录串口终端时不显示账号密码信息,或者显示我们需要的信息:

sudo vim /etc/issue ,如果没有vim工具,可以使用nano。

三、fire-config工具配置

sudo fire-config可以进行使用,只可以用在野火最新的debian系统上。(这个功能类似于Nuttx操作系统下的那个菜单栏,把很多通讯设备等都注册为可在菜单上选中并且执行的设备)。

在这里插入图片描述

fire-config工具集成了Device Tree Overlays机制,用来管理一些硬件资源的分配和模块的加载, 从而缓解多个驱动程序争用系统资源的问题。

在传统开发模式中,这个机制通常是由设备树来完成的:在开发之前根据项目需求, 提前确定系统中所有用到的硬件设备。在设备树中把所有的外围设备信息以设备树特定的语法进行描述, 在设备树被编译为dtb文件后,被linux内核加载使用。

可以看到,在传统开发过程,一旦硬件资源发生变化,就要重新修改、编译、下载设备树。比较极端的情况是: 当项目中要支持多种的硬件模块,而不同模块间往往会共用某些系统资源(如IO引脚)。 一旦系统要兼容模块任意组合使用,那么随着模块数量增加,需要编译的设备树数量将爆炸增长。

因此,使用传统设备树是不利于项目的维护和扩展的。内核为了解决这个提出了一套新的解决方案, 那就是Device Tree Overlays,中文上可理解为“设备树插件”。 它的核心原理是,通过扩展传统的设备树语法,使得各个硬件模块的信息可以独立地用新的设备树语法来描述。 这样一来,传统的主设备树中只需要保留最基础的硬件信息(主要是cpu和内存),其他模块单独编译成“设备树插件”。 在系统实际使用时,根据实际应用情景,需要用到哪些硬件模块就把对应的设备树插件加入到主设备树即可。

EMMC/NAND FLASH刷机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
之后重启开发板即可。

在这里插入图片描述
在这里插入图片描述
等待一段时间即可。登录进去后,需要关闭SD卡刷机选项:

在这里插入图片描述

在这里插入图片描述
之后执行sudo poweroff关机。之后更改开发板的启动方式为EMMC启动,拨码到2457位,然后拆卸SD卡,然后长按ON/OFF键进行开机。

四、WIFI连接

由于SD卡与WIFI共用同一个sdio接口,所以我们需要把跳帽挪动到原来的地方,给WiFi模块供电:
在这里插入图片描述
使用fire-config工具来进行配置WiFi:
在这里插入图片描述
可以使用命令sudo echo "1 4 1 7" > /proc/sys/kernel/printk来屏蔽掉一些没有用的打印。之后打开WiFi:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

再次重启:
在这里插入图片描述
重启后可以看到WiFi设备被打开了:
在这里插入图片描述
之后让其识别周围的WiFi:
在这里插入图片描述
在这里插入图片描述
之后进入查找:
在这里插入图片描述如果遇到查找到的WiFi较少,可以将天线的位置进行调整,不要压着天线。

在这里插入图片描述
signal代表WiFi强度,越靠前数字越小代表信号强度越高。之后进行WiFi连接:
在这里插入图片描述
在这里插入图片描述
之后输入对应的密码:
在这里插入图片描述
之后再次进行重启,会自动连接上WiFi:
在这里插入图片描述
使用命令ifconfig,可以看到我们连接的WiFi信息:
在这里插入图片描述
之后ping一下百度的网址:
在这里插入图片描述
说明成功联网。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Python】给定n个十六进制正整数,输出它们对应的八进制数。

3.问题描述 给定n个十六进制正整数&#xff0c;输出它们对应的八进制数。 样例输入 2 39 123ABC 样例输出 71 4435274 n int(input()) li [] # 创建列表 for i in range(n):li.append(input()) # 输入数据 for num in li:if len(num) < 100000: # 判断长度是否符…

HTTP四种请求方式,状态码,请求和响应报文

1.get请求 一般用于获取数据请求参数在URL后面请求参数的大小有限制 2.post请求 一般用于修改数据提交的数据在请求体中提交数据的大小没有限制 3.put请求 一般用于添加数据 4.delete请求 一般用于删除数据 5.一次完整的http请求过程 域名解析&#xff1a;使用DNS协议…

记录下学的性能优化

一、性能优化的指标和工具 1.1 谷歌浏览器 拿淘宝网站为例,可以看到当前网页的加载信息 这个是瀑布图,瀑布图有横向和纵向 横向是具体的加载数据,悬浮看详情列表,可以看出下载时最后一个步骤,在这之前会先排队,浏览器会对优先级进行安排,它会对高优先级的请求优先请求.然后通…

力扣刷题-二叉树-二叉树的高度与深度

二叉树最大深度 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3 递归法 本题可以使用前序&#xff08;中左…

MindNode v5.0.1(思维导图软件)

思维导图软件哪个比较好呢&#xff1f;MindNode for mac一款功能简单&#xff0c;界面简洁&#xff0c;不用看教程都会用的思维导图软件。mindnode mac可随时随地记录自己的想法&#xff0c;让您从灵感入手&#xff0c;将奇思妙想铺陈在画布上&#xff0c;让一切井井有条。 Mi…

【Echarts】Echarts在不同屏幕分辨率下不同配置

目录 1、图表横坐标&#xff1a;分辨率低的情况下&#xff0c;刻度标签旋转的角度&#xff0c;在类目轴的类目标签显示不下的时候可以通过旋转防止标签之间重叠。2、图表图例&#xff1a;在 legend 文字超过6个字的时候对文字做裁剪并且开启 tooltip 参考文章&#xff1a;1、使…

C盘每次开机都会减少空间

如果C盘在没有安装任何大型软件的情况下&#xff0c;每次开机都会大幅度压缩C盘空间&#xff0c;这是由于电脑睡眠文件导致的&#xff0c;只需要一行命令即可&#xff1b; 以管理员身份打开命令提示符窗口&#xff01; 然后输入 powercfg -h off ok&#xff0c;马上就好了。…

MQ和redis的内部原理一些总结

首先&#xff0c;先知道内部原理&#xff1b;其次&#xff0c;就是查官方文档实战了。 但是如果不熟悉内部原理&#xff0c;那么仅仅只是安装官方文档&#xff0c;并不能排除跟踪问题和故障、预防风险等策略&#xff1b; 以下总结图解&#xff1a;&#xff08;mysql 8.0新增的…

CAPL编程 - 事件驱动

1 事件概述 CAPL是一种面向过程、由事件驱动的类C语言。 事件驱动针对于顺序执行&#xff0c;其区别如下&#xff1a; 顺序执行&#xff1a;顺序执行流程中&#xff0c;子例程或过程函数按照代码编写顺序逐句执行。 事件驱动&#xff1a;CAPL程序由事件驱动&#xff0c;工程…

安装R和Rstudio

目录 一、安装R 二、安装Rstudio 一、安装R R官网&#xff1a;官网链接 点击CRAN 选择一个镜像 我用的winows&#xff0c;所以我选择 download R for windows 进去之后选择 base 点击下载 找到刚才下载的可执行文件&#xff0c;安装 选择语言 下一步 选择一个位置安装 下一…

数据保密新标杆:迅软DSE企业防泄密系统为企业安全保驾护航

由于目前数据安全防护边界越来越大&#xff0c;企业面临的内部安全风险正在快速增长&#xff1b;企业内部安全防护体系和管理制度一旦有所缺失&#xff0c;就会造成严重的数据泄露安全事故。面对互联网泄密事件层出不穷&#xff0c;企业管理者们对于企业数据安全管理如何落实到…

React 中 react-i18next 切换语言( 项目国际化 )

背景 平时中会遇到需求&#xff0c;就是切换语言&#xff0c;语种等。其实总的来说都是用i18n来实现的 思路 首先在项目中安装i18n插件&#xff0c;然后将插件引入到项目&#xff0c;然后配置语言包&#xff08;语言包需要你自己来进行配置&#xff0c;自己编写语言包&#xff…

【C++上层应用】2. 预处理器

文章目录 【 1. #define 预处理 】【 2. #ifdef、#if 条件编译 】2.1 #ifdef2.2 #if2.3 实例 【 3. # 和 ## 预处理 】3.1 # 替换预处理3.2 ## 连接预处理 【 4. 预定义宏 】 预处理器是一些指令&#xff0c;指示编译器在实际编译之前所需完成的预处理。 所有的预处理器指令都是…

Chat GPT 用于论文润色,常用指令这里都全了

ChatGPT在多个方面对科研人员提供帮助&#xff0c;其中之一就是SCI论文润色&#xff0c;通过输入论文的摘要、引言或者段落&#xff0c;科研人员可获得ChatGPT生成的回复&#xff0c;包括修改建议、语法纠正、表达方式优化等。 指令润色 比如&#xff1a; 请帮我润色论文&am…

我叫:插入排序【JAVA】

1.自我介绍 插入式排序属于内部排序法,是对于欲排序的元素以插入的方式找寻该元素的适当位置&#xff0c;以达到排序的目的。 2.继承我的思想 插入排序(Insertion Sorting)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包…

SSD主控

《深入浅出SSD》学习中… 文章目录 《深入浅出SSD》学习中.....一、SSD主控二、PCIe和NVMe控制器前端子系统1.PCIe控制器2.NVMe控制器 一、SSD主控 就是类似电脑CPU的东西&#xff0c;在SSD中收取处理Host端的命令&#xff0c;管理NAND闪存 二、PCIe和NVMe控制器前端子系统 主…

2024中国人民大学计算机考研分析

24计算机考研|上岸指南 中国人民大学 中国人民大学计算机考研招生学院是信息学院。目前均已出拟录取名单。 中国人民大学在1978年创立了经济信息管理系&#xff0c;它是国内最早建立的将数学与信息技术在经济管理领域应用为特色的系科。1986年&#xff0c;在原系计算站的基础…

[计算机网络]网络层概述

呼,写了这么久终于重新开始啦! 自己落下了太多东西了.....是时候应该重新拾掇起来了. 关于后面的代码项目,我的想法是vilas.js仍然使用js来进行编写,但是后续其他的项目会开始尝试使用ts来进行书写了. 就算是前端也需要点规范吧..... 0.写在前面 这篇文章要和大家道个歉,首…

Flutter 使用 device_info_plus 遇到的问题

问题&#xff1a;引用device_info_plus 插件出现了异常&#xff0c;不知道为啥打开项目的时候就不能用了。 解决&#xff1a;改了版本解决 Target of URI doesnt exist: package:device_info_plus/device_info_plus.dart. (Documentation) Try creating the file reference…

每天学习一点点之 Spring Web MVC 之抽象 HandlerInterceptor 实现常用功能(限流、权限等)

背景 这里介绍一下本文的背景&#xff08;废话&#xff0c;可跳过&#xff09;。上周有个我们服务的调用方反馈某个接口调用失败率很高&#xff0c;排查了一下&#xff0c;发现是因为这个接口被我之前写的一个限流器给拦截了&#xff0c;随着我们的服务接入了 Sentinel&#x…