树莓派 5 - Raspberry Pi 5 入门教程

系列文章目录


文章目录

​​​​​​​


前言

如果您是第一次使用 Raspberry Pi,请参阅我们的入门指南(how to get started)。

Raspberry Pi 5
Raspberry Pi 5

        Raspberry Pi 5 配备了运行频率为 2.4GHz 的 64 位四核 Arm Cortex-A76 处理器,CPU 性能比 Raspberry Pi 4 提升了 2 到 3 倍。此外,800MHz 的 VideoCore VII GPU 大幅提升了图形性能;通过 HDMI 实现了双 4Kp60 显示输出;重新架构的 Raspberry Pi 图像信号处理器支持最先进的摄像头。

        这是首次使用 Raspberry Pi 内部制造的硅芯片的全尺寸 Raspberry Pi 计算机。RP1 为 Raspberry Pi 5 提供了大部分 I/O 功能,在外设性能和功能方面实现了质的飞跃。总的 USB 带宽增加了一倍多,从而提高了与外部 UAS 驱动器和其他高速外设的传输速度;早期型号上的专用双通道 1Gbps MIPI 摄像头和显示接口已被一对四通道 1.5Gbps MIPI 收发器取代。 通过支持 SDR104 高速模式,SD 卡的峰值性能提高了一倍;该平台首次开放了单通道 PCI Express 2.0 接口,为高带宽外设提供支持。

主要功能包括

  • 四路 Arm Cortex-A76 @ 2.4GHz
  • 支持加密扩展(硬件 AES)
  • 512KB 每核二级缓存
  • 2MB L3 高速缓存
  • 4GB 或 8GB LPDDR4X-4267 SDRAM
  • 双 4kp60 HDMI 显示输出,支持 HDR
  • 4kp60 HEVC 解码器
  • VideoCore VII 图形处理器,支持 OpenGL-ES 3.1 和 Vulkan 1.2
  • Raspberry Pi 图像传感器处理器 (ISP)
  • 用于 PCIe 的 Raspberry Pi 连接器(1 x 2.0 端口,需要额外的 HAT)
  • 802.11ac 双频 Wi-Fi
  • 蓝牙 5.0(支持 BLE)
  • 千兆以太网
  • 2 个 USB 3.0(可同时全速吞吐)
  • 2 个 USB 2.0
  • 支持 PoE(需要额外的 HAT)
  • 双 4 通道 MIPI CSI/DSI 收发器,支持
  • 2x 显示器;或
  • 2x 摄像头;或
  • 1x 显示器 + 1x 摄像头
  • Raspberry Pi 40 引脚 GPIO 接头
  • 风扇连接器
  • 实时时钟 (RTC)
  • RTC 电池连接器
  • 电源按钮

一、关机后再开机

        首次将 Raspberry Pi 插入电源时,它会自动打开并启动操作系统,无需按下按钮。

        如果你运行的是 Raspberry Pi Desktop,你可以通过短按电源按钮来启动干净利落的关机。这时会出现一个菜单,询问你是要关机、重启还是注销。从菜单中选择一个选项,或再次按下电源按钮,启动清洁关机。

Shutting down your Raspberry Pi 5 using the power button

注意

如果运行的是 Raspberry Pi Desktop,可以连续快速按两次电源键来关机。如果运行的是不带桌面的 Raspberry Pi OS Lite,只需按一次电源按钮即可关机。

要强制关机,请按住电源按钮。

如果 Raspberry Pi 电路板已关闭,但仍有电源,按下电源按钮将重启电路板。

默认关机功率约为 1 至 1.4W。不过,可以通过使用 sudo rpi-eeprom-config -e 手动编辑 EEPROM 配置来降低功率。将设置更改为

BOOT_UART=1
POWER_OFF_ON_HALT=1
BOOT_ORDER=0xf416

 这将使关机功耗降至 0.01W 左右。

