【Orangepi Zero2 全志H616】开发板资料(刷机、系统烧录)及环境搭建

news2024/11/25 3:01:19

一、资料文档
二、MobaXterm远程连接工具
三、修改登录密码
四、修改内核日志等级
五、配置网络
六、SSH 访问 OrangePi ZERO 2
七、配置 vim
八、基于官方外设开发SDK

一、资料文档

官网资料下载
GitHub:新版本的 orangepi-build 源码
环境搭建:新手配置教程

二、MobaXterm远程连接工具

打开 MobaXterm ,单击左上的图标Session。
在这里插入图片描述
在随后弹窗中,单击Serial按钮。然后会切换到串口设置界面,在Serial port右边的下拉窗口在,找到并选择COM9,这个就是刚刚插入电脑 USB 的 USB 转 TTL 模块的 COM 口。接着选择波特率,单击Speed (bps)的 下拉按钮,选择 115200 的波特率,然后单击OK按钮,完成串口通信设置。
在这里插入图片描述
接下来给 OrangePi ZERO 2 上电,就可以看到 OrangePi ZERO 2 启动的过程了。不过这还不是完整的启动过程,后面可以通过修改配置文件把启动过程的 Log 打印完整。
在这里插入图片描述

如果到了下图这个界面,也就是终端软件最后一行显示“orangepizero2 login: ”,就可以输入账户和密码了。

账户:orangepi

密码:orangepi

输入用户名后回车再输入密码,注意,输入用户名会在终端显示,但是输入密码不会在终端显示,且不显示已经输入了多少位,所以新手输入密码时,最好是慢慢地、一个一个字母地敲,输入密码后再按回车键,就完成登录了。
在这里插入图片描述
登录完成后,就如下图所示,接下来就可以做下一步操作了。

三、修改登录密码

由于默认的密码较长,且在输入时不显示,所以很难避免输入错误又要重新输入的尴尬情况,我们可以使用下面的命令来修改登录时的密码。

sudo passwd orangepi

这里使用了 sudo 指令,sudo 是 Linux 系统管理指令,是允许系统管理员让普通用户执行一些或者全部的 root 命令的一个工具。只要带有 sudo 的命令,都需要输入一次登录密码,和登录时一样,输入密码时不显示,如果前面已经输入过一次密码。第二次执行带有 sudo 的命令就不需要再输入密码了。

我这里把密码改成 123,输入后回车,再一次输入密码 123 ,按下回车键就完成了密码的更改
在这里插入图片描述
当然了,小伙伴们也可以根据自己的喜好设置自己的密码。

我们可以重启 OrangePi ZERO 2 来试一下新密码,输入下面的命令就可以重启 OrangePi ZERO 2。

sudo reboot

重启后,账户还是 orangepi, 密码只需要输入 123 后回车,即可登录。

四、修改内核日志等级

这一步并不是必要的,不过可以提前知道一些 Linux 系统的知识,这里说明一下怎么才能系统启动的 Log 完整输出,可以用 Vim 修改 OrangePi ZERO 2 的/boot/orangepiEnv.txt文件中的系统配置。输入下面这条命令进如刀文件中进行修改:

sudo vim /boot/orangepiEnv.txt

进入到/boot/orangepiEnv.txt文件后,可以看到这些内容。
在这里插入图片描述
第一行的verbosity就是用于控制日志输出详细程度等级的参数(也就是 Linux 系统的 log level)。其中 1 是 Linux 系统默认的 log level 等级,内核输出的 log 基本全部屏蔽了,这也是为什么开机时打印的 log 不像树莓派那么多的原因。当 Linux 系统启动出现问题时,我们是希望可以看到更多的 log 信息到串口显示,这样也方便调试和排查问题,可以直接把上面的 1 改成 7,7 是 log level 的最高级。
具体操作:

  1. 按i键进入编辑模式;
  2. 移动光标到数字后面,按Backspace键删掉 1,输入 7;
  3. 按Esc键退出编辑模式,输入“:x”或者“:wq”,保存退出文件。
    想要了解更多关于 Linux kernel log levels 的小伙伴可以看这篇文章 《Introduction to the Linux kernel log levels》,写的非常详细。

