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

本系列为使用野火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一下百度的网址:
在这里插入图片描述
说明成功联网。

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

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

相关文章

44、echarts图形自动轮播tooltip提示,并显示高亮

自动轮播方法 参数myChart代表echarts的实例名称, options指定图表的配置项和数据, num类目数量(原因:循环时达到最大值后,使其从头开始循环), time轮播间隔时长 //自动轮播显示高亮--tooltip提示 export function autoHover(myChart, option, num, ti…

Linux操作系统使用及C高级编程-D6-D8Linux shell脚本

利用shell命令写的脚本文件,后缀是.sh shell脚本是一个解释型语言,不需要编译,可直接执行 书写:vi test.sh #!/bin/bash:说明使用的是/bin目录下的bash 说明完后即可编写脚本文件 bash test.sh:运行文…

python 就是随便玩玩,生成gif图,生成汉字图片,超级简单

文章目录 主方法调用LetterDrawingWordDoingImage 上图 你也想玩的话,可以直接上码云去看 码云链接 主方法调用 import analysisdata.WordDoingImage as WordDoingImage import analysisdata.LetterDrawing as LetterDrawingif __name__ __main__:# 输入的文本&a…

编程刷题网站以及实用型网站推荐

1、牛客网在线编程 牛客网在线编程https://www.nowcoder.com/exam/oj?page1&tab%E8%AF%AD%E6%B3%95%E7%AF%87&topicId220 2、力扣 力扣https://leetcode.cn/problemset/all/ 3、练码 练码https://www.lintcode.com/ 4、PTA | 程序设计类实验辅助教学平台 PTA | 程…

Decoder-Only、Encoder-Only和Encoder-Decoder架构的模型区别、优缺点以及使用其架构的模型示例

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

Ajax基础(应用场景|jquery实现Ajax|注意事项)

文章目录 一、Ajax简介二、基于jquery实现Ajax三、使用Ajax注意的问题1.Ajax不要与form表单同时提交2.后端响应格式问题3、使用了Ajax作为请求后的注意事项 一、Ajax简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”。…

LongAdder功能和原理

AtomicLong能保证并发情况下计数的准确性,其内部通过CAS来解决并发安全性的问题。 AtomicLong的缺点: 可以看到在高并发情况下,当有大量线程同时去更新一个变量,任意一个时间点只有一个线程能够成功,绝大部分的线程在尝…

【并发编程】Synchronized的使用

📫作者简介:小明java问道之路,2022年度博客之星全国TOP3,专注于后端、中间件、计算机底层、架构设计演进与稳定性建设优化,文章内容兼具广度、深度、大厂技术方案,对待技术喜欢推理加验证,就职于…

K8S基础笔记

1、namespace 名称空间用来对集群资源进行隔离划分,默认只隔离资源,不隔离网络k8s默认的名称空间为default 查看k8s的所有命名空间 kubectl get namespace 或者 kubectl get ns 创建名称空间 kubectl create ns 名称 或使用yaml方式 编写yamlkub…

【计算机视觉】24-Object Detection

文章目录 24-Object Detection1. Introduction2. Methods2.1 Sliding Window2.2 R-CNN: Region-Based CNN2.3 Fast R-CNN2.4 Faster R-CNN: Learnable Region Proposals2.5 Results of objects detection 3. SummaryReference 24-Object Detection 1. Introduction Task Defin…

Java code auditing

1) FindBugs Checkstyle PMD 2) OWASP ZAP Burp Suite (XSS漏洞) 3) SQL注入

力扣-414.第三大的数(两种解法)

文章目录 第三大的数解法一(排序加遍历对比)解法二(遍历一遍加迭代) 第三大的数 题目: 给你一个非空数组,返回此数组中第三大的数 。如果不存在,则返回数组中最大的数。 示例 1: 输…

Python---函数的嵌套(一个函数里面又调用了另外一个函数)

函数嵌套调用------就是一个函数里面又调用了另外一个函数。 基本语法: # 定义 函数B def funcB():print(这是funcB函数的函数体部分...)# 定义 函数A def funcA():print(- * 80) # 这一行为了更好区分print(这是funcA函数的函数体部分...)# 假设我们在调用funcA…

HDD与QLC SSD深度对比:功耗与存储密度的终极较量

在当今数据世界中,存储设备的选择对于整体系统性能和能耗有着至关重要的影响。硬盘HDD和大容量QLC SSD是两种主流的存储设备,而它们在功耗方面的表现是许多用户关注的焦点。 扩展阅读: 1.面对SSD的步步紧逼,HDD依然奋斗不息 2.…

OceanBase 4.2.1 LTS 发版 | 一体化数据库首个长期支持版本

在刚刚结束的年度发布会上,OceanBase 沿着“一体化”产品战略思路,发布了一体化数据库的首个长期支持版本 4.2.1 LTS。作为 4.0 系列的第一个 LTS 版本,该版本的定位是支撑客户关键业务稳定长久运行,我们非常认真的打磨了这个版本…

【Python】给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200

2、问题描述 给定一个长度为n的数列&#xff0c;将这个数列按从小到大的顺序排列。1<n<200 样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9 n int(input()) a list(map(int,input().split())) a.sort() for i in a:print(i,end ) 运行结果&#xff1a;

AIGC 技术在淘淘秀场景的探索与实践

本文介绍了AIGC相关领域的爆发式增长&#xff0c;并探讨了淘宝秀秀(AI买家秀)的设计思路和技术方案。文章涵盖了图像生成、仿真形象生成和换背景方案&#xff0c;以及模型流程串联等关键技术。 文章还介绍了淘淘秀的使用流程和遇到的问题及处理方法。最后&#xff0c;文章展望…

云桌面 node_modules 切换艰辛历程记录 rebuild失败记录

拿到node_modules后更换 执行npm rebuild 重新构建 报错 node版本不一致 nvm切换 版本 不成功 换个窗口又变回原来版本号了 设置默认版本 nvm alias default 14.16.1 发现下面还有一个stable的还指向原来版本 nvm alias stable 14.16.1 rebuild 还是失败 逐个rebuild 每个依赖单…

视频转码方法:多种格式视频批量转FLV视频的技巧

随着互联网的发展&#xff0c;视频已成为日常生活中不可或缺的一部分。然而&#xff0c;不同的视频格式可能适用于不同的设备和平台&#xff0c;因此需要进行转码。在转码之前&#xff0c;要了解各种视频格式的特点和适用场景。常见的视频格式包括MP4、AVI、MKV、FLV等。其中&a…

Selenium安装WebDriver最新Chrome驱动(含116/117/118/119)

&#x1f4e2;专注于分享软件测试干货内容&#xff0c;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01;&#x1f4e2;交流讨论&#xff1a;欢迎加入我们一起学习&#xff01;&#x1f4e2;资源分享&#xff1a;耗时200小时精选的「软件测试」资…