自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 收藏
  • 关注

原创 基于ESP32 - S3实现一个ping百度的C测试程序

【代码】基于ESP32 - S3实现一个ping百度的C测试程序。

2025-04-20 17:50:52 89

原创 通过 Samba 服务实现 Ubuntu 和 Windows 之间互传文件

点击“完成”,如果之前设置了 Samba 用户和密码,会弹出验证窗口,输入相应的用户名和密码即可访问共享目录。通过以上步骤,你就可以在 Ubuntu 和 Windows 之间实现文件的互传。是 Ubuntu 系统的 IP 地址,可以在 Ubuntu 终端中使用。在“驱动器”下拉菜单中选择一个未使用的驱动器号,在“文件夹”中输入。可以使用以下命令创建一个新的共享目录,例如创建名为。替换为 Windows 上的共享文件夹名称,在 Windows 系统中,打开“此电脑”。替换为 Windows 的用户名和密码。

2025-04-19 10:27:19 271

原创 esp32的NVS非易失性存储代码

在 ESP32 中,(通常nvs指非易失性存储,Non - Volatile Storage)主要实现了与非易失性存储相关的功能。ESP32 的 NVS 是一个轻量级的键值对存储系统,它允许开发者将少量的数据持久化存储在闪存中,即使设备断电或重启,数据也不会丢失。以下详细介绍。

2025-04-17 19:28:57 210

原创 CMake 的多层级文件编译实现

通过上述步骤,你可以实现 CMake 的多层级文件编译。核心要点是合理规划项目结构,编写各级文件,使用包含子目录,使用生成库,使用生成可执行文件,并使用链接库。

2025-04-17 14:50:07 265

原创 C 语言实现 HTTP 和 HTTPS 通信的例程

HTTPS 是基于 HTTP 的安全传输协议,需要使用 SSL/TLS 进行加密。在 C 语言中可以使用 OpenSSL 库来实现 HTTPS 通信。编程来实现简单的 HTTP 请求。以上代码仅是简单示例,实际应用中可能需要更多的错误处理和安全性检查。HTTP 是一种明文传输协议,在 C 语言中可以使用。

2025-04-17 09:41:58 447

原创 在 Ubuntu 系统下进行 GitLab 操作(上传代码和下载代码)的详细流程:

复制输出的内容,登录 GitLab 网站,进入个人设置 -> SSH 密钥,将公钥粘贴到相应的输入框中并保存。在使用 Git 之前,需要配置用户名和邮箱,这会在提交代码时记录你的身份信息。登录 GitLab 网站,点击右上角的“+”号,选择“New project”,按照提示创建一个新的仓库。通过以上步骤,你就可以在 Ubuntu 系统下完成 GitLab 的代码上传和下载操作。然后,将公钥添加到 GitLab 账户中。默认情况下,密钥会生成在。如果你需要从 GitLab 下载代码,可以使用。

2025-04-16 17:20:12 227

原创 ​要彻底卸载VMware,​

要彻底卸载。

2025-04-16 11:21:51 290

原创 基于ESP32-S3 蓝牙SDK封装设计

c复制#endif/*** @brief 蓝牙工作模式枚举*/BT_MODE_NONE = 0, // 无模式BT_MODE_BLE, // 仅BLE模式BT_MODE_CLASSIC, // 仅经典蓝牙模式BT_MODE_DUAL // 双模模式(BLE+经典蓝牙)/*** @brief 蓝牙角色枚举*/BT_ROLE_PERIPHERAL = 0, // BLE外设模式。

2025-04-14 19:37:39 791

原创 注册函数动态切换回调函数的实现方法

【代码】注册函数动态切换回调函数的实现方法。

2025-04-13 23:29:15 66

原创 线程池管理及FreeRTOS示例

线程池管理是一种多线程处理技术,它预先创建并维护一组线程(在FreeRTOS中称为任务),当有任务需要执行时,从池中取出空闲线程来执行,执行完成后线程返回池中等待下一次任务,而不是销毁线程。