修改好后可以重启看看效果,如下图。
在这里插入图片描述
其他配置简单说一下,bootlogo是控制开机 logo 是否显示,默认是false,也就是不显示,感兴趣的可以改成true看看效果。console是控制台接口,默认值both是指同时使用了串口和网络作为控制台接口,只使用串口可以改成serial。disp_mode设置了显示分辨率和刷新率,默认的 1920 × 1080 的分辨率和 60 Hz 的刷新率,这个参数只有在使用图像桌面的时候才有效。其他参数暂时不做介绍,毕竟后期也用不到。

五、配置网络

1. 网络连接方法

目前 OrangePi ZERO 2 还没有连接网络,暂时没办法进行软件更新和下载新软件,也无法通过网络的方式访问 OrangePi ZERO 2,我们可以通过下面的命令来查看当前 OrangePi ZERO 2 的网络连接情况。

ifconfig

该命令是 Linux 中用于显示或配置网络设备(网络接口卡)的命令,英文全称是 network interfaces configuring。输入该命令回车后,OrangePi ZERO 2 显示了 eth0、lo 和 wlan0 的连接情况,出来 lo 有个回环地址之外,其他两个都是看不懂的字符,其实就是没有连接网络的意思。
在这里插入图片描述
下面介绍一下两种连接网络的方式。

1-1. 方法一:网线直连

eth0 是 OrangePi ZERO 2 的第一块网卡,用网线(前提是有网)直接插入 OrangePi ZERO 2 的 RJ-45 接口,就是我们俗称的网口,就可以连接网络了。
请添加图片描述
稍等几秒钟,再次输入ifconfig命令,就可以看到同一个局域网下的网络 IP 了。

我这里显示的 IP 是 192.168.31.72,不同的局域网的 IP 都是有所差异的,只要和电脑的 IP 是同一局域网,都是可以访问到的。
在这里插入图片描述
可以在自己电脑上按下键盘的组合键 Win + r,在弹窗的弹窗中输入 cmd 或者 powershell 都可以,然后回车进入电脑的命令行窗口,输入 ipconfig(Windows 的命令和 Linux 的命令还是有点区别的)回车,就可以看到自己本地的 IP 地址了。

我的电脑 IP 是192.168.1.145,和 OrangePi ZERO 2 当前的 IP 都是同属局域网 192.168.1. 这个网段。

1-2. 方法二:WiFi 连接

绝大多数小伙伴可能没有多余的网线,所以无线局域网连接才是大多数人的选择。这里有两个需要大家注意的点,已经有不少小伙伴在踩坑了。列举如下:

请不要通过修改/etc/network/interfaces配置文件的方式来连接 WiFi,通过这种方式连接 WiFi 网络使用会有问题。
在没有使用 SSH 登录的时候,使用nmtui命令配置 WiFi 时,在某些远程终端软件(例如 minicom)只能显示字符,无法正常显示图形界面。
结合以上两点,用终端命令行的方式配置 WiFi 最符合所有人群的要求,下面是具体操作:

首先输入下面的命令,用于扫描周围的 WiFi 热点。当然了,如果不想查看,想要直接连接 WiFi,可以直接跳过这一步。

nmcli dev wifi

之后会在终端打出周围所有可以连接的 wifi 热点,按方向键上下可以查看显示更多,按q键退出。
在这里插入图片描述
然后同样使用nmcli命令连接 WiFi 热点,其中wifi_name是想要连接的 WiFi 热点的名字,wifi_passwd是想要连接的 WiFi 热点的密码。

nmcli dev wifi connect "wifi_name" password "wifi_passwd"

例如,我这里用的 WiFi 热点名字是 YXS1302,密码是 YuanXueShe1302,那我连接的命令就是:

nmcli dev wifi connect YXS1302 password YuanXueShe1302

在这里插入图片描述

连接成功后会显示下图。
在这里插入图片描述
然后输入sudo reboot重启树莓派,树莓派重启登录后,再次输入ifconfig就可以看到成功连上 WiFi,并获得 IP 地址了。可以看到当前的无线局域网的 IP 地址是 192.168.31.248。顺带提一嘴,夹在 eth0 和 wlan0 中间的 lo,这是本地回环接口(Local Loopback),一般用于本机内部通信,并不真实地从外界接收和发送数据包。

