树莓派学习记录

news2024/11/20 14:17:34

一,型号

第一代Raspberry Pi 1 Model B

第一代升级版 Raspberry Pi 1 B+

第二代  Rasberry Pi 2 Model B

第三代及升级版 Rasberry Pi 3 Model B/B+

第四代  Rasberry Pi 4 Model B

Model A版

 比B版便宜

Zero 版

 售价更便宜

总结 

二,树莓派接口

 如下图4B树莓派所示,左侧最上方的两个接口为USB接口,最左侧最下方的比较大的接口为以太网接口(配备了两个信号灯来表示信号的状态)。蓝圈所示为耳机接口,让我们的音视频得以输出。在它的右边有一个摄像机模块的排线接口。黄圈所示为两个HDMI接口,可以将视频进行输出,支持4K视频输出,红圈所示为typec电源接口。板子下方有一排GPIO连接器(40针),可以方便链接各种各样的传感器,在其左边有四个小的针脚,它是支持POE供电的

 SD卡插在树莓派的背面,如下图所示

三,开机启动

1,外设准备

1,需要一个电源供电。下图所示充电器有一个开关,这可以使我们不需要对书没票的电源插口进行拔插,有利于延长树莓派使用寿命

 

2,SD卡和读卡器。用来存储树莓派的系统,建议8G以上 ,读卡器建议用高速的,这会直接影响树莓派的运行速度

3,带有USB接口的鼠标和键盘,显示屏(用HDMI线与树莓派之间进行连接)

2,烧录

1,使用官方的Rasberry Pi Imager。选择好系统烧录即可

2,自定义安装包,自由选择系统,详细的设置调整。使用如下烧录工具

3,连接外设

系统烧录完成之后就可以开始连接我们所有的外设 ,打开电源即可在显示屏上看到系统。

接线顺序:1,选连接显示屏HDMI到树莓派接口。2,连接电源线并通电

4,常见问题

  • 树莓派一直重启
  • 原因:电源供电问题。

解决方法:电源必须满足两个条件:1,电源功率不能低于5V/3A.2,保证电源输出稳定性。两个条件无法保证就会出现各种各样的问题,重启只是问题的一种

  • 关机问题

如果把树莓派电源开关给拔掉,这样会对树莓派系统造成损失

正确关机方法:1,使用终端命令

在终端中输入sudo poweroff或sudo shutdown -h now(将-h改为-r可以用来重启。将now改为+2表示树莓派将在两分钟后关机)回车即可

2,使用桌面图标:点击桌面左上角的树莓派标志,如下图。会弹出提示窗口,选择关机即可,如下图

 

四,无显示屏连接,网络远程连接

1,有线连接

进行以下四步。连线,即将网线一端连接树莓派,另外一端插在笔记本上即可。共享,是将笔记本的网络共享给树莓派。查找,查找树莓派IP地址。连接,利用树莓派IP地址连接树莓派

共享:

打开Windows设置,选择网络,在更改网络设置中找到更改适配器选项,然后选择第一个无线网,双击后打开属性,在上方切换到共享,勾选允许其他网络用户通过此计算机的Internet连接来连接

查找:

打开Windows的CMD窗口 ,输入命令arp -a,回车会出现好多地址,为了找到树莓派的IP地址,在刚刚打开的网络设置中右键以太网选择属性,找到下图鼠标指针所在处的网络协议,双击

 

 

双击后,可以看到以下界面,将IP地址与之前的众多IP地址进行对照,可以看到有两个是符合的

 

192.168.137.255是广播IP,所以剩下的192.168.137.106就是树莓派地址,保险起见可以在CMD中ping一下看看通不通,如下图所示是ping的通的,所以这个IP地址就是树莓派IP地址

连接:

连接到树莓派的工具有很多,其中一种是putty,一种基于SSH协议的连接工具 