2025-04-10 11:08:24 224

原创 软件运行架构设计

-------------------------细化某个模块(如规则引擎的并发策略)----------------------------------------------是否需要进一步探讨如何将此架构映射到具体代码实现(如C++线程池/Java虚拟线程)?以下针对智能家居SDK中。

2025-04-10 10:44:30 773

原创 结构体指针和结构体作为函数参数主要区别

特性结构体作为参数结构体指针作为参数传递方式按值传递(传递副本)按引用传递(传递地址)性能复制开销大,性能较低仅传递地址,性能高是否修改原始数据不会修改原始结构体会修改原始结构体适用场景结构体较小,且不需要修改数据结构体较大,或需要修改数据在实际开发中,结构体指针作为参数更为常见,因为它更高效且更灵活,尤其是在需要修改结构体内容或处理大型结构体时。

2025-04-09 09:57:08 242

原创 物联网中的物模型是什么意思,在嵌入式软件开发中如何体现?

物模型是物联网设备与平台交互的核心,通过定义属性、事件和服务,统一描述设备的能力和行为。在嵌入式开发中,物模型通过解析、实现和通信,将抽象描述映射到具体的硬件操作,简化了开发流程,提高了系统的灵活性和可扩展性。物模型(Thing Model)是物联网中对物理设备或虚拟设备的抽象描述,定义了设备的属性、事件和服务。它是设备与云平台或其他设备之间交互的基础,用于统一描述设备的能力和行为。在嵌入式软件中实现物模型定义的属性、事件和服务。根据设备的功能,使用JSON或其他格式定义物模型。

2025-03-28 14:17:48 597

原创 cmake教程

它使用 CMakeLists.txt 文件来配置项目的构建过程,并生成适用于不同编译器和操作系统的构建文件(如 Makefile、Visual Studio 项目文件等)。以下是一个简单的 CMake 教程,帮助你快速上手。如果你的项目需要使用库,可以在 CMakeLists.txt 中添加库的依赖。首先,你需要在你的系统上安装 CMake。这将在 build 目录下生成适用于你的系统的构建文件(如 Makefile)。在 Windows 上,你可以下载并安装 CMake 的安装程序。

2025-03-20 23:58:33 416

原创 如何修改word文档的目录字体为指定字体大小

返回文档后,Word会提示是否更新目录,选择。在“修改样式”窗口中,设置字体为。在弹出的“目录”对话框中,点击。选中目录内容(点击目录区域)。打开包含目录的Word文档。(二级目录)等,然后点击。在“样式”窗口中,选择。在顶部菜单栏中,点击。

2025-03-20 11:33:57 934

原创 在 ARM 嵌入式 Linux 下使用 C/C++ 实现 MQTT

在 ARM 嵌入式 Linux 下使用 C/C++ 实现 MQTT 通信是一个常见的需求,尤其是在资源受限的环境中。以下是一个详细的教程,使用库来实现 MQTT 客户端。

2025-03-17 11:41:23 729

原创 ens33没有分配到IPV4问题

从你给出的错误信息来看,在执行命令时碰到问题,原因是ens33网络接口没有分配到 IPv4 地址。

2025-03-14 19:06:14 1068

原创 加密流程和相关算法设计实现

是确保数据安全的关键措施。以下是完整的加密流程和相关算法设计实现。通过以上设计和实现,可以确保敏感数据在传输和存储过程中的安全性。

2025-03-14 16:08:48 344

原创 什么是Mbed TLS

Mbed TLS是一个轻量级、开源的加密库,旨在为嵌入式系统和其他资源受限的环境提供安全通信和数据保护功能。

2025-03-10 14:51:00 327

原创 vmware下ubuntu无法上网,电脑通过wifi连网