1.1 添加自己的电源按钮

The J2 jumper

J2 跳线位于 RTC 电池连接器和电路板边缘之间。通过在这两个焊盘之间添加一个常开(NO)瞬时开关,您就可以在 Raspberry Pi 5 上添加自己的电源按钮。短暂闭合该开关将执行与板载电源按钮相同的操作。

二、更新固件

警告
除非得到 Raspberry Pi 工程师的指导,否则请勿更新 Raspberry Pi 上的固件。

虽然固件更新很少见,但如果您的 Raspberry Pi 出现问题,您可能需要检查是否有可用的固件更新。您可以按以下步骤进行:

sudo apt update
sudo apt upgrade
sudo rpi-eeprom-update -a

如果有固件更新,系统会提示你安装,然后你的 Raspberry Pi 将重新启动。有关更新 Raspberry Pi 固件的更多信息,请参阅其他文档(elsewhere in the documentation)。 

三、给 Raspberry Pi 5 供电

Raspberry Pi 生产两种不同的 USB-C 电源。

        第一款是 Raspberry Pi 15W USB-C 电源,是 Raspberry Pi 4 和 Raspberry Pi 400 的推荐电源。第二种是 Raspberry Pi 27W USB-C 电源,它能在 +5.1V 电压下提供高达 5A 的电流,是 Raspberry Pi 5 的推荐电源。

        Raspberry Pi 4 电源使用的 USB-C 标准限制为 5V 3A,总输出功率为 15W。USB-PD 标准允许通过软件协商更高的电压和电流,但需要适当的电源管理集成电路 (PMIC),而这只有 Raspberry Pi 5 才有。这些电源要求使用合适的 USB-PD 兼容电缆。

注意
使用老式 USB "哑 "电缆和连接器无法提供超过 15W 的功率,即使使用 USB-PD 电源也是如此。

 虽然支持 USB-PD 的手机充电器标榜功率超过 15W,但几乎所有充电器都是通过提高电压而不是在 +5V 电压下提供更多电流来实现这一目标的。如果您使用的电源在首次启动时不能在 +5V 电压下提供 5A 电流,则操作系统会警告您外设的电流将限制在 600mA。

On-screen warning of under-voltage event

 对于希望驱动硬盘和固态硬盘等大功率外围设备,同时为峰值工作负载保留余量的用户,应使用能够在 +5V 电压下提供 5A 电流(25W)的支持 USB-PD 的电源。如果 Raspberry Pi 5 固件检测到受支持的 5A 电源,就会将外围设备的 USB 电流限制提高到 1.6A,为下游 USB 设备提供 5W 的额外功率,并提供 5W 的额外板载电源预算。

 注意
不支持 USB-PPS。

 我们推荐使用 Raspberry Pi 官方电源,它可以在电流快速波动的情况下持续提供 +5V 电压。当您使用 Raspberry Pi 外围设备时,这种需求波动很常见也很频繁。其他电源(通常设计用于为手机充电提供稳定的电流)并不能很好地应对电源波动。官方电源还附有一条(俘获式)USB 电缆,这意味着你不会不小心使用劣质或 "哑巴 "电缆,而其他电源可能会出现这种问题。

警告
如果您使用的是具有 USB-PD 功能的第三方多端口电源,在为 Raspberry Pi 供电的同时为电源插入其他设备会导致电源和 Raspberry Pi 之间重新协商。如果 Raspberry Pi 处于通电状态,这种情况会无缝发生,但如果 Raspberry Pi 插上电源并断电,这种重新协商可能会导致 Raspberry Pi 启动。

您可以使用 vcgencmd 检查 USB 端口的电源输出状态。

vcgencmd get_config usb_max_current_enable

3.1 USB 启动和电源

默认情况下,使用 3A 电源时不会启用 USB 启动。不过,在 /boot/firmware/config.txt 文件中设置 usb_max_current_enable=1 将覆盖这一设置,并在使用较低功率电源时启用 USB 启动。