所以需要我们开启树莓派的SSH接口。取出树莓派的系统卡,在笔记本上打开,直接在其中新建一个文本文档 ,将其名称修改为ssh(小写),去掉后缀.txt,完成之后就可以将系统卡装回树莓派开机,这时树莓派就打开了SSH接口。

打开putty界面,输入我们查到的树莓派IP地址,点击打开,会出现一个登陆选项,如下图

用户名输入pi,密码输入raspberry,回车后即可打开树莓派 

在下方输入命令即可控制树莓派。所以putty只支持命令行操作 

2,无线连接 

通过笔记本热点共享或其他无线网络,使笔记本和树莓派之间进行无线网络数据和信息传递

树莓派连接上笔记本共享的无线网络:

首先,取出树莓派的系统卡,插入到电脑上,电脑会自动弹出SD卡之中的内容(弹出窗口中取消格式化),以下界面即为SDK文件的内容。在此文件夹中新建一个文本文件,用记事本打开,在此文件中写入要给树莓派配置的信息,如下图代码

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
        ssid="无线网名字"
        psk="密码"
        priority=10
}

 写入内容后将文件名改为wpa_supplicant.conf.这样网络配置就完成了

查找树莓派IP地址:

笔记本开启热点之后,连接该热点的设备,能够直接看到IP地址

连接树莓派:

(1)利用软件putty 

有了IP地址之后,我们就可以使用远程工具putty来连接和操作树莓派了,也可以使用win10自带的远程桌面连接

(2)利用远程桌面连接

使用远程桌面连接首先要给树莓派安装对应工具xrdp(利用putty连接上树莓派,利用命令行来给树莓派安装软件,命令行输入sudo apt-get install xrdp),然后给利用远程桌面连接输入树莓派IP地址连接即可

 

然后输入树莓派用户名和密码,如下 

 然后就可以见到树莓派系统了

(3)利用VCN连接

 VNC是一个图形桌面共享系统。一台计算机或移动设备(运行VNC查看器)远程控制另一台计算机(运行VNC服务器)的桌面。

VNC查看器将键盘和鼠标的操作传输到VNC服务器,并接收VNC服务器返回的屏幕更新

在这里,树莓派就是VNC服务器,笔记本电脑就是VNC查看器。首先在电脑上安装VNC查看器,再在树莓派上安装VNC服务器,最后通过树莓派IP地址使两者建立连接

1,VNC服务器建立

树莓派是自带VNC服务器的,只是在默认情况下是关闭的。

打开方式:可以通过系统桌面来打开。找到系统桌面左上方树莓派标志,选择首选项中的Raspberry Pi Configuration,打开它。

然后将第三行VNC选择为Enable即可 

 

 第二种可以通过命令行(树莓派桌面命令行或者通过putty打开命令行都是可以的)

输入终端命令sudo raspi-config,回车即可看到以下界面,通过键盘移动到第三个选项回车

 再选择第三个选项回车

再选择是回车

2,VNC查看器建立

在桌面上打开网址输入realvnc.com .进入官网当中选择VNC Connect

然后选择Download中的VNC Viewer 

 

然后下载安装包即可 

 

3,树莓派和笔记本进行连接

打开树莓派系统的终端窗口,输入命令行vncserver,直接回车VNC就运行了,在最后一行会给一个IP地址,将其复制,如下图

在刚刚安装的VNC Viewer上输入刚才复制的IP地址,回车

输入树莓派账户和密码

 3,配置静态IP地址

静态IP地址,即不会发生变化的IP地址,这样就不用每次都去查看了

(1)查找默认网关

在笔记本cmd中输入命令ipconfig后回车,最后一行就是我们需要的默认网关

(2)分配给树莓派ip地址

查找路由器分配给树莓派的IP地址,直接用此地址作为树莓派静态IP地址

树莓派系统桌面右上角有WLAN图标将鼠标放在上面就可以看到IP地址

 

也可以使用命令行查看,输入hostname -I即可查看