VMware Tools 提供了虚拟机与宿主机之间的增强功能,包括网络优化。VMware 提供了几种不同的网络连接模式,如桥接模式、NAT 模式、仅主机模式。若没有分配到有效的 IP 地址,可能是 DHCP 服务未正常工作。打开 Ubuntu 虚拟机的终端,使用。

2025-02-18 23:12:52 877

原创 ubuntu下安装TFTP服务器

通过以上步骤,你就可以在 Ubuntu 系统下成功安装和配置 TFTP 服务器。如果上传和下载操作都能正常完成,则说明 TFTP 服务器已经成功安装和配置。用户和组,并设置该目录及其子目录的权限为 777,以允许读写操作。安装完成后,需要对 TFTP 服务器进行配置。下载:ttfp -g -r 文件名 服务器IP地址。上行:tftp -p -r 文件名 服务器IP地址。客户端来验证服务器是否正常工作。命令上传一个文件,或使用。TFTP 服务器通常使用。

2025-02-17 15:25:39 700

原创 嵌入式linux下如何通过IIS接口驱动实现录制pcm音频

在嵌入式 Linux 下,通常使用 ALSA(Advanced Linux Sound Architecture)而不是 IIS(Internet Information Services,它主要用于 Windows 上的 Web 服务,这里你可能想说的是 I2S,Inter - Integrated Sound,一种音频串行接口标准)接口来驱动实现录制 PCM 音频。

2025-02-12 09:37:22 548

原创 linux利用nfs服务器,实现数据和windows环境拷贝

现在,你可以在Windows和Linux之间自由地复制数据。例如,你可以将文件从Linux的共享目录复制到Windows,或者将文件从Windows复制到Linux的共享目录。通过以上步骤,你可以在Linux和Windows之间通过NFS实现数据共享和拷贝。接下来,你需要在Linux服务器上创建一个目录,并配置NFS共享该目录。重启后,你可以使用PowerShell或命令提示符来挂载NFS共享目录。盘符,文件会自动同步到Linux服务器的共享目录中。当你不再需要使用NFS共享目录时,可以将其卸载。

2025-02-10 19:54:10 33903

原创 linux编译 main.cpp 和 SerialPort.cpp 脚本编写例子

同一目录中,然后在终端中运行。

2025-02-10 14:06:33 156

原创 信噪比SNR>=90db解析

SNR >= 90 dB” 是指信号与噪声比(Signal-to-Noise Ratio,简称SNR)大于或等于90分贝(dB)。SNR 是一个衡量信号质量的参数,用于描述信号强度与背景噪声强度的比值。当SNR大于或等于90 dB时,表示信号的功率是噪声功率的 109109 倍。这意味着信号远强于噪声,信号质量非常高。“SNR >= 90 dB” 表示信号质量非常高,信号远远强于背景噪声。SNR (dB)=10×log⁡10(信号功率噪声功率)SNR (dB)=10×log10​(噪声功率信号功率​)

2025-01-23 11:14:16 558

原创 离线语音唤醒开发流程

离线语音唤醒功能是一种在设备本地处理语音命令,无需连接互联网即可识别特定唤醒词的技术。这在智能家居设备、智能音箱等场景中广泛应用,以提高用户体验并保护用户隐私。:比如您已经选择了RV1109芯片,这是一个基于RISC-V架构的处理器,具有一定的计算能力和低功耗特性,适合嵌入式应用。:首先,需要通过麦克风采集用户的语音输入,并进行预处理,如降噪、滤波等,以提高语音信号的质量。:将预处理后的语音信号转换为机器学习模型可以处理的特征,常见的特征包括MFCC(Mel频率倒谱系数)、谱图等。

2025-01-23 10:47:45 1059

原创 linux下判断客户端wifi模块是否从AP端断开

ping -c 4 8.8.8.8 看是否能ping 通。已断开:ESSID显示off/any。用iwconfig wlan0。已连接 ESSID显示连接名。

2024-12-19 19:57:22 146

原创 linux蓝牙模块和手机配对

