- 博客(84)
- 资源 (3)
- 收藏
- 关注
原创 canfd扩展帧简介
CAN FD(Flexible Data-rate)是在经典 CAN 基础上的增强协议,扩展帧则是在 CAN/CAN FD 中使用 29 位标识符的帧格式。两者结合后,就是 CAN FD 扩展帧(29-bit ID + FD 特性)。CAN FD 扩展帧 = 用 29 位 ID 做“协议头”,用 64 字节 DATA 做“负载”,再用高速数据段保证实时性。如果你需要,我可以再给你一份SPI↔CANFD 网关里,扩展帧 ID 规划的工业级设计模板,直接可用于你现在的项目。
2026-01-26 08:42:25
322
原创 全面解析CAN FD扩展帧:技术演进与应用优势
CAN FD扩展帧是CAN FD协议中用于传输数据的一种帧格式。它建立在传统CAN扩展帧的基础上,但进行了关键的性能强化。其核心特征在于可变的数据场传输速率和更大的数据负载。简单来说,传统的CAN扩展帧数据场最多容纳8字节,且在整个传输过程中波特率固定。而CAN FD扩展帧在仲裁段(用于决定总线访问权的部分)仍使用标准的波特率(通常≤1 Mbps),一旦仲裁获胜,切换到数据场时,传输速率可以显著提升(最高可达5 Mbps甚至更高),同时数据场长度也扩展至最多64字节。
2026-01-26 08:39:02
588
原创 从多仓库到单仓库:如何高效迁移并统一管理多个Git项目
从多仓库向单仓库迁移是一项系统工程,需要精心规划和细致执行。通过合理使用Git高级工具(如subtree),可以在保留历史的同时实现平滑过渡。迁移后,团队将享受统一依赖管理、跨项目重构便利和标准化流程带来的长期收益。记住:充分测试是成功迁移的关键。如果您觉得这篇迁移指南有帮助,想获取更多Git高级技巧、 DevOps实践和工程效能提升的深度内容,请关注我!我将持续分享一线实战经验,助您构建更高效的开发工作流。
2026-01-22 09:11:53
642
原创 git add . 是否会包含.o、.so、.ko文件?深度解析与避坑指南
git add .确实会包含.o、.so和.ko文件,但这并非Git的设计缺陷,而是灵活性的体现。始终为项目配置.gitignore文件:根据语言或框架(如GitHub提供的模板),定制忽略规则。谨慎使用git add .:在运行前,可先用git status查看更改,或使用git add -u仅添加已跟踪文件的修改。定期检查仓库内容:避免二进制文件意外提交,保持仓库精简。通过合理使用.gitignore,您可以充分发挥git add .的便利性,同时避免不必要的文件干扰。
2026-01-22 09:08:46
315
原创 Git强制添加的真相:当 git add . -f 遇上 .gitignore
在 Git 的世界里,.gitignore文件扮演着的角色,而中的-f(force)标志则是一把。这把钥匙能打开守卫者把守的大门,让本应被忽略的文件强行进入暂存区。
2026-01-22 08:54:00
930
原创 CAN FD帧类型详解:数据帧、远程帧、错误帧与过载帧
CAN FD通过四种帧类型的协同工作,构建了一个可靠、高效的车载网络通信体系。数据帧承担高效数据传输,远程帧实现数据请求,错误帧和过载帧则共同保障了通信的可靠性与实时性。理解这些帧类型的功能与交互,是设计和调试CAN FD网络的基础。
2026-01-06 14:12:00
653
原创 DRM 设备 简介
DRM 是一个重要的图形渲染层,提供了对 GPU 的高级管理和资源分配。它在现代 Linux 图形栈中扮演着关键角色,使得开发者能够创建高性能的图形应用和游戏。通过抽象和优化硬件资源,DRM 确保了图形和视频的流畅播放。
2025-12-25 08:42:35
330
原创 Mali-G610 简介
Mali-G610 GPU 的引入使得 ARM 在图形处理领域进一步增强了竞争力,适合需要强大图形性能的移动应用和嵌入式设备。其优化的性能和能效,为用户提供了出色的使用体验。
2025-12-25 08:31:19
433
原创 小姨子的称呼从何而来?一篇说清楚的文化小史
在日常生活中,“小姨子”这个称呼几乎无人不懂,但它究竟从何而来?传统大家庭缩小为核心家庭后,最常来往的亲戚就是岳家,因此“小姨子”的称呼使用频率大幅提升。古代戏曲、章回小说中常写“姐夫”“小姨子”的桥段,使其文化流行度进一步加深。“小姨子”一词源于古代“以妻为尊”的亲属称谓体系,原意正式、传统、礼貌。在古代,“姨”本意是指母亲的姐妹,也就是我们今天说的“姨妈”。因此,称呼妻子的姐妹为“姨”,本质上是一种亲上加亲的礼貌方式。其中“小姨子”使用频率最高,逐渐成为大众口语中的固定称呼。
2025-11-27 16:37:26
53682
原创 深入浅出讲透 Docker:它到底是什么,又能做什么?
无论你是程序员、运维人员,还是刚入门的新手,只要接触到“部署”“环境”“服务器”等词汇,Docker 几乎都会被提到。无论你是开发者、测试工程师、运维,还是学生,只要和软件相关,Docker 都能让你的工作更高效。它让环境部署不再痛苦,让应用上线更加顺滑,让微服务成为可能,也推动云计算进入新阶段。它不是虚拟机,但能让你的程序像运行在隔离的环境中一样,不受系统差异影响。如果你还不会 Docker,现在是学习它的最佳时机。测试人员再也不要“你给我的环境不对”的困扰。每个容器都是独立的“小房间”,互不影响。
2025-11-26 09:07:21
1048
原创 RK3588 使用的 build.sh 的优点
支持丰富选项,如 -d 指定设备(如 rk3588-evb1-lp4-v10)、-J 设置并行编译线程、-v 选择 user/userdebug 模式、-o 生成 OTA 包、-u 打包 update.img 等。自动处理 U-Boot、Kernel、Recovery、Buildroot 等组件的交叉编译,支持预设工具链(如 aarch64-gcc-arm-10.3),并集成分区表(parameter.txt)和第三方依赖(如 dl.tgz 包),避免手动下载和配置。
2025-11-25 11:31:43
54
原创 bootargs中参数含义
通常是厂商在打包 boot.img 或在 U-Boot 脚本里写两遍:第一遍放通用参数,第二遍让设备树或脚本再追加特定参数(如 androidboot.mode 等),防止被覆盖。很多安卓系统、老版本 Docker、OpenWrt 仍依赖 cgroup v1,加这句避免 systemd 默认切到 v2,导致容器起不来。尤其在 eMMC/SD 卡启动时,设备可能初始化较慢,加这个参数内核会一直等,直到根设备出现。cgroup_memory=1 或 cgroup_enable=memory。
2025-11-25 10:27:16
65
原创 那个厂家生产的:ZCAN_USBCANFD_100U
ZCAN_USBCANFD_100U”是由生产的。这是一款高性能的USB转CAN FD接口卡。
2025-11-22 11:12:53
75
原创 用Sphinx+Read the Docs搭建专业文档指南
🛠️可避免缓存问题,使安装更干净。📂🎨Sphinx 默认主题为alabaster,需修改为或手动编辑,找到html_theme✨用浏览器打开查看效果。🌐🔧。
2025-11-21 14:15:24
231
原创 remoteproc_core.c 中rproc_init_sysfs函数分析
函数负责初始化Linux内核中Remoteproc子系统的sysfs接口,为远程处理器(Remote Processor)设备提供用户空间可访问的控制和监控接口。该函数通过注册设备类和属性组,使每个Remoteproc设备在目录下生成标准化接口文件。
2025-11-20 15:07:59
125
原创 remoteproc_core.c 框架内容分析
通过链表管理各种资源(carveouts、mappings、traces、rvdevs等),便于资源的分配和释放。这个框架提供了一个完整且灵活的远程处理器管理解决方案,支持多种平台和不同类型的协处理器。结构体实现平台特定操作的回调函数,实现了框架与平台实现的解耦。:远程处理器核心结构体,包含处理器状态、操作函数、内存列表等。使用状态机管理远程处理器的生命周期,确保正确的操作顺序。:虚拟设备结构体,用于 virtio 设备管理。:子设备结构体,用于管理附加功能模块。使用 rproc_ops。
2025-11-20 14:59:49
591
原创 Linux remoteproc驱动架构分析
debugfs节点暴露处理器状态和日志缓冲区: /sys/kernel/debug/remoteproc/remoteprocX/ 包含firmware、state、trace等可读写节点 crash_handler模块实现核心转储功能。资源表解析识别carveout内存区域和virtio设备配置,通过rproc_handle_resources完成资源注册。remoteproc_core.c是框架核心实现文件,包含远程处理器的生命周期管理、固件加载机制和内存映射处理。
2025-11-20 14:53:26
336
原创 告别卡顿!让你的安卓手机再用三年:深度清理与设置指南
安卓手机真正的卡顿元凶不是硬件老,而是:自启动混乱应用权限放飞后台偷跑缓存堆积动画与广告拖慢系统存储空间爆满只要做一次系统级深度清理,多数手机都能“年轻三岁”。
2025-11-20 09:39:17
1545
原创 CAN 通信的仲裁机制(Arbitration)
每个节点一边发送,一边监听总线(总线状态反馈)。如果一个节点发送 1(隐性),但总线上为 0(显性),→ 它发现有人优先级更高→立即停止发送,进入接收模式继续发送的节点是 “ID 最小” 的那一个。ID 越小优先级越高(因为 0 更“强”)。项目规则仲裁阶段只在ID 区域 + RTR + IDE 部分进行优先级依据ID 越小优先级越高信号规则显性(0)覆盖隐性(1)冲突处理自动退出,不重传数据,不破坏总线扩展帧优先级扩展帧优先级低于同 ID 前缀的标准帧。
2025-11-17 17:10:15
887
原创 2025 年 10 款好用的 VSCode 代码补全插件推荐
在追求效率的编程世界里,一款合适的代码补全插件能显著提升开发速度与体验。下面这个表格汇总了10款主流的VSCode代码补全插件,帮你快速了解它们的特点。
2025-11-11 09:11:30
844
原创 uboot下查看分区
在 U-Boot 环境下查看存储设备的分区信息,可以根据所用存储介质(如 eMMC、SD 卡、NAND、SPI Flash 等)使用不同命令。说明有两个设备:mmc 0(SD卡)和 mmc 1(eMMC)。📦 四、使用 printenv 查看环境变量中的分区定义。🧩 一、查看块设备(eMMC/SD)分区。💾 三、查看 SPI Flash 分区。切换到 eMMC(设备号 1)。表示 eMMC 上有两个分区。查看分区环境 printenv。🧱 二、查看 NAND 分区。存储类型 查看命令示例。
2025-11-07 14:02:59
730
原创 xilinx pcie转canfd测试代码
停止控制器运行,释放硬件资源。典型错误处理包括检查每个API调用的返回值,遇到失败时立即终止流程并返回错误代码。初始化控制器实例,传入设备配置结构体指针和基地址。模式,控制器将自动把发送的帧反馈到接收缓冲区,无需物理连接总线。),等待状态寄存器确认模式切换完成后再进行参数设置。获取,包含硬件寄存器地址等关键参数。
2025-11-06 09:21:19
376
原创 cmd控制台出现 系统找不到指定的路径。
以前 CMD 启动时会自动运行 Conda 的。取消cmd控制启动时,conda的配置。有可能是conda引起的。
2025-11-05 19:09:26
590
原创 ChatTTS 概述
ChatTTS 是一个专注于“对话场景”的语音合成(Text-to-Speech,TTS)模型。其核心目标是生成贴近互动、对话式的语音输出,而非通用朗读或播报。ChatTTS 为对话场景提供高表现力的开源 TTS 解决方案,适合开发者和研究者探索互动语音合成。需注意其许可限制、硬件要求及伦理风险。
2025-11-01 10:56:15
965
原创 高性能终端神器:WindTerm 全面介绍与使用体验
WindTerm是一款免费开源的跨平台终端工具,支持SSH、Telnet、串口等多种协议连接。它具有高性能终端引擎、内置SFTP文件管理、多标签分屏操作等特色功能,能流畅处理大规模日志并实现高效远程管理。相比传统终端工具,WindTerm在性能、功能丰富度和跨平台支持方面表现突出,特别适合运维工程师、开发者等需要频繁连接远程设备的用户。其开源特性也确保了使用的安全性,是一款值得推荐的高效终端解决方案。
2025-10-31 16:30:12
1250
原创 CAN通信概述
CAN 协议采用差分信号传输(CAN_H 和 CAN_L),通过电压差表示逻辑状态(显性电平为逻辑 0,隐性电平为逻辑 1)。总线需终端电阻(通常 120Ω)匹配阻抗以减少反射干扰。基于标识符(ID)的逐位比较,显性位(0)优先。发送过程中若检测到更高优先级帧,节点自动转为接收模式。请求其他节点发送特定 ID 的数据,无数据字段。
2025-10-31 16:24:50
363
原创 VSCode Remote-SSH:无缝远程开发完全指南
Remote-SSH 是 Visual Studio Code(VS Code)的官方扩展,允许开发者通过 SSH 协议直接连接远程服务器进行开发,无需将代码下载到本地。它提供完整的开发功能(如代码补全、调试、终端),并保持与远程环境的一致性。
2025-10-31 09:33:05
1062
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