(3)修改树莓派DHCP配置文件

在终端窗口中输入命令sudo nano /etc/dhcpcd.conf ,回车后在末尾添加上配置信息:

interface wlan0
static ip_address=你的ip地址/24
static routers=你的默认网关
static domain_name_servers=你的默认网关

 

粘贴完成按ctrl+s写入,再按ctrl+x退出 ,最后再重启一下树莓派就配置好了静态IP地址

五,文件传输

1,文件传输方法

(1)U盘传输

U盘传输较为快捷,简单,而且电脑和树莓派均有U盘接口。但是需要U盘且树莓派和电脑都在附近

(2)VNC传输

目前VNC Viewer(VNC查看器)自带文件传输功能。VNC连接后就可以直接传输。树莓派需要开启VNCserver,个人电脑需要安装VNCviewer

将树莓派VNCServer设置为开机自启:打开树莓派系统中的终端窗口,输入命令sudo nano /etc/init.d/vncserver,然后复制粘贴以下配置文件。粘贴复制之后ctrl+s保存,再ctrl+x退出

#!/bin/sh
export USER='pi'

eval cd~$USER

case "$1" in
start)
#启动命令行。此处自定义分辨率、控制台号码或其它参数。
su $USER -c '/usr/bin/vncserver -depth 24 -geometry 1920x1080:1'
echo "Starting VNCServer for $USER"
;;
stop)
su $USER -c '/usr/bin/vncserver -kill:1'
echo "VNCServer stopped"
;;
*)
echo "Usage: /etc/init.d/vncserver {start/stop}"
exit 1
;;
esac
exit 0

然后将这个文件加上权限,输入命令:sudo chmod 755 /etc/init.d/vncserver,然后回车

再输入命令设置为开机自启,输入命令:sudo update-rc.d vncserver defaults

最后输入命令sudo reboot重启树莓派

 

从电脑传输文件到树莓派:

树莓派重启之后,在VNC Viewer中输入树莓派地址(在地质后加一个:1) ,然后回车连接树莓派

 在树莓派桌面系统中,将鼠标移到上方会出现7个图标,如下图,点击第四个图标出现如下框,点击框左下角的Send Files

 就可以浏览电脑文件了,双击所要传输的文件就可以传输到树莓派桌面上

从树莓派传输文件到电脑:

 点击右上角指针所在位置的图标,会出现以下框,再点击右上角菜单

选择File Transfer 

然后点击左下角Send Files 

找到想要传输的文件,双击即可传输到电脑上 

 

(3)FTP文件传输协议

 

 

六,配置编译环境(Python)

官方系统已经内嵌了python2和python3,所以在使用时只需要注意使用的python版本

在树莓派系统终端窗口中输入python可以进入带python2版本,输入python3可以进入到python3版本。

exit()为退出命令

pip install ...:给python2安装python库。比如pip install pandas来安装python2的pandas库

pip3 install ...: 给python3安装python库。比如pip3 install pandas来安装python3的pandas库

当然,树莓派系统自带像pycharm一样的IDE,可以像下图一样打开。需要注意Thonny仅仅支持Python3.5以上的版本

设置中文环境