使用 3A 电源启动时,如果 config.txt 文件中没有该语句,引导加载程序 HDMI 诊断屏幕上将显示警告信息,引导加载程序将跳至下一个启动模式。

Trying partition: 0
type: 32 lba: 8192 'mkfs.fat' ' bootfs     ' clusters 130554 (4)
rsc 32 fat-sectors 1020 root dir cluster 2 sectors 0 entries 0
FAT32 clusters 130554
[MSD [01:00] 2.00 000000:02] autoboot.txt not found
Trying partition: 0
type: 32 lba: 8192 'mkfs.fat' ' bootfs     ' clusters 130554 (4)
rsc 32 fat-sectors 1020 root dir cluster 2 sectors 0 entries 0
FAT32 clusters 130554
Read config.txt bytes     2109 hnd 0x10a
[MSD [01:00] 2.00 000000:02] pieeprom.upd not found
usb_max_current_enable default 0 max-current 900
Read bcm2712-rpi-5-b.dtb bytes    71862 hnd 0x5101
dt-match: compatible: raspberrypi,5-model-b match: brcm,bcm2712
dt-match: compatible: brcm,bcm2712 match: brcm,bcm2712
***
USB boot requires a high current (5V 5A) power supply.
To disable this check set usb_max_current_enable=1 in config.txt
or press the power button to temporarily enable usb_max_current_enable
and continue booting.
See https://rptl.io/rp5-power_supply for more information
***

引导加载程序会提示您 "按电源按钮继续",这实际上是为当前启动临时设置 usb_max_current_enable=1,以便从 USB 启动。除非您的磁盘有自己的外部电源,否则 Raspberry Pi 可能没有足够的电流。

3.2 电源和 Raspberry Pi 操作系统

引导加载程序通过设备树 /proc/device-tree/chosen/power 传递有关电源的信息。用户通常不会直接读取。