通过上述步骤,你可以成功在 Linux 系统下将蓝牙模块与手机配对和连接。主要步骤包括启动 Bluetooth 服务、使用工具进行设备扫描、配对和连接。

2024-12-19 18:16:55 1271

原创 linux下蓝牙调试工具hcitool的使用

hcitool是一个用于蓝牙设备管理的命令行工具,主要用于查看和管理蓝牙设备。

2024-12-19 17:55:18 981

原创 word撤销按钮变灰色不可用的处理办法

或者点开始--运行--输这个命令 %appdata%\microsoft\templates 后再点确认,进这个目录里,把目录下的文件删除就行了。按键盘得:win+R 输入%appdata%\microsoft\templates。

2024-12-19 10:58:20 877

原创 arp-scan 移植到嵌入式 Linux 系统是一个涉及多个步骤的过程

将arp-scan移植到嵌入式 Linux 系统需要进行交叉编译,并确保所有的依赖库和工具都已经安装在嵌入式系统上。通过以上步骤,你应该能够成功地将arp-scan移植到嵌入式系统中,并在目标设备上运行。

2024-11-30 17:51:12 572

原创 局域网检测设备IP和mac地址

以上方法可以帮助你自动探测局域网中的MAC地址。选择最适合你环境的方法,并根据需要进行调整。

2024-11-30 14:55:17 3664

原创 Linux系统将某个动态链接库添加到系统环境变量中

如果你只需要临时添加一个库路径,使用环境变量是最简单的方法。如果你希望库路径在系统范围内生效,使用ldconfig和配置文件是更好的选择。如果你需要预加载某个库以覆盖系统函数,使用LD_PRELOAD环境变量。根据你的需求选择合适的方法来添加动态库到环境变量中。

2024-11-21 16:33:33 677

原创 linux查看可执行程序的依赖

如果你只想快速查看一个可执行程序依赖哪些共享库,推荐使用ldd命令。如果你需要更详细的信息,可以使用objdump或readelf命令。nm命令适合查看符号信息,lsof适合查看正在运行的进程的依赖库。这些工具在调试和分析程序依赖关系时非常有用。

2024-11-21 10:32:47 916 1

原创 ubuntu下交叉编译openssl的方法和步骤

交叉编译 OpenSSL 涉及在一种架构(如 x86_64)的系统上编译生成另一种架构(如 ARM)的可执行文件。

2024-11-10 10:00:21 933

原创 C++如何调用curl工具集?

在 C++ 中,可以通过系统调用方式直接使用curl命令,或者使用libcurl库来进行 HTTP 请求。

2024-10-28 16:00:48 395

原创 在 Linux 中运行可执行程序时,如果程序依赖的 .so 文件在当前目录下但系统找不到

最简单的方法是使用环境变量指定当前目录,这样无需修改系统设置或重新编译程序。如果可以重新编译程序,使用-rpath选项是更优雅的解决方案。如果.so文件是系统级别的,将其复制到标准库目录或修改也是可行的方法。

2024-10-27 10:05:35 788

原创 CentOS 自启动某个应用

以上步骤创建了一个 Systemd 服务,该服务会在网络启动后自动启动指定的应用程序。通过这种方式,你可以有效管理服务的启动、停止和重启等操作。

2024-10-23 10:45:24 681

原创 linux按键gpio状态读取c代码

执行make即可生成可执行文件。运行将间隔1s循环读取按键值。

2024-10-19 16:51:42 335

原创 Linux 系统中配置 Wi-Fi 接口作为客户端,并连接到 Wi-Fi 路由器

以上列出的方法适用于不同的 Linux 发行版和设置。是最普遍和推荐的方式,因为它提供了易于使用的命令行和图形界面。是一个强大的替代方案,适用于需要更细粒度控制的用户。此外,修改网络配置文件也是一种有效的方式,适合某些特定的安装和需要。

2024-10-14 15:02:13 1451

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除