七,Linux系统操作命令和编辑器的使用

 

  • sudo:大部分命令用普通用户pi就可以使用。但有些命令需要高级权限才能打开

 

  • pwd:显示当前所在目录
  • cd+文件路径:切换到指定文件目录
  • cd~:切换到主目录(/home/pi),~也可以省略不写
  • cd ..:切换到上一级目录
  • ls:展示当前目录下所有的文件和文件夹(不包含隐藏文件)
  • ls -a: 展示当前目录下所有的文件和文件夹(包含隐藏文件)
  • mkdir +目录名:创建目录
  • touch +文件名:创建文件
  • cat +文件名:查看文件所有内容
  • more +文件名:查看文件所有内容
  • head +文件名:查看文件前10行
  • tail +文件名:查看文件后10行
  • rm +文件名:删除文件
  • rm -r +目录名:删除目录
  • mv +文件名1 +文件名2:如果文件名2不存在,则将文件名1改为文件名2.如果存在,则文件1覆盖掉原文件2,并更名为文件名2
  • mv +文件名 +目录名:将文件移动到目录
  • nano +文件名:使用nano编辑器编辑文件。如果文件不存在,则创建文件。以下为nano编辑器常用快捷键

 在终端输入nano t.txt即可进入以下界面来编辑t.txt文件

  • vi +文件名: 使用vi编辑器编辑文件。如果文件不存在,则创建文件。以下即为进入了vi的命令模式。想要写入内容需要切换到插入模式

vi有三种模式:

插入模式下按esc可切换到命令模式

 八,系统备份与还原

树莓派系统备份就是对root分区和boot分区这两个分区进行系统备份

系统备份方式共有以下两种

 

1,全卡备份

全卡备份需要准备树莓派SD卡1,一张容量不小于SD卡1的SD卡2,读卡器

全卡备份方式共有以下三种

这里讲方式二

首先打开树莓派系统桌面,找一张新的系统卡插入到树莓派中 ,会弹出一个窗口,输入密码后确定

点击取消 

 

就可以发现新的SD卡就在桌面显示了 

 

点击左上角树莓图标,按下图方式找到SD Card Copier

出现以下界面 

 

From选择从系统卡,To选择刚才的新卡 ,点击Start

 

选择Yes 

 

出现以下界面说明复制完成

 

2,压缩备份

准备:树莓派SD1卡,空的SD2卡,读卡器 

在树莓派终端窗口中输入df -h,查看一下系统卡当前的剩余空间,查看是否能够存放备份文件,备份文件大小为:已用空间X1.2.如果剩余空间足够存放备份文件,那就直接备份文件存放在系统卡上,如果剩余空间不足够存放备份文件,那就需要另外空的SD卡,将备份文件存储在新SD卡上

然后执行以下第一行代码

然后执行第二行代码

sudo ./back.sh +备份镜像名字(可以任意取名,但必须以.img结尾) 

 

备份完成之后可以输入ls看看当前目录下是否有刚刚备份的文件

 

3,系统还原(使用备份系统)

如果使用的是全卡备份的方式二和三,那么就可以把备份之后的SD卡直接插入到树莓派中直接使用。如果使用的是全卡备份的方式一或者是压缩备份,那么就需要把备份后生成的系统镜像重新烧录到SD卡中

九,GPIO管脚

 电路板边缘的GPIO引脚。新版具有40针GPIO接头,老版本有26针接头

1,引脚分类

2,引脚编码方式

树莓派引脚编码方式共有三种,同一个引脚在不同编码方式上的代号是不同的

 

(1)板载编码

这种编码方式是按照树莓派主板上引脚排针编号,分别对应1~40号引脚。能够直接看见。注意查看引脚排列顺序,数编号时按下图顺序来数

 (2)BCM编码

这种方式是参考BroadcomSOC的通道编号侧重CPU寄存器。是Python程序中常用的编码方式,如果做项目使用的是Python语言,就要注意自己的引脚编码是不是BCM编码

(3)WiringPi编码

把扩展GPIO端口从0开始编码。使用C语言控制

 

(4)在终端窗口查看代码

在树莓派终端窗口输入 pinout可以查看板载编码。输入gpio readall可以查看全部编码

3,控制引脚

(1)通过终端命令

先进入GPIO目录:cd /sys/class/gpio. 然后ls查看目录内容,出现下图内容

然后输入:echo 引脚编码(BCM编码)  > export。打开编码表找到我们使用引脚的BCM编码,然后将上述命令的引脚编码修改即可

回车之后再来查看一下目录,而可以看到多了一个引脚目录,使用cd gpio26进入到该目录下

