- 博客(1920)
- 资源 (19)
- 问答 (2)
- 收藏
- 关注
原创 【第1篇】 如何掌握中国AGV市场全貌:产业链解析与领军企业深度解读
AGV,即,是一种配备电磁、光学等自动导向装置的特种轮式移动机器人。它能遵循预定路径行驶,并实现精准导航、安全保障及多种负载搬运功能。AGV通常采用电池供电,并配置非接触式导向系统,在计算机监管下,按照预设路径和操作指令,自动行驶至目标位置,执行一系列工作任务。广泛应用于工业生产、物流运输、医疗服务、商业服务等多个领域。
2025-07-11 10:49:37
100
原创 【nRF】第10篇 operator new(unsigned int) 导致 abort() 问题分析
abort() (/home/www/ncs/v2.7.0/zephyr/lib/libc/common/source/stdlib/abort.c:14) operator new(unsigned int) (未知源:0)错误堆栈显示了一个致命错误,主要问题出现在内存分配失败。
2025-07-04 08:56:44
47
原创 【nRF】第9篇 输出Zephyr RTOS内核堆内存和标准C库malloc内存的管理统计
max_allocated_bytes:系统运行至今的。allocated_bytes:已被分配的内存总量。:统计信息直接读取堆管理器的元数据,开销极小。仅统计连续空闲块,碎片化时值会偏小。free_bytes:当前堆中。:嵌入式场景通常没有虚拟内存,
2025-07-03 17:34:35
44
原创 【nRF】第8篇 串口0配置中断模型 + 串口1配置异步模式(同时存在)
下的串口(UART)驱动模式,涉及。场景(如 CLI 交互)。处理接收/发送数据。,减少 CPU 负载。(如高速日志传输)。
2025-07-03 16:18:56
38
原创 【Ubuntu】ttyACM0 与 ttyS0 的区别与联系
都是串行通信设备,但它们的底层技术、驱动方式和使用场景有显著区别。在 Linux 系统中,
2025-07-02 13:56:18
889
原创 【nRF】第7篇 MCZ33996 SPI Control Commands(16 路低端驱动输出的控制逻辑)
MCZ33996智能开关驱动芯片功能解析 MCZ33996是一款16路低端开关驱动芯片,通过24位SPI接口控制,支持5-27V宽电压输入,单路输出限流0.9-2.5A,具备过温、短路保护功能。其核心功能包括: 基础控制:通过特定位编码实现开关通断、PWM调制、逻辑组合(AND/OR)及复位操作; 故障管理:集成开路检测、全局关断/重试和双模式故障保护(热保护或电压监测); 状态反馈:16路输出状态实时监测,故障标识位快速响应异常。 采用32引脚SOICW-EP封装,兼容3.3V/5V逻辑电平,适用于LED
2025-07-02 09:34:16
44
原创 【Git技巧】第十六篇 github 创建个人访问令牌
如果您有令牌,则可以在通过 HTTPS 执行 Git 操作时输入令牌,而不是密码。在任何页面的右上角,单击您的个人资料照片,然后单击。
2025-06-09 09:57:50
505
原创 【Git技巧】第十五篇 解决 fatal: 无法访问 ‘https://github.com/hbldh/bleak.git/‘:Failed to connect to 192.168.43.1
摘要:克隆GitHub项目bleak时出现连接失败问题,错误显示无法访问192.168.43.1端口65535。解决方法是通过git config命令查看并清除全局代理设置,使用git config --global --unset http.https://github.com.proxy移除针对GitHub的代理配置,从而解决连接拒绝问题。
2025-06-09 09:47:32
193
原创 【华为 OD】 字符串拼接(Pyhon/Java/JS/C/C++)
字符数量 ( M ) 满足 ( 0 < M \leq 30 )),从中选取字符(每个字符只能使用一次)拼接成长度为 ( N )(满足 ( 0 < N \leq 5 ))的字符串。要求拼接的字符串中,相同的字符不能相邻。计算给定的字符列表能拼接出多少种满足条件的字符串。我们需要从给定的字符列表中选取字符,生成长度为 ( N ) 的字符串,且相邻字符不能相同。所有实现均通过回溯算法生成满足条件的字符串,时间复杂度为 ( O(M^N) ),适用于题目中的最大数据规模。给定一个字符列表(字符范围为。
2025-03-06 17:30:40
144
原创 【华为 OD】 发广播(Pyhon/Java/JS/C/C++)
广播的传播规则是:如果一个站点收到广播,它会将广播发送给所有与之连接的站点。现在需要发送一条广播,问最少需要初始发送给多少个广播站,才能确保所有广播站都收到消息。可以将广播站视为图中的节点,连接关系视为边。问题转化为:在图中找到最少的节点集合,使得这些节点能够覆盖整个图的所有连通分量。某地有 ( N ) 个广播站,站点之间通过连接互相发送广播。给定一个 ( N \times N ) 的二维矩阵。所有实现均通过DFS找到连通分量,时间复杂度为 ( O(N^2) ),适用于题目中的最大数据规模。
2025-03-06 15:46:21
128
1
原创 【华为 OD】工单调度策略(Pyhon/Java/JS)
华为工单调度系统需要调度外线工程师(FME)处理工单。每个工单有一个SLA时间(完成修复的最长时间)和一个积分值。如果在SLA时间内完成工单,则获得对应的积分;否则不获得积分,但必须完成该工单。目标是设计一种调度策略,使得外线工程师在完成所有工单的情况下,获得的总积分最大。所有实现均通过贪心算法确保获得最大积分,时间复杂度为 ( O(N \log N) ),适用于题目中的最大数据规模。我们需要在有限的时间内(SLA时间)选择积分最大的工单进行处理。
2025-03-06 15:38:26
105
原创 【华为 OD】最优资源分配(JS)
芯片容量:每块芯片的容量为M × 1.25G,资源编号为1, 2, …, M。配置类型A:占用1.25G(1 个资源)。B:占用2.5G(2 个资源)。C:占用10G(8 个资源)。分配规则按芯片编号从小到大分配资源。如果某个配置超过芯片剩余容量,则丢弃该配置。输出:输出每块芯片的资源占用情况,占用标记为1,未占用标记为0。
2025-03-06 15:32:22
73
原创 【华为 OD】最优资源分配(Java)
芯片容量:每块芯片的容量为M × 1.25G,资源编号为1, 2, …, M。配置类型A:占用1.25G(1 个资源)。B:占用2.5G(2 个资源)。C:占用10G(8 个资源)。分配规则按芯片编号从小到大分配资源。如果某个配置超过芯片剩余容量,则丢弃该配置。输出:输出每块芯片的资源占用情况,占用标记为1,未占用标记为0。
2025-03-06 15:26:57
64
原创 【华为 OD】最优资源分配(python)
芯片容量:每块芯片的容量为M × 1.25G,资源编号为1, 2, …, M。配置类型A:占用1.25G(1 个资源)。B:占用2.5G(2 个资源)。C:占用10G(8 个资源)。分配规则按芯片编号从小到大分配资源。如果某个配置超过芯片剩余容量,则丢弃该配置。输出:输出每块芯片的资源占用情况,占用标记为1,未占用标记为0。
2025-03-06 15:17:45
66
原创 【ubuntu】解决 ubuntu 与 windows 文件拖拽复制功能实现(亲测有效)
【代码】【ubuntu】解决 ubuntu 与 windows 文件拖拽复制功能实现(亲测有效)
2025-02-06 15:54:21
576
1
原创 【nRF】第6篇 GPIO 配置
在这种方法中,一旦引脚的状态发生变化,硬件就会通知CPU。这是读取输入引脚的推荐方法,因为它使 CPU 免于重复轮询引脚状态的负担。从性能和功耗的角度来看,这通常不是最佳的,因为它需要 CPU 的持续关注。要读取引脚的当前状态,所需要做的就是调用该函数。是一种设备树的别名获取方式,通常与设备树中的节点定义一致。是该节点的 GPIO 引脚配置,它告诉系统如何配置和控制与 LED 相关的 GPIO 引脚。读取配置为输入的引脚并不像写入配置为输出的引脚那么简单。只能在配置为输入的 GPIO 引脚上配置中断。
2025-01-24 15:07:37
93
原创 【nRF】第5篇 添加构建配置参数介绍
在第3步选择模板时,你将看到至少一个基础应用程序配置文件prj.conf。prj.conf如果模板中包含多个配置文件,它们的具体说明会在模板的文档中找到。以blinky模板为例,它只有一个配置文件选项。这个配置选项相当于在west中的(以及CONF_FILE。
2025-01-24 09:26:53
70
原创 【ESP32-S3】第19篇 LCD的 MCU 接口和 SPI 接口详解
当D/CX信号拉低时,接口上的输入数据被认为是command地址信息。当D/CX信号拉高时,接口上的数据是SRAM数据或command 参数信息。当D/CX信号拉低时,接口上的输入数据被认为是command地址信息。目前最常用的连接模式,主要用于单片机领域里,因此得名MCU接口,现在很多中低端的手机,或手表有在使用,价格较为便宜。当然还有其他接口,比如LVDS接口、DSI接口、EDP接口、RGB接口、MIPI接口等,其中很多接口并不常用,有些安排下篇文章分享,所以在这里就不在详述。
2025-01-17 13:49:51
540
原创 【nRF】第0篇 在 ubuntu 上安装 nRF Connect SDK (vscode)
Zephyr系统是Linux基金会维护的一个项目,除了一个基本的Zephyr RTOS之外,还有很多方便的第三方软件库,像是MCUBoot、TCP/UDP/MQTT/TLS等网络库等等。nRF Connect SDK是Nordic最新的SDK平台,该平台支持Nordic所有产品线的所有技术,包括BLE,AoA,NFC,蜂窝网与GPS,Wi-Fi,2.4G,蓝牙Mesh,Zigbee,Thread,Matter, Homekit, FindMy等。通过网盘分享的文件:v2.7.0.tar.gz。
2025-01-16 13:56:46
243
2
原创 【ESP32-S3】第18篇 配置工程常用命令
这样做会导致在每个终端会话中都激活 IDF 虚拟环境(包括无需使用 ESP-IDF 的会话)。这违背了使用虚拟环境的目的,还可能影响其他软件的使用。运行以上命令可以编译应用程序和所有 ESP-IDF 组件,接着生成引导加载程序、分区表和应用程序二进制文件。此时,就可以在启动日志和诊断日志之后,看到打印的 “Hello world!ESP-IDF 支持擦除 flash。现在,请将 ESP32-S3 开发板连接到 PC,并查看开发板使用的串口。擦除 flash 需要一段时间,在擦除过程中,请勿断开设备连接。
2025-01-07 11:27:11
211
原创 【ESP32-S3】第17篇 ESP 系列芯片和模组
ESP32-S3-DevKitM-1 是一款入门级开发板,搭载的是 Wi-Fi+蓝牙 LE 模组 ESP32-S3-MINI-1 或 ESP32-S3-MINI-1U,该款模组因小尺寸而得名。通常能够加速产品的上市速度,因为预先集成了无线功能(如Wi-Fi、蓝牙)并具备相关认证。: ESP32-S3-DevKitM-1 是一款入门级开发板,可以用来烧录和体验 IDF 中的 examples。ESP32-S3-DevKitM-1 - ESP32-S3 - — esp-dev-kits latest 文档。
2024-12-23 16:03:14
215
原创 【C语言】14:ec:6a:50:7b:58 字符串拆分并存入 uint8_t arr[6] 中
可以使用sscanf()函数来解析这些 16 进制数字并存入数组。
2024-11-15 15:27:24
149
原创 【ESP32】第15篇 OTA(Over-The-Air)升级
OTA 功能启动后,向当前未用于启动的 OTA 应用分区写入新的应用固件镜像。要运行 OTA 机制,需配置设备的分区表,该分区表至少包括两个 OTA 应用程序分区(即 OTA0 和 OTA1)和一个 OTA 数据分区。步骤 3:固件升级成功,OTA Data 分区已更新,并指示 OTA 1 现在是活动分区。下次启动时,固件将从此分区启动。步骤 0:OTA 0 为活动固件,该信息储存在 OTA Data 分区(如图所示)。步骤 1:固件升级开始,识别并擦除非活动分区,新的固件将写入 OTA 1 分区。
2024-11-01 14:22:06
488
原创 【ESP32】第14篇 ESP-Bluedroid 接口说明
esp_err_t esp_ble_gattc_open(esp_gatt_if_t gattc_if, esp_bd_addr_t remote_bda, esp_ble_addr_type_t remote_addr_type, bool is_direct):打开连接。esp_err_t esp_ble_gap_read_rssi(esp_bd_addr_t remote_addr):读取RSSI信号强度,结果通过 ESP_GAP_BLE_READ_RSSI_COMPLETE_EVT 事件触发返回。
2024-11-01 14:11:25
178
原创 【ESP32】第13篇 ESP-NimBLE 实用技巧与案例
conn_handle, 连接句柄,用于确定访问哪一个 GATT 服务器;cb,自定义的收到响应时调用回调函数,主服务发现回调函数;cb_arg, 自定义的回调函数参数。
2024-11-01 14:09:52
770
原创 【ESP32】第12篇 Bluetooth LE 协议软件架构
应用层即以 Bluetooth LE 为底层通信技术所构建的应用,依赖于主机层向上提供的 API 接口。
2024-11-01 13:39:23
104
原创 【ESP32】第11篇 解决***ERROR*** A stack overflow in task Tmr Svc has been detected.
A stack overflow in task Tmr Svc has been detected” 这个错误消息表示 FreeRTOS 的定时器服务任务(Timer Service Task)发生了堆栈溢出。定时器服务任务的堆栈大小可能设置得不够大。如果你在定时器的回调函数中执行了复杂的操作,使用了大量的局部变量或递归调用,这可能会导致堆栈溢出。虽然错误提示是关于定时器服务任务,但其他任务如果使用了过多的堆栈,也可能间接影响到定时器服务任务。
2024-11-01 11:01:04
520
原创 【ESP32】第10篇 GATT 客户端多连接示例演练(一主多从)
本文档介绍了 ESP32 的多连接 BLE GATT 客户端示例。在此实现中,单个 ESP32 作为 GATT 客户端同时连接到三个不同的 GATT 服务器。此设置说明了 ESP32 设备的用例,该设备以某种方式运行,以便从不同的 BLE 传感器接收数据。IDF为每个BLE服务创建一个单独的配置文件,应用配置文件以ID号单独定义。
2024-10-25 10:23:50
207
原创 【ESP32】第9篇 认识蓝牙 GATT 协议
ATT 的全称是属性协议 (Attribute Protocol, ATT),定义了一种称为属性 (Attribute) 的基本数据结构,以及基于服务器/客户端架构的数据访问方式。GATT 的全称是通用属性规范 (Generic Attribute Profile),在 ATT 的基础上,定义了以下三个概念特征数据 (Characteristic)服务 (Service)规范 (Profile)特征数据和服务都是以属性为基本数据结构的复合数据结构。一个特征数据往往由两个以上的属性描述,包括。
2024-10-24 15:02:15
167
原创 【ESP32】第8篇 使用 OpenSSL 生成 RSA 密钥对并对固件进行签名
使用 OpenSSL 生成 RSA 密钥对并对固件进行签名的过程可以分为几个步骤。以下是详细的说明,包括生成密钥对、对固件进行签名以及验证签名的步骤。
2024-10-17 14:54:44
267
原创 【ESP32】第7篇 使用 app_update 组件提供的原生API 升级 OTA
【ESP32】第7篇 使用 app_update 组件提供的原生API 升级 OTA。
2024-10-15 13:34:18
181
原创 【ESP32】第6篇 要使用 Python 的 http.server 模块构建一个 HTTPS 服务器
要使用 Python 的模块构建一个 HTTPS 服务器,需要使用ssl模块为 HTTP 服务器添加 SSL/TLS 支持。
2024-10-14 11:31:23
184
原创 【ESP32】第5篇 提供的日志信息分析ESP32成功连接到了Wi-Fi网络
从你提供的日志信息来看,ESP32成功连接到了Wi-Fi网络。通过这些信息,你可以确认ESP32已经正常连接到Wi-Fi网络,并获得了有效的IP地址。设备成功获取到IPv4地址(192.168.118.75),子网掩码和网关信息。日志显示设备状态从初始化状态变为认证、关联,然后进入运行状态。成功连接到Wi-Fi网络,并显示了相关信息如信道和BSSID。设备检测到密码长度符合WPA2标准,自动调整连接模式。设备开始尝试连接到名为“fjf”的Wi-Fi网络。设备也成功获取到一个链接本地的IPv6地址。
2024-10-14 11:13:42
306
原创 【ESP32】第4篇 OTA 流程概览 与 OTA 数据分区
工厂启动设置下,OTA 数据分区中应没有数据(所有字节擦写成 0xFF)。如果分区表中没有工厂应用程序,则启动第一个可用的 OTA 分区(通常是。OTA 数据分区的容量是 2 个 flash 扇区的大小(0x2000 字节),防止写入时电源故障引发问题。OTA 功能启动后,向当前未用于启动的 OTA 应用分区写入新的应用固件镜像。镜像验证后,OTA 数据分区更新,指定在下一次启动时使用该镜像。第一次 OTA 升级后,OTA 数据分区更新,指定下一次启动哪个 OTA 应用程序分区。
2024-10-14 09:49:15
240
原创 【ESP32】第3篇 Single factory app, no OTA 与 Factory app, two OTA definitions 的含义
分区表中定义了三个应用程序分区,这三个分区的类型都被设置为 “app”,但具体 app 类型不同。其中,位于 0x10000 偏移地址处的为出厂应用程序 (factory),其余两个为 OTA 应用程序(ota_0,ota_1)。新增了一个名为 “otadata” 的数据分区,用于保存 OTA 升级时需要的数据。flash 的 0x10000 (64 KB) 偏移地址处存放一个标记为 "factory" 的二进制应用程序,且启动加载器将默认加载这个应用程序。
2024-10-14 09:42:43
446
原创 【ESP32】第2篇 ESP32分区表概述
分区表的长度为 0xC00 字节,最多可以保存 95 条分区表条目。MD5 校验和附加在分区表之后,用于在运行时验证分区表的完整性。每片 ESP32 的 flash 可以包含多个应用程序,以及多种不同类型的数据(例如校准数据、文件系统数据、参数存储数据等)。分区表中的每个条目都包括以下几个部分:Name(标签)、Type(app、data 等)、SubType 以及在 flash 中的偏移量(分区的加载地址)。在以上两种选项中,出厂应用程序均将被烧录至 flash 的 0x10000 偏移地址处。
2024-10-14 09:35:30
317
原创 【ESP32】第1篇 设置 idf.py 为全局命令
要确保的 alias 在每个新的终端会话中有效,可以将其添加到。注意:要使用自己电脑esp-idf目录。
2024-10-14 09:07:52
316
原创 【Qt】QTabWidget 中使用 removeTab() 方法时,索引会随标签页的移除而发生变化
在QTabWidget中使用方法时,索引会随标签页的移除而发生变化。这意味着当从QTabWidget中移除某些标签页后,后续标签页的索引也会被调整。因此,如果先移除索引为 1 的标签页,原本索引为 2 的标签页将会变为索引 1。
2024-10-10 09:37:24
273
LTE基站概述,基站不是孤立存在的,它仅仅属于网络架构中的一部分,它是连接移动通信网和用户终端的桥梁。
2022-04-03
基站是移动通信中组成蜂窝小区的基本单元,主要完成移动通信网和移动通信用户之间的通信和管理功能,从狭义上就可以把基站理解成一种无线
2022-04-03
TE预认证录像拍摄指导书
2022-04-03
单站验证概述通信网络由众多基站组成, 这些基站在初始建立完成
2022-04-03
一个基站单验,一般包含以下几种业务: ATTACH(附着)、 DETACH(去附着)、 上传、下载、 ping、 DT 路测等。
2022-04-03
单验常用软件介绍,通常需要用到的软件有 CDS 软件
2022-04-03
微慕WordpPress小程序开源版 前端
2023-03-26
学生宿舍管理系统(SSM/Layui框架)
2023-03-26
灰色预测模型 GM(1,1)
2023-03-26
各行各业程序员简历模板列表
2023-03-26
Python教程大全入门到实战
2023-03-26
基于matlab程序的各种回归、分类算法实现
2023-03-26
根据LTE站点双工方式的不同,对TDD和FDD站点配置进行分类介绍。
2022-04-03
数据分析,数据分析是单验的一个重要部分,主要是对外场测试的 LOG 进行分析,撰 写单验报告等。 本章将介绍后台分析软件的使用。
2022-04-03
LTE基站类型根据不同的划分方式,有不同的分类。根据基站覆盖的环境和模型不同,可以分为宏站和室分站;根据LTE采用的双工方式不同
2022-04-03
C语言之趣味游戏项目设计.rar
2022-03-17
nRF52840DK-DW3-QM33-SDK-UCI-FreeRTOS-0-1-1
2024-05-31
C语言源码及文档系统编程
2024-05-31
在 MATLAB 和 Simulink 中实现 PID 控制器模糊增益调度
2023-12-27
使用ICA的投资组合优化
2023-12-27
使用PSO的固定特征选择
2023-12-27
使用SA和ACO的固定特征选择
2023-12-27
使用GA的二进制特征选择
2023-12-27
数据处理分组法 (GMDH) 在 MATLAB 中的实现
2023-12-27
使用遗传算法和粒子群算法实现训练ANFIS
2023-12-27
使用ANFIS的非线性回归
2023-12-27
二进制遗传算法python实现
2023-12-27
实数编码遗传算法(Real-coded Genetic Algorithm)
2023-12-27
二进制遗传算法(Binary Genetic Algorithm)
2023-12-27
使用SPEA2进行投资组合优化(圣诞节)
2023-12-27
使用NSGA-II的投资组合优化
2023-12-27
使用PSO的投资组合优化
2023-12-27
使用经典方法进行投资组合优化
2023-12-27
校园帮项目,毕业设计/课程设计/javaWeb/SSM
2023-03-26
最接近原生APP体验的高性能前端框架(电商)
2023-03-26
基于AdaBoost算法的情感分析研究
2023-03-26
本地redis客户端订阅EdgeX中的消息总线获取数据(没有成功获取数据)
2022-04-11
怎样给Qlist容器赋初始化值?
2021-11-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人