ifconfig
ip addr show wlan0

在这里插入图片描述

2. 设置静态 IP(固定 IP 地址)【注意:按情况来】

固定 OrangePi ZERO 2 的 IP 地址是为了每次都能正确的访问登录到 OrangePi ZERO 2,毕竟 IP 地址是由路由器开启了 DHCP(动态主机配置协议)分配的,OrangePi ZERO 2 的 IP 地址有可能存在变动(尤其是 wlan0),导致电脑访问不到 OrangePi ZERO 2 的尴尬局面。

由于设置静态 IP 要用到nmtui命令,所以对于不是使用 MobaXterm 这个终端软件的小伙伴,可以先跳过这个步骤,先去实现 SSH 登录,再回过头来设置静态 IP。当然也可以先尝试,因为目前还没统计有哪些终端软件不能正常使用nmtui命令,万一可以出现图形界面,那就是可以正常使用了。

设置静态 IP 的前置条件是,我们需要先知道局域网的默认网关、子网掩码和 DNS 服务器分别是什么。可以先通过输入route -n这个命令来获得默认网关和子网掩码。

route -n

在这里插入图片描述
其中的Gateway的地址就是网关地址,都是 192.168.31.1,而Genmask为子网掩码,都是 255.255.255.0。由于 IPv4 地址是由 32 位二进制数构成的,其中前 24 位被用来表示网络部分,所以子网掩码 255.255.255.0 的网络部分占据了 24 位,那么在 IP 地址后面就要写 24。(一共四段,每段 8 个位,前三段都是 255,第四段是 0。255 转为二进制数是 8 个 1,三段 255 就有 24 个 1。)

而 DNS 服务器可以同过电脑连接同一个局域网后,在 cmd 或者 powershell 中输入ipconfig /all查看,我这里的 DNS 服务器为 192.168.222.2。

ipconfig /all

在这里插入图片描述
下面是设置静态 IP 的具体步骤,先运行nmtui命令,进入NetworkManager TUI界面,选择第一项Edit a connection回车。

nmtui

在这里插入图片描述
这时就会切换到已经连接的网络的界面,Ethernet 表示网线直连的连接,另一个就不做解释了。方向键可以移动光标,先固定网线直连的 IP 地址,光标停留在Wired connection 1上,然后按两下Tab键,选择<Edit…>回车。
在这里插入图片描述
接着跳转到Edit Connection界面,按几次Tab键把光标移动到IPv4 CONFIGUARTION后面的Autimatic。
在这里插入图片描述
然后回车,弹出小菜单,按方向键选择Manual回车。
在这里插入图片描述
再按一下Tab键将光标移动到Show回车。

然后弹出如下界面。
在这里插入图片描述
具体设置如下,Addresses填下 eth0 的 IP 地址,然后加个“/”,再填上 24,这个 24 就是子网掩码。Gateway一栏填下默认网关。DNS servers就是 DNS 服务器了。按回车才能输入。
在这里插入图片描述
设置好后,一直按方向键到最下面,并把光标移到到右下角的OK上,然后回车。
在这里插入图片描述
回到上一级界面后,按Tab键选择回车。
在这里插入图片描述
回到再上一级界面后,先按方向键把光标放在Activate a connection上面,然后再按Tab键选择OK回车。
在这里插入图片描述
进入下级界面后,光标停在Wired connection 1上面,再按Tab键选择回车。这时,会变成。
在这里插入图片描述
然后请不要移动光标,再按下回车键重新使能Wired connection 1,这样前面设置的静态 IP 地址就会生效了。按Tab键选择回车。回到上一级界面后,先按下Tab跳出。接着用相同的办法把 wlan0 的 IP 也设置成静态 IP。由于方法是一样的,这里我就不过多赘述,简单地说一下可能会出错的地方。