进入之后就可以使用终端命令来控制引脚了 

输入第一行代码设置输出方向: echo out > direction

然后输入第二行代码:echo 1 > value(输出高电平)

                                     echo 0 > value(输出低电平)

使用完成之后需要注销GPIO引脚:cd ..

                                                        echo 26 > unexport

  • 也可以直接使用gpio命令控制:

如下图所示是对编号为4(BCM编码)的引脚进行控制

对照编码图可以看到,如果我们连接了7号引脚,则它对应的BCM编码标号为4,所以以上对板载编码的7号引脚,BCM编码的4号引脚进行操作 

(2) 通过Python

首先cd Desktop/切换到桌面目录,使用nano编辑器直接新建python文件,如下

 然后在编辑器内输入以下代码

然后ctrl+s保存,再ctrl+x退出

然后输入python3 led.py运行写好的代码即可 

(3)通过C语言

创建led.c文件

运行文件先输入命令:gcc -o led led.c        -lwiringPi 

然后输入:sudo ./led再回车就运行了

十,串口通讯

1,树莓派串口介绍

 

 

2,利用串口通讯

需要4个步骤:

 (1)安装

主要目的就是将硬件串口设置为主串口(只有主串口可以使用引脚通讯) 

 首先在终端输入ls /dev -al查看串口打开情况,可以发现主串口没有打开,ttyAMA0被分配到了辅助串口serial1,这表示mini串口没有显示

打开mini串口。在Raspberry Pi Configuration中

 

将Serial Port勾选为Enable。将Serial Console 勾选为Disable 

 

它会提示我们重启树莓派,选择Yes 

重启后再 ls /dev -al查看串口打开情况,就可以看到mini串口(ttyS0)打开了。但是硬件串口仍然是辅助串口,所以需要将硬件串口设置为主串口

 输入命令sudo nano /bppt/config.txt回车

在这个文件末尾添加两行代码

dtoverlay=pi3-miniuart-bt

force_turbo=1

ctrl+s保存,ctrl+x退出即可

再输入sudo reboot重启树莓派

(2)安装串口调试工具

在树莓派上安装minicom串口助手

输入命令sudo apt-get install minicom

在电脑上安装串口调试工具XCOM

(3) 连接树莓派和电脑

 三根引脚分别连接GND,TXD,RXD

 

连接完成后回到树莓派终端,输入命令运行minicom:minicom -D /dev/ttyAMA0 -b 9600  

 电脑串口波特率设置为9600就可以用电脑给树莓派发送数据了

 可以看到数据发送和接收了 

退出minicom:先按下ctrl+a再按下z可以弹出菜单,再按下x,选择Yes即可退出 

十一,实例1:交通信号灯

数字传感器和模拟传感器:数字传感器是数字量,模拟传感器是模拟量。数字量是离散的,比如一个灯泡的开关,它只有开和关两个状态。模拟量是连续的,比如可调电灯,它可以从暗调到亮,这个过程是连续的。

此次实例所用的LED传感器就是一个数字传感器。这个传感器有3个引脚。通常来说,LED灯只需要一个电源和一个接地通过高低电平就可以控制LED灯亮与灭,实际上这样是有安全隐患的,当输出高电平时,接收信号这个引脚既接收了高电平信号,又作为一个供电引脚,那这样就会造成传感器引脚负荷,所以进行了改善,改为三个引脚

一个LED连线方式

代码: 

 

 

十二,实例2:直流电机与PWM

python控制PWM

PWM控制直流电机

 

十三,实例3:超声波传感器 

连线方式 

 

工作原理

 

距离=高电平时间*声速/2 

程序实现:分为4步

  • 第一步:给传感器发送触发信号

GPIO.output(TRIG,GPIO.HIGH)#给TRIG引脚高电平

  • 第二步:等待回波信号

传感器一旦接收到回波信号,ECHO引脚会马上输出高电平。通过循环来检测ECHO引脚