最大电流
最大电流(毫安

uspd_power_data_objects
PDOs 的转储 - 供高级用户调试

usb_max_current_enable
电流限制器是设置为高电平还是低电平

检测到 USB 过电流
在将控制权转移到操作系统之前,启动过程中是否发生 USB 过流

复位事件
PMIC 复位原因,如看门狗、过压或欠压、过热等。

PMIC 内置 ADC,可测量电源电压 EXT5V_V。

vcgencmd pmic_read_adc

 注意
您无法看到 USB 电流或其他直接连接到 5V 的电流,因为这绕过了 PMIC。您不应该指望它与源电源的功率相加。不过,这对监控内核电压等非常有用。

四、为 Raspberry Pi 5 降温

Raspberry Pi 5 设计用于在无外壳、无主动散热的情况下处理典型的客户端工作负载。对于较重的负载,Raspberry Pi 5 有两种官方散热方式可供选择。它们都可插入位于电路板右上方 40 针 GPIO 接头和 USB 2 端口之间的四针 JST PWM 风扇接头。

Raspberry Pi 固件会主动管理这两种可用的官方配件。随着 Raspberry Pi 温度的升高,风扇会作出如下反应:

低于 50°C,风扇完全不转(0% 速度)

温度达到 50°C,风扇低速转动(30% 速度)

温度达到 60°C 时,风扇转速升至中速(50)

67.5°C 时,风扇转速增至高速(70)

75°C 时,风扇转速增至全速(100)

温度范围与风扇转速的映射同样适用于温度下降,滞后温度为 5°C;当温度下降到低于上述每个阈值 5°C 时,风扇转速会降低。

注意
USB 端口和风扇连接器的电流限制均为 1.6A。

 启动时,风扇打开,并检查转速输入,查看风扇是否转动,如果转动,则启用 cooling_fan 设备树覆盖。默认情况下,该覆盖层位于 bcm2712-rpi-5-b.dtb 中,但状态为禁用。

4.1 风扇外壳

The official Case for Raspberry Pi 5

Raspberry Pi 5 的官方外壳带有集成风扇。HAT 可通过移除风扇直接安装在 Raspberry Pi 5 上,或通过使用 14 毫米高的支座和 19 毫米 GPIO 扩展器安装在风扇顶部。这些配件可向授权经销商单独购买。

集成的 2.79(最大)CFM 风扇采用流体动力轴承,噪音低,使用寿命长。空气通过盖子下方的 360° 插槽吸入,吹过 BCM2712 上的散热片,然后通过底座上的连接器孔和通风口排出。

 4.2 主动冷却器

Active Cooler 是一个单片阳极氧化铝散热片,带有集成鼓风机。它预装了导热垫,使用弹簧推针直接安装到 Raspberry Pi 5 电路板上。它与机箱风扇连接在同一个 4 针 JST 连接器上。

径向鼓风机也是为了低噪音和延长使用寿命而选择的,它推动空气通过挤压和铣削的铝制散热片。主动冷却器的冷却性能略优于风扇散热箱,因此特别适合超频玩家使用

注释
鼓风机是一种机电系统,利用风扇和指定通道将空气引向特定方向。风扇排出大量空气并促进指定区域内的空气流通,而鼓风机则提供一定程度的空气压力,将空气排出并向前推进。

主动冷却器的设计不允许从 Raspberry Pi 5 上反复拆卸。 

4.3 热量

在 Raspberry Pi 5 的所有四个内核上启动了压力测试,以对 CPU 进行负载。测试中主要考察了两种热管理机制:无冷却和有管理的主动冷却。使用 Active Cooler 和 Raspberry Pi Case 对 Raspberry Pi 5 进行了有管理的主动冷却测试。

在没有散热的情况下,我们看到空闲温度约为 65°C,在长时间测试过程中最高温度超过 85°C,导致处理器报告的温度超过节流限制后出现持续的热节流。

由于主动散热器配备了被动散热片,我们看到的空闲温度要低得多,约为 45°C。在长时间的负载测试中,散热器的风扇低速旋转,将 CPU 温度稳定在 60°C,测试期间的最高温度为 62 至 63°C。

在使用风扇的情况下,怠速温度比单独使用主动冷却器时高几度,约为 48°C。取下盖子后,我们看到持续负载下的最高温度约为 72°C,而盖上盖子后,负载下的最高温度略高,约为 74°C。虽然负载下的温度高于使用主动冷却器时的温度,但负载下的最高温度仍远低于 80°C 和 85°C 的节流温度。

Raspberry Pi 5 设计用于在无外壳、无主动散热的情况下处理典型的客户端工作负载。在正常使用情况下,可以选择添加散热装置,尽管主动散热可能会提高性能。但是,持续的大负载(如重建 Linux 内核)将迫使新的 Raspberry Pi 5 进入热节流状态。对于重负载,热节流可能会延长处理时间,被动冷却可能是不充分的热管理。

不过,任何类型的冷却都不是强制性的,如果不进行冷却,也不会对 Raspberry Pi 造成伤害。

4.4 引脚

风扇连接器是一个 1 毫米间距的 JST SH 插座,有四个引脚:

PinFunction

1

+5V

2

PWM

3

GND

4

Tach

五、Raspberry Pi 和 GPIO

使用 GPIO Zero(GPIO Zero) 库可以轻松开始用 Python 控制 GPIO 设备。该库在 gpiozero.readthedocs.io(gpiozero.readthedocs.io) 上有全面的文档说明。

有关在 Raspberry Pi 上使用 GPIO 引脚的更多信息,请参阅其他文档(elsewhere in the documentation)。 

六、Raspberry Pi PCIe 接口

Raspberry Pi 5 的右侧有一个 FPC 连接器。该连接器提供 PCIe Gen 2.0 x1 接口,用于快速外设。

注意事项
提供 M.2 连接器以允许使用 NVMe 驱动器的 M.2 HAT 仍处于原型阶段,尚未发布。

有关 PCIe FPC 连接器引脚输出的更多信息,以及创建第三方设备、配件和 HAT 所需的其他详细信息,请参阅 Raspberry Pi Connector for PCIe 标准文件。该文档应与新的 Raspberry Pi HAT+ 规范一并阅读。 

6.1 启用 PCIe

默认情况下,PCIe 连接器未启用。要启用它,应在 /boot/firmware/config.txt 中添加以下选项并重新启动:

# Enable the PCIe External connector.
dtparam=pciex1

pciex1 有一个更容易记住的别名,因此您也可以在 /boot/firmware/config.txt 文件中添加 dtparam=nvme。

注意
目前不支持枚举交换机后面的 PCIe 设备

6.2 PCIe Gen 3.0

该连接已通过 Gen 2.0 速度(5 GT/秒)认证,但如果在/boot/firmware/config.txt 文件中添加以下行,则可强制连接至 Gen 3.0(10 GT/秒)。 

# Enable the PCIe external connector
dtparam=pciex1# Force Gen 3.0 speeds
dtparam=pciex1_gen=3

七、MIPI CSI/DSI 连接器

以前型号的 Raspberry Pi 上的 CSI 和 DSI 端口已合并为两个两用 CSI/DSI (MIPI) 端口。为了安装到电路板上,这些端口现在使用了更密集的连接器引脚,以前只有 Raspberry Pi Zero 和 CM4IO 电路板上才有。您可以将两个显示器、两个摄像头或一个摄像头和一个显示器连接到这些端口。

7.1 安装摄像头

摄像头等 Raspberry Pi 设备无需配置。只要将摄像头插入任一 MIPI 接口,就能获得适当的 CSI 连接,操作系统就能使用摄像头。

7.1.1 摄像头电缆

相机电缆
有三种扁平柔性电缆 (FFC) 可用于将 CSI 摄像机连接到 Raspberry Pi 5:

200 毫米标准相机电缆至迷你型

300 毫米标准微型相机电缆

500 毫米标准微型相机电缆

注意
计算模块电缆适配器(见原理图和设计文件)可用于将标准电缆连接到更高密度的迷你连接器。

7.2 连接显示器

如果您在 Raspberry Pi 5 上使用的是我们的 7 英寸触摸显示器,它不会自动配置。您需要在 /boot/firmware/config.txt 文件中添加以下两行。将显示器连接到 CAM/DISP 1 连接器时,应添加以下内容:

dtoverlay=vc4-kms-dsi-7inch

或者,在 CAM/DISP 0 连接器上添加以下一行:

dtoverlay=vc4-kms-dsi-7inch,dsi0

警告
在撰写本文时,要在 7 英寸触摸显示屏上获得触摸支持,你需要进行 rpi-update 以获得更新的内核。

7.2.1 可用的显示屏电缆 

 

有三种扁平柔性电缆 (FFC) 可用于将 DSI 显示器连接到 Raspberry Pi 5:

200 毫米标准显示电缆至迷你型

300 毫米标准显示电缆至迷你型

500 毫米标准显示电缆至迷你型

7.3 使用非 Raspberry Pi 设备

如果您使用的是非 Raspberry Pi MIPI 设备(摄像头或显示器),它不会自动为 Raspberry Pi 5 配置。相反,您需要在 /boot/firmware/config.txt 文件中添加 dtoverlay 设置,以便为正确的摄像头或显示器正确配置正确的端口。

这些 dtoverlay 设置应由设备制造商提供。例如,添加 dtoverlay=ov9281 将在 CSI/DSI1 上配置基于 Omnivision OV9281 的摄像头,而添加 dtoverlay=ov9281,cam0 将在 CSI/DSI0 上添加相同的摄像头。

八、UART 接口

Raspberry Pi 5 有一个专用的调试 UART 连接器。它的最大波特率为 921,600bps,可通过 EEPROM 参数进行配置。它始终处于激活和启用状态,可直接访问早期启动和固件信息;启动后还可访问 Linux 控制台。 

UART 连接器是一个三针接头,与 Raspberry Pi 调试连接器规格兼容。调试探针随附一条电缆,该电缆以适当的 JST 连接器为终端,允许您连接到 UART。

默认情况下,它在 /dev/ttyAMA0(别名为 /dev/serial0)上提供 115,200 波特的 8N1 连接。

8.1 创建串行控制台

以前的 Raspberry Pi 可以在 GPIO14 和 15 上启用串行控制台,而 Raspberry Pi 5 则不同,通过 raspi-config 启用串行控制台可以在 /dev/ttyAMA0 上的新 UART 接口上启用串行控制台。

九、实时时钟(RTC)

Raspberry Pi 5 包含一个 RTC 模块。该模块可通过电路板上 USB-C 电源接头右侧的 J5(BAT)接头由电池供电。

您可以设置唤醒闹钟,将电路板切换到极低功耗状态(约 3mA)。达到闹钟时间后,电路板将重新开启。这对于延时摄影等周期性工作非常有用。

要支持唤醒警报的低功耗模式,应编辑引导加载器配置:

sudo -E rpi-eeprom-config --edit


添加以下两行

POWER_OFF_ON_HALT=1
WAKE_ON_GPIO=0


您可以使用以下方法测试功能

echo +600 | sudo tee /sys/class/rtc/rtc0/wakealarm
sudo halt


这将使电路板停止运行,进入极低功耗状态,然后在 10 分钟后唤醒并重新启动。

RTC 还会在启动时提供时间,例如在 dmesg 中:

[    1.295799] rpi-rtc soc:rpi_rtc: setting system clock to 2023-08-16T15:58:50 UTC (1692201530)


......如果您没有互联网连接,通过 NTP 获取时间可能会很有用。

注意
即使 J5 连接器上未连接备用电池,RTC 仍可使用

十、 添加备用电池

我们不建议为 RTC 使用主锂电池,因为它有一个默认禁用的涓流充电电路。如果启用,则会很快杀死电池。

 

官方提供的电池是可充电锂锰纽扣电池,预装有两针 JST 插头和粘合剂安装垫。它适用于在电路板主电源断开时为 Raspberry Pi 5 RTC 供电,断电电流为个位数 µA,保持时间可长达数月。 

10.1 启用涓流充电功能

电池的涓流充电默认为禁用。有 sysfs 文件显示当前的涓流充电电压和限制:

/sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/charging_voltage:0
/sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/charging_voltage_max:4400000
/sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/charging_voltage_min:1300000


如果在 /boot/firmware/config.txt 中添加 rtc_bbat_vchg:

dtparam=rtc_bbat_vchg=3000000


...然后重启,你会看到

/sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/charging_voltage:3000000
/sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/charging_voltage_max:4400000
/sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/charging_voltage_min:1300000


电池将进行涓流充电。删除 config.txt 中的 dtparam 行可停止涓流充电。

 十一、以太网供电 (PoE) 接口

Raspberry Pi 5 的以太网插孔具有 PoE+ 功能,支持 IEEE 802.3at-2009 PoE 标准。Raspberry Pi 5 有一个 4 针以太网供电(PoE)接头块,位于以太网插孔和两个 MIPI 接口之间。

Raspberry Pi PoE+ HAT for Raspberry Pi 5 是用于 Raspberry Pi 5 计算机的附加电路板,可连接到 PoE 接口。它用于通过以太网电缆为 Raspberry Pi 供电,前提是以太网网络上安装了供电设备。

备注
用于 Raspberry Pi 5 的 PoE+ HAT 仍处于原型阶段,尚未发布。 

 十二、原理图和机械图纸

以下是 Raspberry Pi 5 的机械图纸:

机械图纸(Mechanical Drawings),PDF

Raspberry Pi 5 的 STEP 文件(STEP file)

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

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

相关文章

LangChain+通义千问+AnalyticDB向量引擎保姆级教程

本文以构建AIGC落地应用ChatBot和构建AI Agent为例,从代码级别详细分享AI框架LangChain、阿里云通义大模型和AnalyticDB向量引擎的开发经验和最佳实践,给大家快速落地AIGC应用提供参考。 前言 通义模型具备的能力包括: 1.创作文字&#xf…

【已解决】SpringBoot Maven 打包失败:class lombok.javac.apt.LombokProcessor 错误

文章目录 出错原因解决办法总结 最新项目部署的时候&#xff0c;出现了一个maven打包失败的问题&#xff0c;主要是lombok这个组件出的问题&#xff0c;具体的错误信息如下&#xff1a; 我的lombok版本如下&#xff1a; <dependency><groupId>org.projectlombok&l…

Android View.inflate 和 LayoutInflater.from(this).inflate 的区别

前言 两个都是布局加载器&#xff0c;而View.inflate是对 LayoutInflater.from(context).inflate的封装&#xff0c;功能相同&#xff0c;案例使用了dataBinding。 View.inflate(context, layoutResId, root) LayoutInflater.from(context).inflate(layoutResId, root, fals…

nodejs+vue+微信小程序+python+PHP的黄山旅游景点购票系统设计与实现-计算机毕业设计推荐

本文首先对该系统进行了详细地描述&#xff0c;然后对该系统进行了详细的描述。管理人员增加了系统首页、个人中心、用户管理、景点分类管理、景点简介管理、旅游路线管理、文章分类管理、公告文章管理、系统管理理等功能。黄山旅游景点购票系统是根据当前的现实需要&#xff0…

mysql 链接超时的几个参数详解

mysql5.7版本中&#xff0c;先查看超时设置参数&#xff0c;我们这里只关注需要的超时参数&#xff0c;并不是全都讲解 show variables like %timeout%; connect_timeout 指的是连接过程中握手的超时时间,在5.0.52以后默认为10秒&#xff0c;之前版本默认是5秒&#xff0c;主…

【vscode写vue代码是白色怎么办】

【vscode写vue代码是白色怎么办】 在插件列表中搜索Vetur 安装即可

Redis 命令全解析之 Hash类型

文章目录 ⛄介绍⛄命令⛄RedisTemplate API⛄应用场景 ⛄介绍 Hash类型&#xff0c;也叫散列&#xff0c;其value是一个无序字典&#xff0c;类似于Java中的 HashMap 结构。 String结构是将对象序列化为JSON字符串后存储&#xff0c;当需要修改对象某个字段时很不方便&#xf…

降维技术——PCA、LCA 和 SVD

一、说明 降维在数据分析和机器学习中发挥着关键作用&#xff0c;为高维数据集带来的挑战提供了战略解决方案。随着数据集规模和复杂性的增长&#xff0c;特征或维度的数量通常变得难以处理&#xff0c;导致计算需求增加、潜在的过度拟合和模型可解释性降低。降维技术通过捕获数…

用队列实现栈

问题描述&#xff1a; 请你仅用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通队列的全部四种操作&#xff08;push、top、pop和empty&#xff09;。 实现MyStack类&#xff1a; void push(int x) 将元素x压入栈顶。int pop()移除并返回栈顶…

手写 Promise:深入理解异步编程的基石

手写 Promise&#xff1a;深入理解异步编程的基石 本文将带您逐步实现一个简单的 Promise&#xff0c;以帮助您深入理解异步编程的基本概念。通过自己动手编写 Promise 的过程&#xff0c;您将更好地理解 Promise 的工作原理和常见用法&#xff0c;并能够应用于实际项目中。 …

什么是网站劫持

网站劫持是一种网络安全威胁&#xff0c;它通过非法访问或篡改网站的内容来获取机密信息或者破坏计算机系统。如果您遇到了网站劫持问题&#xff0c;建议您立即联系相关的安全机构或者技术支持团队&#xff0c;以获得更专业的帮助和解决方案。

Angular 进阶之四:SSR 应用场景与局限

应用场景 内容丰富&#xff0c;复杂交互的动态网页&#xff0c;对首屏加载有要求的项目&#xff0c;对 seo 有要求的项目&#xff08;因为服务端第一次渲染的时候&#xff0c;已经把关键字和标题渲染到响应的 html 中了&#xff0c;爬虫能够抓取到此静态内容&#xff0c;因此更…

【面试专题】MySQL篇①

1.MySQL中&#xff0c;如何定位慢查询? ①介绍一下当时产生问题的场景&#xff08;我们当时的一个接口测试的时候非常的慢&#xff0c;压测的结果大概5秒钟&#xff09; ②我们系统中当时采用了运维工具&#xff08; Skywalking &#xff09;&#xff0c;可以监测出哪个接口…

PostgreSQL从小白到高手教程 - 第38讲:数据库备份

PostgreSQL从小白到专家&#xff0c;是从入门逐渐能力提升的一个系列教程&#xff0c;内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容&#xff0c;希望对热爱PG、学习PG的同学们有帮助&#xff0c;欢迎持续关注CUUG PG技术大讲堂。 第38讲&#…

running小程序重要技术流程文档

一、项目文件说明&#xff1a; &#xff08;注&#xff1a;getMyMoney无用已删除&#xff09; 二、重要文件介绍 1.reinfo.js&#xff1a;位于utils文件下&#xff0c;该文件封装有统一的请求URL&#xff0c;和请求API同意封装供页面调用&#xff1b;调用时候需要在页面上先…

【C语言】操作符详解(一):进制转换,原码,反码,补码

目录 操作符分类 2进制和进制转换 2进制转10进制 10进制转2进制 2进制转8进制和16进制 2进制转8进制 2进制转16进制 原码、反码、补码 操作符分类 操作符中有一些操作符和二进制有关系&#xff0c;我们先铺垫一下二进制的和进制转换的知识。 2进制和进制转换 其实我们经…

vertica主键列能插入重复值的处理办法

问题描述 开发同事反馈在vertica中创建含主键列的表中插入重复数据时没有进行校验&#xff0c;插入重复值成功。经过测试着实可以插入重复值&#xff0c;这个坑有些不一样。 创建表和插入语句如下&#xff1a; --创建表 CREATE TABLE dhhtest(ID VARCHAR(64) PRIMARY KEY );…

使用Microsoft Dynamics AX 2012 - 5. 生产控制

生产控制的主要职责是生产成品。为了完成这项任务&#xff0c;制造业需要消耗物品和资源能力&#xff08;人员和机械&#xff09;。制造过程可能包括半成品的生产和库存。半成品是指物品包括在成品材料清单中。 制造业的业务流程 根据公司的要求&#xff0c;您可以选择申请Dy…

某马点评——day04

达人探店 发布探店笔记 改一下&#xff0c;图片保存路径就可以直接运行测试了。 查看探店笔记 Service public class BlogServiceImpl extends ServiceImpl<BlogMapper, Blog> implements IBlogService {Resourceprivate IUserService userService;Overridepublic Resu…

OpenCL学习笔记(二)手动编译开发库(win10+vs2019)

前言 有时需求比较特别&#xff0c;可能需要重新编译opencl的sdk库。本文档简单记录下win10下&#xff0c;使用vs2019编译的过程&#xff0c;有需要的小伙伴可以参考下 一、获取源码 项目地址&#xff1a;GitHub - KhronosGroup/OpenCL-SDK: OpenCL SDK 可以直接使用git命令…