首先是再NetworkManager TUI界面,选择第一项Edit a connection进去后,要选 Wi-Fi下面的选项。
在这里插入图片描述
然后是这里填写 IP 时,我改成了 192.168.31.174,前面显示 wlan0 的 IP 是 192.168.31.248,没啥特殊含义,就是为了看看有没有设置成功,小伙伴可以使用原来的静态 IP,因为修改成其他 IP 地址的前提,所写入的 IP 地址没有其他设备在使用,因为同一局域网下,不同设备之间不能使用同一个 IP 地址,我这里已经确定了我填入的这个没有设备在使用,所以可以写入。
在这里插入图片描述
都设置结束之后,退出NetworkManager TUI界面,在终端输入ifconfig查看当前网络情况,已经设置成功了。
在这里插入图片描述

六、SSH 访问 OrangePi ZERO 2

相较于树莓派来说,OrangePi ZERO 2 真的很方便,它的 SSH 服务器默认是打开的,所以可以直接用 SSH 远程访问。继续以 MobaXterm 为例,步骤如下:

  1. 单击左上的图标Session;
  2. 单击弹框中的SSH;
  3. 在Remote host中输入 IP 地址;
  4. 先把Specify username前面的复选框打上勾,再输入"orangepi";
  5. 单击OK按钮。

在这里插入图片描述
然后会提示输入密码,前面我们已经把密码改成 123 了,直接输入 123 回车。
在这里插入图片描述
之后就成功通过 SSH 服务器访问了 OrangePi ZERO 2。

现在就可以不使用串口来访问 OrangePi ZERO 2 了,可以拔出 USB 转 TTL 模块了。也不需要每次都进行上面的操作,MobaXterm 这个软件是可以存储曾经访问过的设备,就在左侧的“小星星”里面,每次只要双击需要链接的设备 IP 就可以自动连上(前提是设备已经开机了)。如果想要重命名,可以用下面的操作实现:

右键可以选择Edit session。
在这里插入图片描述
在弹窗的Bookmark setting选项卡中,可以重命名Session name和更换图标等等。
在这里插入图片描述
之后双击就可以自动连上了。

七、配置 vim

很多新手都是先在虚拟机上学习了 Linux 系统编程之后,其中也包括我,所以很多人都已经适应了 Linux 系统的 vim 编辑器了。当然也会根据自己的使用习惯和喜好,配置 vim,下面是我常用的配置,有些可以尝试配置一下。

命令行输入:

sudo vim /etc/vim/vimrc

vimrc是 vim 编辑器的配置文件,下滑到文件最后可以看到下面几个被注释的设置,我简单翻译了一下。
在这里插入图片描述
如果需要启用对应的功能,只需按i键进入编辑器模式,把前面的双引号去掉即可,如图所示。

也可以增加一些这里没有提到的功能,下面列举一些我常用的功能:

set number       #在每一行的前面显示行号
set cursorline   #在屏幕上显示光标所在的行
set tabstop=4    #设置制表符的宽度为4个空格
set laststatus=2 #在状态行的右侧显示最后一个状态
set ruler        #在屏幕的右下角显示光标的位置
set cindent      #开启 C 语言的缩进模式:

我也把以上全部内容都配置进去了。
在这里插入图片描述
配置好了之后,输入下面的命令:

source /etc/vim/vimrc

如果出现下图这种情况,可以直接忽视。
在这里插入图片描述
在这里插入图片描述

八、基于官方外设开发SDK

新版本的 orangepi-build 源码存放在 orangepi-build 仓库的 next 分支:
https://github.com/orangepi-xunlong/orangepi-build/tree/next

sudo apt update
sudo apt install git
git clone https://github.com/orangepi-xunlong/orangepi-build.git -b next

3.1 wiringPi外设SDK安装

git clone https://github.com/orangepi-xunlong/wiringOP 	//下载源码
cd wiringOP 											//进入文件夹
sudo ./build clean 										//清除编译信息
sudo ./build 											//编译

通过windows浏览器打开https://github.com/orangepi-xunlong/wiringOP
下载压缩包
把压缩包通过xterm传到开发板
解压 unzip xxx.zip
在这里插入图片描述

cd xxx
sudo ./build
gpio readall

验证指令: gpio readall
如下方所示,外设库就完成安装了
在这里插入图片描述

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

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