while not GPIO.input(ECHO):

        pass

  • 第三步:获取回响信号的时长

while not GPIO.input(ECHO):

        pass

t1=time.time()

while GPIO.input(ECHO):

        pass

t2=time.time()

  • 第四步:根据公式计算距离 

(t2-t1)*340/2

 

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

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

相关文章

Hello 算法:动画图解、一键运行的数据结构与算法教程

Hello 算法 《Hello 算法》是一份开源、免费的数据结构与算法入门教程,特别适合新手。全书采用动画图解,内容清晰易懂,学习曲线平滑,引导初学者探索数据结构与算法的知识地图。源代码可以一键运行,帮助读者通过练习提…

【教学类-70-01】20240728一个茶壶两个茶杯(果茶)

‘ 背景需求: 用通义万相下载简笔画茶壶、茶杯 茶杯,简单笔画,卡通,黑白,未着色,幼儿插图,线条画,没有背景,没有颜色,黑白漫画线条艺术:,空背景…

JAVAWeb实战(后端篇)

因为前后端代码内容过多,这篇只写后端的代码,前端的在另一篇写 项目实战一: 1.创建数据库,表等数据 创建数据库 create database schedule_system 创建表,并添加内容 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0;-- ---------…

十一、Dockerfile解析

目录 一、Dockerfile简介 二、dockerfile的构建的三个步骤 三、Dockerfile的构建过程 1、DockerFile内容的基础知识 2、Docker执行Dockerfile的大致流程 四、dockerfile常用的保留字 1、FROM 2、MAINTAINER 3、RUN 4、EXPOSE 5、WORKDIR 6、USER 7、ENV 8、VOLUME …

VScode使用Github Copilot插件时出现read ECONNREST问题的解决方法

文章目录 read ECONNREST查看是否仍是 Copilot 会员查看控制台输出网络连接问题浏览器设置问题笔者的话 read ECONNREST 最近使用 Copilot 时一直出现 read ECONNREST 问题,这个表示连接被对方重置了,就是说在读取数据时连接被关闭。 我首先怀疑是不是…

QT常用的控件

QT常用控件 一.控件概述二.QWidget 核心属性2.1 核心属性概览2.2 enabled代码示例:使用代码创建一个禁用状态的按钮代码示例: 通过按钮2 切换按钮1 的禁用状态. 2.3 geometry代码示例: 控制按钮的位置代码示例: ⼀个随机按钮程序代码示例: 感受 geometry 和frameGeo…

Python | TypeError: ‘NoneType’ object is not iterable

Python | TypeError: ‘NoneType’ object is not iterable 在Python编程中,TypeError: NoneType object is not iterable 是一个常见的错误,通常表明你尝试对一个值为 None 的对象进行迭代操作,而 None 类型的对象是不可迭代的。本文将深入…

python count返回什么

描述 count() 方法用于统计字符串中某个子字符串出现的次数,可选参数为开始搜索与结束搜索的位置索引。 语法 count() 方法语法: S.count(sub[,start0[,endlen(S)]]) 参数 sub -- 搜索的子字符串。 S -- 父字符串。 start -- 可选参数,…

Windows11和Win10如何彻底永久关闭Windows defender

Windows11和Win10如何彻底永久关闭Windows defender 亲测简单快捷有效关闭病毒和威胁防护。 使用关闭windows defender工具。 随时可以重新开启病毒和威胁防护。

【Spring Boot】Spring 的安全框架:Spring Security

Spring 的安全框架:Spring Security 1.Spring Security 初识1.1 核心概念1.2 认证和授权1.2.1 验证(authentication)1.2.2 授权(authorization) 1.3 模块 2.核心类2.1 Securitycontext2.2 SecurityContextHolder2.2.1 …

刷题心得之位运算技巧 gcd 和 lcm

