<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fanchenxinok的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/u010312436</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; u010312436]]></copyright><item><title><![CDATA[TC275 Flash驱动RAM加载的完整实现——从段属性配置到PSPR拷贝，手把手教你让Flash驱动在RAM中安全运行]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/167280841</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/167280841</guid><author>u010312436</author><pubDate>Fri, 09 Oct 2026 16:55:46 +0800</pubDate><description><![CDATA[在TC275上开发Bootloader时，Flash驱动必须运行于RAM（PSPR）以避免擦写时取指失败。因CPU无法从正在操作的Flash取指，故需将核心函数（如擦除、写入）加载至独立的24KB PSPR区域执行。实现路径包括：通过__attribute__((section))或#pragma section指定代码段；修改链接脚本定义运行地址为PSPR、加载地址为Flash；利用复制表由启动代码自动拷贝，或由Bootloader动态加载并使用dsync确保内存一致性。关键验证手段为检查函数地址是否位于]]></description><category></category></item><item><title><![CDATA[国密SM2/SM3/SM4算法介绍及其在充电桩中的应用]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/164733728</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/164733728</guid><author>u010312436</author><pubDate>Wed, 09 Sep 2026 11:56:39 +0800</pubDate><description><![CDATA[本文将系统介绍SM2、SM3、SM4三大算法的技术原理、功能定位与协同关系，并以充电桩这一典型的物联网应用场景为例，展示国密算法在实际工程中的完整落地。]]></description><category></category></item><item><title><![CDATA[学习笔记：XCP 协议规范 Part 1 – Overview（第 1 部分：概述）]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/164265710</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/164265710</guid><author>u010312436</author><pubDate>Mon, 07 Sep 2026 15:28:25 +0800</pubDate><description><![CDATA[概述 XCP 协议家族、XCP 特性和基本协议定义]]></description><category></category></item><item><title><![CDATA[TC275 UDS Bootloader 开发避坑指南]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163745166</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163745166</guid><author>u010312436</author><pubDate>Fri, 14 Aug 2026 11:14:28 +0800</pubDate><description><![CDATA[本文总结了在英飞凌AURIX TC275开发板上实现UDS Bootloader过程中遇到的关键问题及解决方案。主要内容包括：1. 工程配置重命名导致的调试路径问题；2. Bootloader与APP地址重叠的LSL脚本配置；3. Flash驱动必须在RAM中执行的特性及实现方法；4. 调试下载过程中常见的连接和烧录问题；5. UDS协议帧长度适配问题。文章特别强调了TC275开发中的三大核心挑战：Flash驱动的RAM化、正确使用缓存/非缓存地址空间、调试配置与编译器的匹配。作者通过实践经验指出，理解这些]]></description><category></category></item><item><title><![CDATA[基于TC275 Lite Kit的CAN UDS Bootloader开发实战]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163613352</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163613352</guid><author>u010312436</author><pubDate>Sun, 09 Aug 2026 16:52:37 +0800</pubDate><description><![CDATA[摘要： 本文介绍了一套基于英飞凌AURIX TC275芯片的UDS Bootloader开发方案，专为汽车电子ECU固件升级设计。方案解决了Flash自编程、UDS协议栈实现等核心技术难点，提供完整的MCU端源码、PC端上位机工具及测试报告。该方案经过量产验证，支持CAN通信，适用于企业、开发者快速实现TC2XX平台的OTA刷写功能，节省开发周期。配套资料包括硬件连接指南、编译烧录步骤，适合汽车电子工程师及AURIX学习者。]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS诊断上位机-LabVIEW版本（十九）：TOOMOSS_SID2F_InputOutputControl.vi — 输入输出控制]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163590942</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163590942</guid><author>u010312436</author><pubDate>Sat, 08 Aug 2026 14:45:58 +0800</pubDate><description><![CDATA[文章摘要： 本文详细介绍了UDS协议中的0x2F输入输出控制服务，该服务允许诊断工具直接操控ECU硬件行为，绕过整车逻辑，适用于产线检测（如车窗升降测试）或硬件验证（如仪表灯点亮）。其核心功能包括四种控制模式：交还控制权（0x00）、设为默认值（0x01）、冻结状态（0x02）和短期调整（0x03）。文中分析了请求/响应报文格式、常见否定响应码（NRC）及限制条件（如扩展会话、安全访问），并展示了LabVIEW子VI（TOOMOSS_SID2F_InputOutputControl.vi）的设计流程，涵盖D]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS诊断上位机-LabVIEW版本（十八）：TOOMOSS_SID3E_TestPresent.vi — 诊断仪在线保持]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163524791</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163524791</guid><author>u010312436</author><pubDate>Thu, 06 Aug 2026 09:59:48 +0800</pubDate><description><![CDATA[摘要： UDS诊断通信中的3E TesterPresent服务用于维持非默认会话状态，防止ECU因超时自动返回默认会话。该服务通过周期发送0x3E请求（子功能0x00需响应，0x80无需响应）重置ECU的会话超时定时器，适用于诊断或刷写流程。TOOMOSS_SID3E_TestPresent.vi封装了该服务，支持两种模式，并通过后台循环实现自动保活（推荐500ms~1000ms间隔）。设计强调总线负载优化（优先0x80子功能）及错误处理，集成至主界面后能可靠维持会话，提升诊断工具稳定性。]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS诊断上位机-LabVIEW版本（十七）：TOOMOSS_SID19_ReadDTCInformation.vi — 读取DTC信息]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163360662</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163360662</guid><author>u010312436</author><pubDate>Fri, 31 Jul 2026 14:07:21 +0800</pubDate><description><![CDATA[文章摘要： UDS诊断服务中的0x19 ReadDTCInformation是故障诊断的核心功能，用于读取ECU存储的标准化故障码（DTC）。该服务包含28个子功能，常用子功能包括按状态掩码读取DTC数量（0x01）、列表（0x02）、快照数据（0x04）及ECU支持的所有DTC（0x0A）。TOOMOSS_SID19_ReadDTCInformation.vi封装了这些子功能，通过构造请求报文、解析响应数据，返回结构化的DTC列表和状态信息。关键点包括DTC状态位掩码解析、多帧数据处理及错误场景应对，适用]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（十六）：从刷写到诊断的功能扩展]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163339878</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163339878</guid><author>u010312436</author><pubDate>Thu, 30 Jul 2026 17:42:49 +0800</pubDate><description><![CDATA[本文介绍了如何基于已有的UDS通信框架扩展开发完整功能的诊断上位机。主要内容包括： 复用已有基础设施 通信基座TOOMOSS_SendAndWaitResp.vi 设备管理层TOOMOSS_OpenDev(CAN).vi 已封装的7个UDS服务子VI 新增核心诊断服务 0x22读取DID（VIN码、版本号等） 0x19读取DTC（故障码） 0x14清除DTC 0x3E待机握手 诊断上位机设计 界面布局与功能分区 子VI实现与调用流程 状态机设计原则 与刷写功能的集成方案 本文展示的架构设计可实现&quot;]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（十五）：总结篇]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163338473</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163338473</guid><author>u010312436</author><pubDate>Thu, 30 Jul 2026 16:12:31 +0800</pubDate><description><![CDATA[本文总结了基于图莫斯CAN工具开发LabVIEW UDS升级上位机过程中遇到的典型问题及解决方案。主要内容包括：1）DLL调用常见错误（加载失败、参数传递、路径配置）；2）事件结构与数据流控制问题；3）条件结构与移位寄存器使用技巧；4）程序打包部署时的DLL管理；5）路径与文件操作规范；6）界面控件优化方法；7）调试技巧与开发最佳实践。文章系统性整理了32个具体案例，如DLL位数不匹配（错误193）、事件响应延迟、进度条颜色设置等，并提供了详细的排查步骤和推荐做法。最后总结了路径管理、事件处理等7类最佳实践]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（十四）：打包与安装应用程序]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163306086</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163306086</guid><author>u010312436</author><pubDate>Wed, 29 Jul 2026 15:31:03 +0800</pubDate><description><![CDATA[本文针对LabVIEW开发中第三方DLL的路径管理问题，提出了一种稳健的解决方案。通过将分散的DLL文件统一整合到Libs目录，并利用&quot;应用程序目录&quot;函数动态构建加载路径，确保程序在开发和打包后都能正确定位DLL。详细步骤包括：重构项目目录结构、修改CLN节点路径设置、配置EXE生成规范和安装程序打包，最终实现跨环境的稳定运行。该方法解决了传统相对路径在打包时失效的问题，具有维护简单、移植性强等优势，特别适用于依赖多个第三方库的LabVIEW项目部署。]]></description><category></category></item><item><title><![CDATA[基于周立功的CAN UDS升级上位机-LabVIEW版本（十三）：从图莫斯到ZLG的移植指南]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163243282</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163243282</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 14:58:25 +0800</pubDate><description><![CDATA[本文介绍了将基于图莫斯CAN工具的UDS升级上位机移植到周立功CAN卡平台的方法。移植工作主要集中于CAN通信层替换，而上层UDS协议栈和文件解析等模块可复用。文章详细对比了两套API在设备管理、通道配置和数据收发方面的差异，并给出核心子VI的修改方案。移植重点包括设备打开/初始化流程改造，以及自行实现ISO-TP协议的数据收发功能。测试建议分三步：基础通信测试、UDS服务测试和完整刷写验证。通过分层移植策略，可快速实现硬件平台切换，提升工具通用性。]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（十二）：Main.vi — 主VI与刷写流程编排]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163241347</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163241347</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 14:24:02 +0800</pubDate><description><![CDATA[本文详细介绍了基于LabVIEW和图莫斯CAN工具开发的UDS升级上位机主VI(Main.vi)的设计与实现。该VI采用状态机架构，集成设备管理、文件加载、刷写流程控制三大功能模块，通过条件结构实现预编程、主编程、后编程的完整UDS刷写流程。前面板设计包含通信参数配置、固件信息显示、进度监控等区域，程序框图利用移位寄存器在状态间传递数据。关键实现包括S19/HEX文件解析、CRC校验计算、实时进度更新及错误处理机制。文章还提供了完整的UDS服务调用序列，涵盖会话切换、安全访问、数据下载等核心操作，并介绍了测]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（十一）：LogManager.vi — 日志管理]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163242095</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163242095</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 14:10:16 +0800</pubDate><description><![CDATA[本文介绍了UDS刷写上位机中的日志管理模块LogManager.vi的设计与实现。该模块通过功能全局变量(FGV)模式管理日志文件生命周期，提供打开、写入和关闭三个简洁接口，自动记录包含毫秒级时间戳的通信数据（十六进制格式）。文章详细阐述了其非重入执行机制、文件路径生成、错误处理等关键技术点，并说明了在刷写流程中的集成方式。该设计实现了通信数据的完整记录，为调试和故障排查提供了可靠依据，同时通过封装文件操作细节简化了调用流程，体现了LabVIEW数据流编程的优势。]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（十）：TOOMOSS_SID31_RoutineControl.vi — 例程控制]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163240398</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163240398</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 13:23:49 +0800</pubDate><description><![CDATA[本文详细介绍了UDS协议中的0x31例程控制服务及其在LabVIEW中的实现。0x31服务通过启动、停止和查询结果三种子功能（0x01/0x02/0x03）执行ECU预定义操作，支持标准例程ID（如0xFF00擦除内存）和车厂自定义ID。文章阐述了请求/响应报文格式、TOOMOSS_SID31_RoutineControl.vi的设计架构及调用流程，包括例程ID拆分、请求构造、通信基座调用和响应解析。重点分析了该服务在UDS刷写中的应用场景（编程条件检查、擦除分区等），并强调执行敏感操作需满足编程会话和安全]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（九）：TOOMOSS_SID2E_WriteDataByID.vi — 写入数据]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163238251</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163238251</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 11:53:53 +0800</pubDate><description><![CDATA[文章摘要： 本文详细解析了UDS协议中的0x2E服务（WriteDataByIdentifier）在ECU刷写流程中的应用，重点介绍了LabVIEW工具TOOMOSS_SID2E_WriteDataByID.vi的功能设计与实现。该子VI通过构造[0x2E+DID+Data]请求报文，实现指纹信息（如版本号、VIN码等）的写入，并解析ECU响应（肯定响应为3字节0x6E+DID回声）。文章阐述了DID拆分、数据构造、通信基座调用等关键步骤，分析了NRC错误码（如0x33安全拒绝、0x13长度错误）的处理逻辑]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（八）：TOOMOSS_SID85_ControlDTCSetting.vi — DTC控制]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163237833</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163237833</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 11:42:45 +0800</pubDate><description><![CDATA[根据用户指定的子功能（开启/关闭），构造0x85服务请求报文调用通信基座发送请求并等待ECU响应解析响应报文，判断DTC控制是否成功返回响应数据和执行状态封装了UDS 0x85 DTC控制服务，虽然它的请求报文只有两个字节，却是UDS刷写流程中不可或缺的“清道夫”。防止误报：刷写过程中关闭DTC更新，避免其他ECU误报通信故障保护诊断记录：确保DTC存储器中不会混入与刷写过程无关的故障码配合0x28服务：与通信控制服务共同组成完整的刷写前“清场”流程。]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（七）：TOOMOSS_SID28_CommunicationControl.vi — 通信控制]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163237367</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163237367</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 11:31:36 +0800</pubDate><description><![CDATA[本文详细介绍了UDS刷写流程中的0x28通信控制服务及其LabVIEW实现。该服务通过启用/禁用ECU的通信功能，在刷写时关闭非诊断报文以优化总线带宽。文章解析了协议格式、控制类型（0x00-0x05）和通信类型（应用/网络管理报文）的组合使用，并展示了TOOMOSS_SID28_CommunicationControl.vi的设计实现，包括请求构造、基座调用和响应处理（含NRC错误码解析）。典型应用场景显示，该服务需与0x85服务配合，在刷写前发送280303禁用通信，完成后发送280003恢复通信。作为]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（六）：TOOMOSS_SID11_EcuReset.vi— ECU复位]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163236539</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163236539</guid><author>u010312436</author><pubDate>Mon, 27 Jul 2026 11:12:33 +0800</pubDate><description><![CDATA[本文详细介绍了UDS刷写流程中的ECU复位服务（0x11服务）实现方法。该服务通过调用TOOMOSS_SID11_EcuReset.vi完成，支持硬复位、钥匙开关复位、软复位等5种子功能类型。文章重点解析了服务协议（请求/响应格式）、子VI设计流程（请求构造、通信基座调用、响应解析）及错误处理机制，并强调ECU复位&quot;先响应后执行&quot;的特性。该服务是刷写后编程阶段的关键步骤，用于激活新固件并恢复ECU至默认状态，实际操作中需注意会话状态、安全访问等前置条件，建议设置5000ms超时以确保响应]]></description><category></category></item><item><title><![CDATA[基于图莫斯的CAN UDS升级上位机-LabVIEW版本（五）：TOOMOSS_SID34-36-37_DownloadFlow.vi — 下载流程]]></title><link>https://blog.youkuaiyun.com/u010312436/article/details/163219220</link><guid>https://blog.youkuaiyun.com/u010312436/article/details/163219220</guid><author>u010312436</author><pubDate>Sun, 26 Jul 2026 18:44:00 +0800</pubDate><description><![CDATA[本文详细介绍了UDS刷写流程中实现固件数据传输的三个核心服务：0x34请求下载、0x36传输数据和0x37请求传输退出。重点解析了TOOMOSS_SID34-36-37_DownloadFlow.vi子VI的设计实现，包括：1. 三个服务的协议格式及交互逻辑；2. 动态计算数据块大小的关键算法；3. 进度条实时更新机制；4. 完整的错误处理方案。该子VI通过封装34/36/37服务，实现了从内存地址协商、数据分块传输到传输终止的全流程自动化，是UDS刷写过程中耗时最长、数据量最大的核心模块。文章还特别强调了]]></description><category></category></item></channel></rss>