相关文章

IP协议汇总

IP协议 1.基本概念 IP协议全称为“网际互连协议&#xff08;Internet Protocol&#xff09;” ,IP协议是TCP/IP体系中的网络层协议。 总的来说&#xff0c;IP协议的最重要功能是提供了一种标准化的方式来路由和传输数据包&#xff0c;以实现全球互联网上的通信。 &#xff…

YOLOv7独家原创改进:新颖自研设计的BSAM注意力,基于CBAM升级

💡💡💡本文全网首发独家改进:提出新颖的注意力BSAM(BiLevel Spatial Attention Module),创新度极佳,适合科研创新,效果秒杀CBAM,Channel Attention+Spartial Attention升级为新颖的 BiLevel Attention+Spartial Attention 1)作为注意力BSAM使用; 推荐指数:…

数据结构构之顺序表

1.线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构&#xff0c;也就说是连续的一条直线…

【halcon踩坑】区域为空但个数是1

背景 我在做瑕疵检测的时候&#xff0c;通过计算瑕疵区域的个数&#xff08;count_obj&#xff08;&#xff09;&#xff09;是否为0&#xff0c;来判断是否有瑕疵&#xff0c;如果不为0&#xff0c;那边我就会在图片上标记这个瑕疵的位置&#xff01; 但是有一次我发现明明没…

山西电力市场日前价格预测【2023-11-05】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2023-11-05&#xff09;山西电力市场全天平均日前电价为192.40元/MWh。其中&#xff0c;最高日前电价为374.84元/MWh&#xff0c;预计出现在04:15。最低日前电价为0.00元/MWh&#xff0c;预计出…

史上最详细的八大排序讲解(错过绝对后悔系列)建议先收藏再观看!—— 数据结构

&#x1f636;‍&#x1f32b;️Take your time ! &#x1f636;‍&#x1f32b;️ &#x1f4a5;个人主页&#xff1a;&#x1f525;&#x1f525;&#x1f525;大魔王&#x1f525;&#x1f525;&#x1f525; &#x1f4a5;代码仓库&#xff1a;&#x1f525;&#x1f525;魔…

DB-GPT介绍

DB-GPT介绍 引言DB-GPT项目简介DB-GPT架构关键特性私域问答&数据处理多数据源&可视化自动化微调Multi-Agents&Plugins多模型支持与管理隐私安全支持数据源 子模块DB-GPT-Hub微调参考文献 引言 随着数据量的不断增长和数据分析的需求日益增多&#xff0c;将自然语言…

Docker 从 安装 到 配置 到 实战:手把手带你入门

文章目录 前言什么是docker&#xff1f;&#xff01;docker的作用是什么&#xff1f;&#xff01; 一、下载docker1.卸载docker2.安装yum环境3.更新yum本地软件源4.安装Docker&#xff08;参数ce&#xff1a;社区版&#xff09;5.Docker使用中会涉及到各种端口&#xff0c;为了…

为什么小程序做好了,却运营不起来?

​在小程序开发完成并投入市场后&#xff0c;许多商家发现小程序虽然做得很精美&#xff0c;但是却无法吸引到足够的用户&#xff0c;更谈不上留住用户了。那么&#xff0c;为什么小程序做好了却运营不起来呢&#xff1f;本文将就此问题进行探讨。 一、缺乏运营策略 很多商家在…

0002Java安卓程序设计-springboot合同管理APP论文

文章目录 摘 要目 录系统设计开发环境 摘 要 随着互联网趋势的到来&#xff0c;各行各业都在考虑利用互联网将自己推广出去&#xff0c;最好方式就是建立自己的互联网系统&#xff0c;并对其进行维护和管理。在现实运用中&#xff0c;应用软件的工作规则和开发步骤&#xff0c…

在Spring Boot中使用国产数据库连接池Druid

在我们实际开发过程中&#xff0c;我们经常使用的是DriverManager来获取&#xff0c;通过每次都向数据库建立连接时将Connection加载到内存中&#xff0c;然后验证用户名和密码&#xff0c;这段时间的消耗大致在0.0 5s - 1s左右&#xff0c;每次当我们需要获取数据库连接的时候…