位运算 gcd 和 lcm 位运算技巧遍历 n 的所有子集, 不包括空集遍历 n 的所有子集, 包括空集提取出 n 二进制中第一次出现的1消除 n 二进制中第一次出现的1判断 n 是否是 2 的幂次方 gcd [最大公约数]lcm [最小公倍数] 位运算技巧 遍历 n 的所有子集, 不包括空集 #include <…

52.TFT_LCD液晶屏字符显示

&#xff08;1&#xff09;实验目标&#xff1a;在5寸显示屏&#xff08;800 * 480 60&#xff09;中央显示汉字&#xff08;黄色&#xff09;&#xff0c;且背景颜色为青色。 &#xff08;2&#xff09;代码编写&#xff1a; tft_ctrl模块&#xff1a; module tft_ctrl(inp…

电子电气架构---域控制器的软硬件趋势

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节…

TiDB-从0到1-sync-diff-inspector数据校验工具

TiDB从0到1系列 TiDB-从0到1-体系结构TiDB-从0到1-分布式存储TiDB-从0到1-分布式事务TiDB-从0到1-MVCCTiDB-从0到1-部署篇TiDB-从0到1-配置篇TiDB-从0到1-集群扩缩容TiDB-从0到1-数据导出导入TiDB-从0到1-BR工具 一、sync-diff-inspector工具 sync-diff-inspector是TiDB原生…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第六十二章 定时器按键消抖实验

i.MX8MM处理器采用了先进的14LPCFinFET工艺&#xff0c;提供更快的速度和更高的电源效率;四核Cortex-A53&#xff0c;单核Cortex-M4&#xff0c;多达五个内核 &#xff0c;主频高达1.8GHz&#xff0c;2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

详解Mysql InnoDB引擎 04

文章目录 1. InnoDB 简介2. 逻辑存储结构2.1 表空间 idb文件2.2 段2.3 区 1M2.4 页 16KB2.5 行 3. 架构3.1 内存结构3.1.1 Buffer Pool 缓冲池3.1.2 Change Buffer 更改缓冲区3.1.3 Adaptive Hash Index3.1.4 Log Buffer 3.2 磁盘结构 4. 后台线程5. 事务原理5.1 redo log 重做…

Pytorch深度学习实践(9)卷积神经网络

卷积神经网络 全连接神经网络 神经网络中全部是线性模型&#xff0c;是由线性模型串联起来的 全连接网络又叫全连接层 卷积神经网络 在全连接神经网络中&#xff0c;由于输入必须是一维向量&#xff0c;因此在处理图像时必须要对图像矩阵进行拉伸成一维的形式&#xff0c;…

视觉巡线小车(STM32+OpenMV)——总结

文章目录 目录 文章目录 前言 一、效果展示 二、完整流程 1、STM32CubeMX配置 2、Keil编辑 3、硬件接线 4、参数调试 5、图像处理调试 三、总结 前言 基于前面的系列文章&#xff0c;已基本介绍完了基于STM32OpenMV的视觉巡线小车&#xff0c;本文将以小编自己的小车…

BACnet物联网关BL103:Modbus协议转BACnet/MSTP

随着物联网技术在楼宇自动化与暖通控制系统中的迅猛发展&#xff0c;构建一种既经济高效又高度可靠的协议转换物联网关成为了不可或缺的核心硬件组件。在此背景下&#xff0c;我们钡铼特别推荐一款主流的BAS&#xff08;楼宇自动化系统&#xff09;与BACnet物联网关——BL103&a…

小世界特性解析——聚类系数与平均路径长度的奥秘

小世界特性解析——聚类系数与平均路径长度的奥秘 小世界特性的核心衡量指标 小世界特性&#xff0c;这一复杂网络中的重要概念&#xff0c;主要通过两个关键指标来衡量&#xff1a;聚类系数和平均路径长度。这两个指标共同揭示了网络结构的紧密程度和信息传播的效率。 聚类…