- 博客(17)
- 问答 (1)
- 收藏
- 关注
原创 USB Gadget 子系统详解:OTG 口模拟各类 USB 外设
以下是≤150字的文章摘要: USB Gadget子系统允许Linux设备通过OTG口模拟各类USB外设。该框架分为三层:底层硬件驱动、中间Composite层和上层Function功能实现。内核提供丰富的Function驱动,包括U盘(f_mass_storage)、键盘鼠标(f_hid)、摄像头(f_uvc)、虚拟串口(f_acm)和网络设备(f_rndis)等。用户通过configfs接口动态配置所需功能,而普通USB-A口因硬件限制无法实现此功能。该技术广泛应用于嵌入式设备开发,可实现设备固件升级、
2026-07-23 17:54:38
206
原创 深度解析 Rockchip Linux SDK:bcmdhd 驱动架构、路径重定向机制及 AP6611S 适配
文章摘要 本文深度剖析了Rockchip RK3588 Linux SDK中bcmdhd WiFi驱动的架构与构建机制。分析表明,bcmdhd作为通用FullMAC驱动框架,其核心功能是提供标准接口和总线通信,而模组差异主要通过Firmware和NVRAM适配。SDK通过post-wifibt.sh构建调度脚本实现全生命周期管理,包括内核编译、固件部署和路径重定向,确保跨平台兼容性。驱动通过Chip ID匹配机制自动识别模组并加载对应固件,完整的初始化调用链从SDIO枚举到网络接口注册。文章揭示了无需修改驱
2026-07-22 11:27:06
348
原创 X-AnyLabeling 软件数据标注使用指南
本文介绍了使用X-AnyLabeling工具进行图像数据标注的完整流程。内容涵盖:1)手动标注操作,包括快捷键使用、类别文件准备和YOLO/VOC格式导出;2)AI自动标注方法,通过预训练模型实现快速标注;3)常见问题与建议,如类别顺序核对、数据划分比例等。该工具结合人工标注的精确性和AI标注的高效性,能显著提升目标检测数据集的构建效率,特别适合暹罗猫等特定对象的检测任务。
2026-06-24 18:03:02
1017
原创 互联网信任体系的底层密码:一文读懂 PKI、X.509、CA 与 RFC
X.509 是 PKI 体系中最核心的国际标准,由国际电信联盟(ITU-T)制定,精确规定了数字证书应该包含哪些信息,以及这些信息以何种结构进行组织,是数字证书的“通用语言”。目前全球通用的版本是X.509 v3。RFC(Request For Comments,征求意见稿)是互联网的基础性技术文档系列。它由IETF(互联网工程任务组)发布,可以看作是互联网的“法律条文集”,记录了所有核心技术标准的最终形态。
2026-05-28 19:15:11
414
原创 证书签发与密钥生成全流程图解
文章摘要 本文系统讲解了从证书签发到TLS握手的全流程,采用分层结构组织内容:第一层概述TLS/PKI主线流程;第二层深入算法原理;第三层探讨工程实践。核心内容包括:CA根证书自签过程(RSA-2048/SHA-256)、CSR请求格式(PKCS#10)、X.509证书结构、TLS 1.2握手关键步骤(ClientHello/ServerHello密钥协商),并对比TLS 1.3改进。文中明确标注各环节使用的算法位数(如RSA-2048、SHA-256输出32字节)及对应RFC标准,附录提供速查表。适合不同
2026-05-28 19:14:47
374
原创 CA 证书与私钥:为什么它能验证身份,有没有人能造假?
│ CA(公安局户籍科) ││ ││ ca.key (私章) │ ← 离线锁保险柜│ ca.crt (公章样本) │ ← 公开发给所有人│CA 用 ca.key 给证书盖章(签名)│▼ ▼│ 服务端证书 │ │ 客户端证书 ││ │ │ ││ 持有者: server │ │ 持有者: client ││ 签发者: MyCA │ │ 签发者: MyCA ││ [CA 的钢印] │ │ [CA 的钢印] ││ ││ 出示证书 + 私钥签名 │ 出示证书 + 私钥签名│ │▼ ▼。
2026-05-27 15:41:28
367
原创 K230 mTLS 重新发现支持过程——一次“假阴性“的纠正记录
K230 mTLS 支持验证过程记录 摘要:本文记录了从误判到重新发现K230完整支持双向TLS(mTLS)的过程。最初因参数名错误(keyfile/certfile→key/cert)和PEM格式问题得出"不支持mTLS"的错误结论。通过源码分析发现底层mbedtls完整支持双向认证,修正参数后仍因系统时间未同步导致证书验证失败。最终通过NTP校时解决了时间校验问题,成功验证了K230的mTLS能力。整个过程揭示了三个关键错误:参数名混淆、PEM格式错误和忽略时间校验要求。
2026-05-27 11:21:51
384
原创 K230 CanMV 物联网通信安全实战:TLS 加密 + 应用层 HMAC 认证方案全解析
本文探讨了在K230 CanMV开发板上实现物联网通信安全的解决方案。由于该MicroPython系统不支持TLS双向认证(mTLS),作者采用分层安全方案:传输层使用TLS加密和服务端验证,应用层通过HMAC认证解决客户端身份验证问题。文章详细记录了证书验证的踩坑过程,包括参数支持测试、密钥管理策略,并最终提出TLS+HMAC的混合认证方案,为受限设备实现企业级通信安全提供了实用参考。
2026-05-26 19:51:37
878
3
原创 关于盗版芯片keil5无法烧录问题
Connectionrefusedduetodevicemismatch!Device connected toDebug Unit is differentfromdeviceselectedforprojecttarget:STMicroelectronicsSTM32F103C8盗版芯片无法烧录
2024-11-12 10:52:19
2942
原创 anaconda创建虚拟环境,调用画图显示figure size 640x480 with 0 axes
在早期版本的Matplotlib中,或者在一些特定的场景下,你可能需要直接通过Axes3D类来创建三维坐标轴。这种方式通常需要你首先创建一个Figure对象,然后通过这个对象来实例化Axes3D对象。但是,这种方法现在已经被视为较旧或不推荐的方式。**把 ax = Axes3D(fig) 改成 ax = fig.add_subplot(projection=‘3d’) **通过这种方式,你可以很容易地控制子图的位置和大小,同时确保使用最新的三维绘图功能。使用了ax = Axes3D(fig)
2024-09-01 00:46:28
669
原创 关于 ..\OBJ\Temp.axf: Error: L6200E: Symbol Image multiply defined (by myfun.o and main.o).报错
关于 ..\OBJ\Temp.axf: Error: L6200E: Symbol Image multiply defined (by myfun.o and main.o).报错
2022-09-05 15:36:10
7177
原创 2021-08-19
python的np.nonzero返回的到底是元组还是nparray代码如下:import numpy as npfor i in range(1):a=np.zeros((7,7))a[1][2] = 50;a[1][4] = 40;a[1][5] = 25;a[1][6] = 10;a[2][3] = 15;a[2][4] = 20;a[2][6] = 25;a[3][4] = 10;a[3][5] = 20;a[4][5] = 10;a[4][6] = 25;a[5][
2021-08-19 14:24:58
141
原创 修改vc++程序发现一直LNK1168报错
修改vc++程序发现一直LNK1168报错修改vc++程序发现一直LNK1168报错LINK : fatal error LNK1168: cannot open Debug/渔夫打鱼还是晒网.exe for writing执行 link.exe 时出错.奇怪,既然link通过了,为什么还会报LNK错误呢。观察报错信息,里面提到了cannot open debug,不能打开编译!探索了一番,发现了原因:原来是上一次运行后,exe程序还开着。把exe程序关闭,再次Build,笑死~问题就解决了,谨
2021-03-20 10:27:41
565
空空如也
python的生成器对象遍历之后原生成器对象将不复存在吗
2021-03-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