“利用自动粘贴功能,一键粘贴网址,提升工作效率“

在快节奏的现代工作中&#xff0c;效率是关键。如果你经常需要复制和粘贴网址&#xff0c;那么你可能会浪费很多时间。幸运的是&#xff0c;我们的自动粘贴功能可以帮助你自动粘贴网址&#xff0c;一键即可完成&#xff0c;让你更加高效地工作。 首先&#xff0c; 我们要进入首…

操作系统复习(1)概述

一、序言 1.1简介 计算机系统组成&#xff1a;硬件操作系统 操作系统是计算机系统中的一个重要组成部分&#xff0c;它负责管理和控制计算机的硬件资源和软件资源&#xff0c;以及提供用户接口和其他功能 操作系统定义&#xff1a;操作系统是计算机系统中的一个系统软件&…

代码随想录算法训练营第23期day38|动态规划理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯

目录 一、动态规划理论基础 1.动态规划的解题步骤 2.动态规划应该如何debug 二、&#xff08;leetcode 509&#xff09;斐波那契数 1.递归解法 2.动态规划 1&#xff09;确定dp数组以及下标的含义 2&#xff09;确定递推公式 3&#xff09;dp数组如何初始化 4&#x…

PMIC、电源管理MAX77646ANP、MAX77647AANP、MAX77675AEWE、MAX77847AEWL DC-DC 开关稳压器

一、MAX77646ANP、MAX77647AANP 低IQ SIMO PMIC支持原电池应用的1.8V工作电压 MAX77646/MAX77647为尺寸和效率至关重要的低功耗应用提供电源解决方案。该IC集成单电感多输出(SIMO)降压/升压稳压器&#xff0c;可通过单个电感提供三个可独立编程的电源轨&#xff0c;尽可能地减…

PageRank算法c++实现

首先用邻接矩阵A表示从页面j到页面i的概率&#xff0c;然后根据公式生成转移概率矩阵 M&#xff08;1-d&#xff09;*Qd*A 常量矩阵Q(qi,j),qi,j1/n 给定点击概率d&#xff0c;等级值初始向量R0&#xff0c;迭代终止条件e&#xff1b; 计算Ri1M*R…

选哪个内衣洗衣机比较好?觉飞和希亦内衣洗衣机对比测评

如今&#xff0c;随着物质生活水平的不断提升&#xff0c;消费者更加追求健康、品质化的生活。而反映在衣物清洁上&#xff0c;诸如像贴身衣物的深度清洁、儿童和成人衣物的分洗等细分场景下的洗护需求也变得越来越多&#xff0c;内衣物洗衣机也因此应运而生。现在市面上关于内…

【RabbitMQ】RabbitMQ 消息的堆积问题 —— 使用惰性队列解决消息的堆积问题

文章目录 一、消息的堆积问题1.1 什么是消息的堆积问题1.2 消息堆积的解决思路 二、惰性队列解决消息堆积问题2.1 惰性队列和普通队列的区别2.2 惰性队列的声明方式2.3 演示惰性队列接收大量消息2.4 惰性队列的优缺点 一、消息的堆积问题 1.1 什么是消息的堆积问题 消息的堆积…

修复dinput8.dll文件的缺失,以及修复dinput8.dll文件时需要注意什么

dinput8.dll文件通常在使用大型游戏时容易出现dinput8.dll文件丢失的情况&#xff0c;今天这篇文章将要教大家修复dinput8.dll文件的缺失&#xff0c;同时在修复dinput8.dll文件时需要注意些什么&#xff1f;防止文件在修复的过程中出现其他的错误。 dinput8.dll是DirectInput库…

[自定义 Vue 组件] 小尾巴下拉菜单组件(2.0) TailDropDown

文章归档&#xff1a;https://www.yuque.com/u27599042/coding_star/kcoem6dgyn8drglb [自定义 Vue 组件] 下拉菜单(1.0) DropDownMenu&#xff1a;https://www.yuque.com/u27599042/coding_star/llltv52tchmatwg4 组件效果示例 组件所依赖的常量 在 src 目录下&#xff0c;创…