关于HA0 MCAL,掉电后跑不起来,可以查看这个:https://forum.ytmicro.com/topic/2320/ha01-smcal3_0_0-demo-烧录后掉电再上电代码无法运行问题
软件版本:HA0 MCAL 2_3_0
硬件:YTM32B1HA01 EVB
I2C master I2C_STANDARD_MODE模式通信,如果主机未收到应答信号,SCL会持续保持低电平状态,直到下次开始通信。
问题原因在从机返回NACK时,驱动中会调用I2C_Lld_MasterEndTransfer复位TX和RX FIFO,若通信速率较低,那么可能会出现硬件还没完成收尾动作软件便清FIFO结束传输的情况。
解决方案I2C_Lld_MasterNACKDetEventHdl函数中在调用I2C_Lld_MasterEndTransfer清除FIFO之前预留超时时间,如下图:
7b336797-86f8-4894-bb2d-2923a6e5b7f1-image.png
[CddI2c_Master_Slave_Demo_YTM32B1HA0.7z](无效文件格式,允许的格式有:.png, .jpg, .bmp, .txt, .webp, .webm, .mp4, .gif, .hex, .bin, .s19, .elf, .zip, .patch, .pdf, .yct, .jpeg) CddI2c_Master_Slave_Demo_YTM32B1HA0 (2).zip
3.0.0 版本 mcal 的 core_cm33.h 文件中 __ghs__ 下的 __FPU_USED 和 __DSP_USED 没有考虑编译器选项,如下图
eadbc127-e4ca-44ea-8445-3038349ddfab-image.png
2.3.0 版本有做相关保护,如下图
1eaac383-21a8-49da-bfcf-5a8db7a4449e-image.png
影响:
编译器产生如下报错
6a5a0b49-775b-461d-8a5e-307a7d0e157b-image.png
影响点如下图,ytm_ccarm.h 中 __FPU_USED = 1 时使用的 __VMSR 函数和 __VFP_FPSCR 符号在编译器使用 -fnone 参数时不存在
13f2dc13-e468-4374-a8e5-fc2dff40b5a9-image.png
我尝试为 openocd 添加 pflash 写入功能,根据手册和 demo 的描述,pflash 单次写入要 32 字节,目前每32字节都要根据这个流程处理一遍,使用 jlink 测试下载的速度大概在 1KB/s,
> flash write_image Hello_World.hex Padding image section 0 at 0x020000a0 with 1888 bytes Padding image section 1 at 0x02000bd4 with 44 bytes Padding image section 2 at 0x02004e68 with 24 bytes (bank write end alignment) wrote 20096 bytes from file Hello_World.hex in 13.192564s (1.488 KiB/s)请问有没有提高速度的方向或者思路?
本文主要发布 OpenOCD 云途版 工具包:无需安装 Keil / J-Link 补丁包,使用 DAP-Link(CMSIS-DAP) 就能对 YTM32 系列芯片进行 烧录、擦除、校验和在线调试,也可以直接配合 VS Code + Cortex-Debug 使用。
下面以 YTM32B1HA01 开发板 + DAP-Link(SWD) 为例,演示从烧录到在 VS Code 里单步调试的完整流程,文中截图均为实板操作。
一、下载 工具包:openocd-ytmicro-20261024.zip(Windows 64 位,约 5.4 MB)openocd-ytmicro-20261024.zip
解压即可使用,无需安装,也不依赖其他运行库。可以放在任意目录,下文假设解压到 D:\tools\openocd:
D:\tools\openocd\ ├── openocd.exe ├── YTMicro\ <- 各系列芯片的下载算法和器件信息 ├── interface\ <- cmsis-dap.cfg、jlink.cfg、stlink.cfg └── target\ <- ytmicro.cfg(所有云途芯片通用) 二、支持的芯片和调试器芯片(DEVICE 取下面任意一个名字,不区分大小写):
系列 DEVICE 名称 YTM32B1HA0 YTM32B1HA01 YTM32B1LD0 YTM32B1LD04 YTM32B1LE0 / LE1 YTM32B1LE04、YTM32B1LE05、YTM32B1LE14、YTM32B1LE15 YTM32B1MC0 YTM32B1MC03 YTM32B1MD1 / MD2 YTM32B1MD14、YTM32B1MD24 YTM32B1ME0 / ME1 YTM32B1ME05、YTM32B1ME15 YTM32Z1LS0 / LS1 YTM32Z1LS06、YTM32Z1LS16 YTM32Z1MC0 / MD0 / ME0 YTM32Z1MC03、YTM32Z1MD04、YTM32Z1ME05PFlash 和 DFlash 都会自动识别,可直接烧录。
调试器(接口均为 SWD):
调试器 配置文件 驱动 DAP-Link / CMSIS-DAP interface/cmsis-dap.cfg 免驱,插上即用(推荐) J-Link interface/jlink.cfg 需用 Zadig 把 J-Link 切换为 WinUSB 驱动 ST-Link interface/stlink.cfg 需用 Zadig 安装 WinUSB 驱动三、命令行烧录(一条命令搞定)提示:J-Link 切换为 WinUSB 后,SEGGER 官方软件(J-Flash、Ozone 等)就无法识别它了,需要时再在设备管理器中改回来。日常使用 OpenOCD 更推荐 DAP-Link。
打开 cmd,进入工程目录(固件路径相对于当前目录),执行:
D:\tools\openocd\openocd.exe -f interface/cmsis-dap.cfg -c "set DEVICE YTM32B1HA01" -f target/ytmicro.cfg -c "program build/HA0_Adc_Demo.elf verify reset exit"参数说明:
-f interface/cmsis-dap.cfg:使用的调试器,换成 jlink.cfg / stlink.cfg 即可切换; -c "set DEVICE YTM32B1HA01":芯片型号,必须写在 target/ytmicro.cfg 前面; -f target/ytmicro.cfg:云途芯片通用配置,所有型号都用这一个; program ... verify reset exit:烧录 → 校验 → 复位运行 → 退出。实板运行结果(HA01 + DAP-Link,ADC Demo 约 14 KB,烧录 + 校验约 1 秒):
命令行烧录
看到 ** Programming Finished ** 和 ** Verified OK ** 就表示烧录成功。
常用操作 rem 烧录 hex / elf(自带地址) openocd.exe -f interface/cmsis-dap.cfg -c "set DEVICE YTM32B1HA01" -f target/ytmicro.cfg -c "program app.hex verify reset exit" rem 烧录 bin 文件,需要指定起始地址(HA0 PFlash 起始地址为 0x02000000,其他系列请查手册存储器映射) openocd.exe -f interface/cmsis-dap.cfg -c "set DEVICE YTM32B1HA01" -f target/ytmicro.cfg -c "program app.bin 0x02000000 verify reset exit" rem 擦除第一个 flash bank(PFlash) openocd.exe -f interface/cmsis-dap.cfg -c "set DEVICE YTM32B1HA01" -f target/ytmicro.cfg -c "init; reset halt; flash erase_sector 0 0 last; exit" rem 调低 SWD 速率(线较长或连接不稳定时),单位 kHz,默认 4000 openocd.exe -f interface/cmsis-dap.cfg -c "set DEVICE YTM32B1HA01" -c "set ADAPTER_SPEED 1000" -f target/ytmicro.cfg -c "program app.elf verify reset exit" 四、在 VS Code 中调试(Cortex-Debug) 1. 准备 VS Code 安装扩展 Cortex-Debug(marus25.cortex-debug); 安装 ARM GCC 工具链(需要其中的 arm-none-eabi-gdb.exe)。用云途 YCT 配置工具生成过 GCC 工程的话,工具链已经自带了; 工程能正常编译出 .elf。 2. 配置 .vscode/launch.json { "version": "0.2.0", "configurations": [ { "name": "HA0_Adc_Demo Debug", "type": "cortex-debug", "request": "launch", "cwd": "${workspaceFolder}", "executable": "${workspaceFolder}/build/HA0_Adc_Demo.elf", "servertype": "openocd", "device": "YTM32B1HA01", "serverpath": "D:/tools/openocd/openocd.exe", "configFiles": [ "interface/cmsis-dap.cfg", "target/ytmicro.cfg" ], "openOCDPreConfigLaunchCommands": [ "set DEVICE YTM32B1HA01" ], "svdFile": "${workspaceFolder}/.vscode/chip.svd", "runToEntryPoint": "main", "liveWatch": { "enabled": true, "samplesPerSecond": 4 } } ] }需要按自己的情况修改的地方:
字段 说明 executable 编译生成的 elf 路径 serverpath openocd.exe 的实际解压路径(用 / 或 \\) configFiles 第一项为调试器,换 J-Link 就写 interface/jlink.cfg openOCDPreConfigLaunchCommands set DEVICE <芯片型号>,芯片型号写在这里,它会在 ytmicro.cfg 之前执行 svdFile 芯片 SVD 文件,用于查看外设寄存器(可选) armToolchainPath 如果 arm-none-eabi-gdb 不在 PATH 中,加上这一项指向工具链的 bin 目录,例如 "C:/xxx/gcc-arm-none-eabi-10.3-2021.10/bin"launch.json 配置
3. 开始调试按 F5(或点击 运行和调试 → 开始调试)。Cortex-Debug 会自动启动 OpenOCD、下载程序,并停在 main()。之后就可以正常设置断点、单步、查看变量:
断点调试
上图在 ADC 采样循环中设置了断点,左侧 Variables 中可以看到实时读到的 voltage 值。
配置了 svdFile 后,在 XPeripherals 面板中可以按位域查看外设寄存器,例如 ADC0 的 CFG0:
外设寄存器
五、注意事项 set DEVICE 一定要在 target/ytmicro.cfg 之前。命令行中放在 -f target/ytmicro.cfg 前面;VS Code 中写在 openOCDPreConfigLaunchCommands 里。 烧录会占用一段 SRAM 作为工作区,烧录完成后不会恢复其中的内容。正常的"烧录 → 复位运行"流程没有影响;如果在调试过程中写 flash 后不复位直接继续运行,需要注意这一点。 芯片处于低功耗模式、或 SWD 引脚被复用时,可能连不上,可以在复位状态下连接(按住复位键再启动 OpenOCD)。 六、常见问题 现象 处理方法 Device 'XXX' not found 芯片名写错了,对照第二节表格检查 Error: unable to find a matching CMSIS-DAP device 调试器没插好,或被其他软件(Keil、其他 OpenOCD 进程)占用 Error connecting DP: cannot read IDR 检查 SWD 接线和目标板供电;可尝试降低 ADAPTER_SPEED Not enough working area 可在 set DEVICE 后加 -c "set WORKAREASIZE 0x4000" 增大工作区 VS Code 提示找不到 gdb 在 launch.json 中加 armToolchainPath 七、性能参考YTM32B1ME05,1 MB PFlash,DAP-Link SWD 4 MHz:
整片擦除:约 0.1 s 写入速度:约 160 KB/s 1 MB 完整镜像烧录 + 校验:约 9 s使用中遇到问题,欢迎在本帖回复,附上芯片型号、调试器型号和 OpenOCD 的完整输出,方便我们定位。
YUNTU MCAL(Microcontroller Abstract Layer) software package is designed by YTMicro AE team to support customers on AUTOSAR compliant application software development. The YUNTU MCAL is developed according to the AUTOSAR CP Release v4.4.0 standard.
1.1 Release TypeMajor Release — This is a major version upgrade, representing a significant milestone in the YUNTU MCAL product lifecycle.
Status: Internal Released | Release Date: 2026-08-04
The 3.0.0 release is the result of a comprehensive software architecture refactoring and quality upgrade program with the following goals:
ASPICE Process Compliance — Full software lifecycle activities conducted in accordance with ASPICE CL2 processes, covering SWE.1 through SWE.6, MAN.3, SUP.1,SUP.8, SUP.9 and SUP.10.
ASIL-D Functional Safety Qualification — The MCAL software package has been re-engineered to meet ISO 26262 ASIL-D functional safety requirements, including enhanced safety mechanisms and systematic capability.
Code Refactoring — A comprehensive code refactoring has been performed across all MCAL modules, with refinements to module architecture and detailed design. While the overall structure remains aligned with the AUTOSAR CP specification, customers should expect minor variations in module interfaces, internal design patterns, and configuration parameters compared to the 2.3.0 release.
Overall Quality Enhancement — Strengthened static analysis compliance (MISRA C:2012),HIS metrics improved test coverage to ASIL-D required levels, and systematic configuration and change management baselining.
Ned added-CddFmu — Supported FMU MCAL driver as complex driver.
1.3 Version Evolution Item Previous Release Current Release (3.0.0) Version 2.3.0 3.0.0 AUTOSAR CP v4.4.0 v4.4.0 ASPICE Capability N.A Level 2 ASIL Qualification QM ASIL-D2. Support ToolchainsImportant — Not a drop-in replacement: This release is the result of an extensive code refactoring across the MCAL stack to achieve ASIL-D qualification from a QM baseline. Due to the scale of architectural changes — including redesigned safety mechanisms, restructured module interfaces, updated configuration parameters, and new ASIL-D-specific requirements on integration .
Review all Breaking Changes listed in Section 6.1 and assess impact on the existing integration. Regenerate and re-validate MCAL configuration using YCT v3.2.0 or higher; configuration from 2.3.0 is not directly portable. Re-integrate and re-test all affected software components at unit, integration, and qualification levels. Conduct a project-specific safety impact analysis per ISO 26262 to confirm that the ASIL-D MCAL assumptions are valid and consistent with the system-level safety requirement.
Customers must perform a thorough impact analysis and managed upgrade before migrating:
YUNTU MCAL software package has been tested and validated with the following toolchains / IDEs:
2.1 Recommended Configuration Tool YCT (Yuntu Config Tool) v3.2.0 or higher versionTip: YCT can be downloaded from YTMicro Account or updated from an installed older version.
2.2 Recommended IDE / Compilers IDE / Compiler Minimum Version Notes IAR v9.50 VSCode (Ninja + CMake + GCC/IAR) VSCode v1.80 Cross-platform build system GCC for ARM v10.3 Green Hills v2022.1.4 2.3 Recommended Debugger SEGGER J-LINK v9.2 or higher hardware + v6.96 or higher software/driver Required: YTM32BHA0x patch installed 3.Release ListThe following list summarizes all functional changes, fixes, and new features introduced in this release compared to the previous release:
[Opt]-[CddUart]-[0] Optimize redundant YCT channel-count parameters and incorrect DMA channel validation rules for CddUart [New]-[CddI2c]-[2] Add CddI2c Pin Low Timeout event detection support [Fix]-[Icu]-[1] Fix missing ACMP1 option in HA0 Icu resource so interrupt control macros can be generated [Fix]-[Gpt]-[2] Fix Gpt not truly using the MCU clock source mapped by GptClockReferencePoint [Fix]-[Lin]-[2] Fix LinFlexD output-compare anomaly after bus ground recovery that may keep generating OC events [Fix]-[Pwm]-[2] Fix HA0 LQFP-144 Pwm MPWM channel support mismatch with actual package bonding pins [Fix]-[Fee]-[2] Add Fee cluster sector continuity validation in configuration [Opt]-[Port]-[1] Add XTAL/EXTAL pins into UnTouchedPortPin defaults to avoid crystal misconfiguration [Fix]-[Dio]-[2] Fix incorrect Dio Pin Mask for YTM32B1HA0 100-pin package [Fix]-[Platform]-[3] Fix GCC/GHS linker templates where section name equals memory region name causing wrong startup init size [Fix]-[Can]-[1] Fix incorrect default value of Can SSP [New]-[Mcu]-[2] Add Mcu module Errata Check items [Opt]-[Can]-[1] Add Full type support for Can HoH [Fix]-[Fls]-[2] Fix QSPI unable to access addresses above 64 Mbyte [Fix]-[Crypto]-[1] Fix Crypto Random async API that actually runs synchronously [Fix]-[Fls]-[2] Fix Fls ECC fault handling [Fix]-[Fls]-[1] Fix incorrect MemIf include between Fee and Fls [Fix]-[Can]-[1] Fix Can module code generation bug 4.Known Issues/LimitationN.A
Annex Release list naming ruleEach release list item shall contain the following elements:
[Type] - [Sub-Type/Module] - [Effect_Level] [Brief/Overview Description][Reference/Details Link]
[Type]
Fix: Bug fixes / issue resolution Opt: Code performance optimization New: New feature implementation Demo: Example / demonstration project Doc: Documentation updates[Sub-Type/Module]
MCAL: Mcu/Dio/Port/Can/Lin/Spi/Gpt/Pwm/Adc/Icu/Ocu/Fls/Fee/Platform/CddUart/CddSai/CddPpu/CddI2c/CddDma/CddTrg SafLib: CorTst/RamTst/FlsTst/IntTst/WdgTst/CrcTst/DmaTst/PpuTst/EfmTst/StkTst/EccTst/FmuTst GUI: the YCT XDM config GUI update for the MCAL/SafLib SW package, the YCT Vue config GUI update for the SDK/Middleware SW package(no code change/modification)[Effect_Level]
0: No effect to the old version SW/project 1: Recommend but optional to update, for example the performance optimization 2: Must update for a specified SW module/components if the customer application used the related feature/functionality 3: Must update for a specified SW module/components if it is used 4: Must update if the SDK/MCAL/SafLib package is used[Brief/Overview Description]
[Type] = Fix: Fixed the xxx issue/bug of the yyy HW/SW functionality/feature caused by condition [Type] = Opt: Optimized the performance of the yyy HW/SW functionality/feature [Type] = New: Added the new feature/functionality support of xxx [Type] = Demo: added/updated the demo project: brief description[Reference/Details Link]
Errata: give out the detailed Errata number others: the link to the bug/issue analysis, it can be: Link to a YUNTU form post [if it is derived from a FAE/customer feedback] Link to a YUNTU form blog [if it is derived from a YUNTU form blog discussion] Link to a Feishu/Meegle project issue detail page DisclaimerCopyright and Contact Information
img
YTMicro and its subsidiaries reserve the right to change, correct, enhance, modify and improve YTMicro products or this document at any time without notice. Before placing an order, purchasers should obtain and understand the latest relevant information about the products. YUNTU's products are sold according to YUNTU team and sales conditions at the time of order confirmation. Purchasers have the sole responsibility for selecting, choosing and using YUNTU products, and YUNTU has no responsibility for assisting purchasers in product design and application. YUNTU does not grant any express or implied license to any intellectual property herein. Resale of YUNTU products with information different from that described herein will make any warranty of YUNTU for such product void. YTMicro and YTMicro logo are trademarks of YTMicro. All other product or service names are the property of their respective owners. The information in this document replaces and supersedes any previously provided information in any prior version of this document. © 2020 - 2026 YUNTU Microelectronics co.,ltd. All rights reserved.
Contact us: Website: www.ytmicro.com.
6c7c786d-a79c-4923-a07c-ade67d1fa143-image.png
1.2 解决方案 Platform -> SecureBootConfig 中勾选 Name,Name 变成绿色表示使能 SecureBootConfig83a82238-8d91-47d8-985b-fc2b17d3a40a-image.png
Platform -> SecureBootConfig -> BvtConfiguration 中勾选 BvtYtlLinkRef,BvtYtlLinkRef 变成绿色表示使能,BvtYtlLinkRef 的值选择 “ytlink/P_FLASH/children/BVT/children/BVT/children/BVT/children/bvt_header”b19f195d-df41-4723-92cc-8379c7adc18c-image.png
Platform -> SecureBootConfig -> BvtConfiguration -> BvtCoreConfig 中点击 Add,会生成 BvtCoreConfig_0506bcc91-74dd-4779-ba02-4406e7fee97c-image.png
Platform -> SecureBootConfig -> BvtConfiguration -> BvtCoreConfig -> BvtCoreConfig_0 中勾选 CoreEnable;CoreAppEntrySource 的值选择 YT_LINK_REF;勾选 CoreAppEntryYtLinkRef 变成绿色表示使能;CoreAppEntryYtLinkRef 的值选择 “ytlink/P_FLASH/children/IVT”887e4420-b3fa-4e4f-baab-2982fe41a90c-image.png
Platform -> SecureBootConfig -> SbGroupConfiguration 中勾选 SbGroupYtLinkRef 变成绿色表示使能;SbGroupYtLinkRef 的值选择 “ytlink/P_FLASH/children/BVT/children/BVT/children/BVT/children/sb_config_group”;勾选 SbSectionCfgYtLinkRef 变成绿色表示使能;SbSectionCfgYtLinkRef 的值选择 “ytlink/P_FLASH/children/BVT/children/BVT/children/BVT/children/sb_config_section”925017c9-ea90-43d4-92bd-a7b9f0b4567a-image.png
修改后保存 YCT 工程,点击 Ctrl+S -> Generate 重新生成 MCAL 配置后,使用对应 IDE 重新编译下载后,掉电再上电后可以正常运行db01fc55-6bfd-472e-969b-0add227b9c2a-image.png
1.3 背景说明 软件:HA01 sMCAL3_0_0 所有 Demo 硬件:EVB 板和客户 PCBA 2. 根因说明 HA01 sMCAL3_0_0 的 Platform 新增 SecureBootConfig 配置,Demo 默认是关闭的,SecureBootConfig 配置会影响 IDE 编译后生成的 BVT 段,若 SecureBootConfig 不配置,IDE 编译后是不生成 BVT 段的。74d05a52-2b94-424c-8455-12af063a7294-image.png
没有 BVT 段 ROM 里的安全启动过不了,现象就是断电后在上电,代码不运行,attach 后 PC 指针停在 0x0100_0000 - 0x0100_FFFF 的 ROM 段,芯片卡在安全启动流程里无法正常运行YUNTU SafLib (Safety Library) provides peripheral self-tests and software safety mechanisms for AUTOSAR application integration. This document describes SafLib 3.0.0 for YTM32B1MC0.
1.1 Release TypeRequired dependency: MCAL 3.0.0. SafLib 3.0.0 must be integrated with MCAL 3.0.0.
Major Version — SafLib 3.0.0.
Status: Internal Release Notes | Release Date: TBC | Issue Snapshot: 2026-10-28
1.2 Release Highlights CorTst Reliability — Fixed exclusive-access, floating-point conversion, exception-stack and SysTick test failures under interrupt or OS/FPU context conditions. DmaTst Configuration — Improved startup-test defaults, runtime-test configuration and DMA channel validation. ClkTst Frequency Tolerance — Added a configurable tolerance for enabled clock sources; zero remains the default. CrcTst Verification — Added FLASH signature verification configuration for SQT. Stack Monitoring — Added hardware stack overflow detection and StkTst_GetDetailsResult() to distinguish MSP and PSP overflow. MCAL Integration — Safety MCAL 3.0.0 adaptation covers Resource configuration, module MemMap, regression tests and demos. EccTst Interrupt Handling — Fixed application hangs when ECC flags are already pending before the test; the ISR is installed before interrupts are enabled. Flash SWAP Support — Corrected Flash ECC error-address mapping when PFlash SWAP is enabled. 1.3 Version Evolution Item Previous Release / Baseline Current Release (3.0.0) SafLib Version 2.0.0 3.0.0 Target Device YTM32B1MC0 YTM32B1MC0 AUTOSAR CP v4.4.0 v4.4.0 MCAL Dependency See the previous release notes MCAL 3.0.0 (required) 2. Support ToolchainsYUNTU SafLib software package uses the following toolchains / IDEs:
2.1 Recommended Configuration Tool YCT (Yuntu Config Tool) v3.2.0 or higher versionTip: YCT can be downloaded from YTMicro Account or updated from an installed older version.
2.2 Recommended IDE / Compilers IDE / Compiler Minimum Version Notes IAR v9.50 VSCode (Ninja + CMake + GCC/IAR) VSCode v1.80 Cross-platform build system GCC for ARM v10.3 Green Hills v2022.1.4 2.3 Recommended Debugger SEGGER J-LINK v9.2 or higher hardware + v6.96 or higher software/driver Required: target-device support patch installed 3. Release ListThe following list summarizes changes for YTM32B1MC0:
[Opt]-[SafLib]-[4] Adapt SafLib resources, SchM MemMap, regression tests and demos to Safety MCAL 3.0.0 [Fix]-[CorTst]-[2] Fix false Load/Store test failures caused by interrupts clearing the exclusive monitor [Fix]-[CorTst]-[2] Fix floating-point conversion test failures when the OS disables FPCCR.ASPEN [Fix]-[CorTst]-[2] Fix FPSCR comparison failures in the floating-point exception stack test by preserving the post-exception snapshot [Fix]-[CrcTst]-[1] Add CrcTst SQT configuration for signature verification in FLASH [Opt]-[DmaTst]-[1] Improve DmaTst YCT defaults, runtime configuration and DMA channel validation [Opt]-[ClkTst]-[1] Add configurable frequency tolerance for each enabled clock source, with a default value of zero [New]-[StkTst]-[0] Add hardware stack overflow detection using MSPLIM/PSPLIM and configurable reporting [New]-[StkTst]-[0] Add StkTst_GetDetailsResult() and its YCT switch to distinguish MSP and PSP overflow [Fix]-[CorTst]-[1] Fix intermittent SysTick exception test failures under frequent interrupts by waiting after the pending request [Fix]-[EccTst]-[3] Fix EccTst application hangs caused by pending ECC flags by installing the ISR before enabling interrupts and clearing interrupts after the test [Fix]-[EccTst]-[1] Correct MC0 Flash ECC error-address mapping when PFlash SWAP is enabledType labels for CorTst-ISSUE-165, CorTst-ISSUE-166, CorTst-ISSUE-167, CrcTst-ISSUE-168, CorTst-ISSUE-186, EccTst-ISSUE-189, EccTst-ISSUE-190 are classified from the issue content because the source Type field is empty.
4. Known Issues / Limitation 4.1 Integration Notes EccTst (EL3): Update EccTst wherever the module is used. Install the ISR before enabling ECC interrupts, then execute the test and clear interrupts. Revalidate startup and boot-to-application paths with ECC flags already pending. Flash SWAP: Revalidate Flash ECC fault injection and reported error addresses with PFlash SWAP enabled. CorTst: Revalidate the affected tests with the target OS, interrupt load and FPU context settings. Follow the effect levels in Section 3. DmaTst: Regenerate and review configuration for startup-test defaults, the minimum hardware-channel count, the single runtime container and channel-link constraints. ClkTst: The tolerance value defaults to zero. Select any nonzero value according to the clock specification and project safety analysis. MCAL Integration: Confirm Resource and module MemMap changes, SUT/SIT/SQT regression and demo updates when integrating Safety MCAL 3.0.0. Release Baseline: Confirm the 3.0.0 version record, package identifier, delivery contents and regression reports. Issue closure does not replace release-package qualification evidence. Annex Release list naming ruleEach release list item contains the following elements:
[Type]-[Module]-[Effect_Level] [Brief Description / Details Link]
Type: Fix — bug fixes; Opt — optimization; New — new functionality; Demo — demonstration projects; Doc — documentation updates. Module: The SafLib module affected by the change. Module names in this document do not constitute a complete device support matrix. Effect_Level: 0: No effect on the previous software version / project. 1: Update recommended but optional. 2: Update the affected module if the application uses the related functionality. 3: Update the affected module if it is used. 4: Update if the software package is used. TBC: The source issue does not specify an effect level. Details Link: The linked YT_SafLib issue provides the analysis, corrective action and verification records. DisclaimerCopyright and Contact Information
YTMicro and its subsidiaries reserve the right to change, correct, enhance, modify and improve YTMicro products or this document at any time without notice. Before placing an order, purchasers should obtain and understand the latest relevant information about the products. YUNTU's products are sold according to YUNTU team and sales conditions at the time of order confirmation. Purchasers have the sole responsibility for selecting, choosing and using YUNTU products, and YUNTU has no responsibility for assisting purchasers in product design and application. YUNTU does not grant any express or implied license to any intellectual property herein. Resale of YUNTU products with information different from that described herein will make any warranty of YUNTU for such product void. YTMicro and YTMicro logo are trademarks of YTMicro. All other product or service names are the property of their respective owners. The information in this document replaces and supersedes any previously provided information in any prior version of this document.
© 2020 - 2026 YUNTU Microelectronics co.,ltd. All rights reserved.
Contact us: Website: www.ytmicro.com.
YUNTU SafLib (Safety Library) provides peripheral self-tests and software safety mechanisms for AUTOSAR application integration. This document describes SafLib 3.0.0 for YTM32B1HA0.
1.1 Release TypeRequired dependency: MCAL 3.0.0. SafLib 3.0.0 must be integrated with MCAL 3.0.0.
Major Version — SafLib 3.0.0.
Status: Internal Release Notes | Release Date: TBC | Issue Snapshot: 2026-10-28
1.2 Release Highlights DmaTst Configuration — Improved startup-test defaults, runtime-test configuration and DMA channel validation. ClkTst Frequency Tolerance — Added a configurable tolerance for enabled clock sources; zero remains the default. FmuTst Clock Restoration — Corrected clock configuration restoration after FMU configuration tests. MCAL Integration — Safety MCAL 3.0.0 adaptation covers Resource configuration, module MemMap, regression tests and demos. EccTst Interrupt Handling — Fixed application hangs when ECC flags are already pending before the test; the ISR is installed before interrupts are enabled. SecureBoot Reset Compatibility — Fixed SLOWBUS clock-test failures after a board-button reset by using the active clock and effective divider settings. 1.3 Version Evolution Item Previous Release / Baseline Current Release (3.0.0) SafLib Version 2.0.0 3.0.0 Target Device YTM32B1HA0 YTM32B1HA0 AUTOSAR CP v4.4.0 v4.4.0 MCAL Dependency See the previous release notes MCAL 3.0.0 (required) 2. Support ToolchainsYUNTU SafLib software package uses the following toolchains / IDEs:
2.1 Recommended Configuration Tool YCT (Yuntu Config Tool) v3.2.0 or higher versionTip: YCT can be downloaded from YTMicro Account or updated from an installed older version.
2.2 Recommended IDE / Compilers IDE / Compiler Minimum Version Notes IAR v9.50 VSCode (Ninja + CMake + GCC/IAR) VSCode v1.80 Cross-platform build system GCC for ARM v10.3 Green Hills v2022.1.4 2.3 Recommended Debugger SEGGER J-LINK v9.2 or higher hardware + v6.96 or higher software/driver Required: YTM32BHA0x patch installed 3. Release ListThe following list summarizes changes for YTM32B1HA0:
[Opt]-[SafLib]-[4] Adapt SafLib resources, SchM MemMap, regression tests and demos to Safety MCAL 3.0.0 [Opt]-[DmaTst]-[1] Improve DmaTst YCT defaults, runtime configuration and DMA channel validation [Opt]-[FmuTst]-[1] Correct clock configuration restoration after FMU configuration tests [Opt]-[ClkTst]-[1] Add configurable frequency tolerance for each enabled clock source, with a default value of zero [Fix]-[EccTst]-[3] Fix EccTst application hangs caused by pending ECC flags by installing the ISR before enabling interrupts and clearing interrupts after the test [Fix]-[ClkTst]-[2] Fix HA0 SLOWBUS clock-test failures after a SecureBoot hardware reset by deriving injection thresholds from the active clock source and DIVSTS dividersType labels for EccTst-ISSUE-189 are classified from the issue content because the source Type field is empty.
4. Known Issues / Limitation 4.1 Integration Notes EccTst (EL3): Update EccTst wherever the module is used. Install the ISR before enabling ECC interrupts, then execute the test and clear interrupts. Revalidate startup and boot-to-application paths with ECC flags already pending. SecureBoot / ClkTst (EL2): Revalidate SLOWBUS high- and low-threshold tests after both board-button reset and debugger reset; derive thresholds from the active clock source and effective DIVSTS dividers. DmaTst: Regenerate and review configuration for startup-test defaults, the minimum hardware-channel count, the single runtime container and channel-link constraints. ClkTst: The tolerance value defaults to zero. Select any nonzero value according to the clock specification and project safety analysis. MCAL Integration: Confirm Resource and module MemMap changes, SUT/SIT/SQT regression and demo updates when integrating Safety MCAL 3.0.0. Release Baseline: Confirm the 3.0.0 version record, package identifier, delivery contents and regression reports. Issue closure does not replace release-package qualification evidence. Annex Release list naming ruleEach release list item contains the following elements:
[Type]-[Module]-[Effect_Level] [Brief Description / Details Link]
Type: Fix — bug fixes; Opt — optimization; New — new functionality; Demo — demonstration projects; Doc — documentation updates. Module: The SafLib module affected by the change. Module names in this document do not constitute a complete device support matrix. Effect_Level: 0: No effect on the previous software version / project. 1: Update recommended but optional. 2: Update the affected module if the application uses the related functionality. 3: Update the affected module if it is used. 4: Update if the software package is used. TBC: The source issue does not specify an effect level. Details Link: The linked YT_SafLib issue provides the analysis, corrective action and verification records. DisclaimerCopyright and Contact Information
YTMicro and its subsidiaries reserve the right to change, correct, enhance, modify and improve YTMicro products or this document at any time without notice. Before placing an order, purchasers should obtain and understand the latest relevant information about the products. YUNTU's products are sold according to YUNTU team and sales conditions at the time of order confirmation. Purchasers have the sole responsibility for selecting, choosing and using YUNTU products, and YUNTU has no responsibility for assisting purchasers in product design and application. YUNTU does not grant any express or implied license to any intellectual property herein. Resale of YUNTU products with information different from that described herein will make any warranty of YUNTU for such product void. YTMicro and YTMicro logo are trademarks of YTMicro. All other product or service names are the property of their respective owners. The information in this document replaces and supersedes any previously provided information in any prior version of this document.
© 2020 - 2026 YUNTU Microelectronics co.,ltd. All rights reserved.
Contact us: Website: www.ytmicro.com.
YUNTU SafLib (Safety Library) provides peripheral self-tests and software safety mechanisms for AUTOSAR application integration. This document describes SafLib 3.0.0 for YTM32B1MD2.
1.1 Release TypeRequired dependency: MCAL 3.0.0. SafLib 3.0.0 must be integrated with MCAL 3.0.0.
Initial Release — SafLib 3.0.0. This is the first SafLib release for YTM32B1MD2; there is no previous release.
Status: Internal Release Notes | Release Date: TBC | Issue Snapshot: 2026-10-28
1.2 Release Highlights MD2 Module Support — Added ClkTst, CrcTst, DmaTst, EccTst, EfmTst, FlsTst, RamTst, StkTst and WdgTst adaptations with related tests. DmaTst Configuration — Improved startup-test defaults, runtime-test configuration and DMA channel validation. Stack Overflow Details — Added StkTst_GetDetailsResult() and its YCT switch to distinguish MSP and PSP overflow. EccTst Interrupt Handling — Fixed application hangs when ECC flags are already pending before the test; the ISR is installed before interrupts are enabled. 1.3 Version Evolution Item Previous Release / Baseline Current Release (3.0.0) SafLib Version N/A (first release) 3.0.0 Target Device N/A YTM32B1MD2 AUTOSAR CP N/A v4.4.0 MCAL Dependency N/A (first release) MCAL 3.0.0 (required) 2. Support ToolchainsYUNTU SafLib software package uses the following toolchains / IDEs:
2.1 Recommended Configuration Tool YCT (Yuntu Config Tool) v3.2.0 or higher versionTip: YCT can be downloaded from YTMicro Account or updated from an installed older version.
2.2 Recommended IDE / Compilers IDE / Compiler Minimum Version Notes IAR v9.50 VSCode (Ninja + CMake + GCC/IAR) VSCode v1.80 Cross-platform build system GCC for ARM v10.3 Green Hills v2022.1.4 2.3 Recommended Debugger SEGGER J-LINK v9.2 or higher hardware + v6.96 or higher software/driver Required: target-device support patch installed 3. Release ListThe following list summarizes changes for YTM32B1MD2:
[New]-[EfmTst]-[0] Add MD2 EfmTst support with updated configuration, test projects and fault injection coverage [New]-[DmaTst]-[TBC] Add MD2 DmaTst support and related tests [Opt]-[DmaTst]-[1] Improve DmaTst YCT defaults, runtime configuration and DMA channel validation [New]-[ClkTst]-[2] Add MD2 ClkTst support and related tests [New]-[WdgTst]-[2] Add MD2 WdgTst support and related tests [New]-[StkTst]-[0] Add MD2 StkTst resources, code generation, source code and test support [New]-[RamTst]-[0] Add MD2 RamTst support and related tests [New]-[FlsTst]-[0] Add MD2 FlsTst support and related tests [New]-[EccTst]-[2] Add MD2 EccTst support with SUT, SIT and SQT tests [New]-[CrcTst]-[0] Add MD2 CrcTst support and related tests [New]-[StkTst]-[0] Add StkTst_GetDetailsResult() and its YCT switch to distinguish MSP and PSP overflow [Fix]-[EccTst]-[3] Fix EccTst application hangs caused by pending ECC flags by installing the ISR before enabling interrupts and clearing interrupts after the testDmaTst-ISSUE-170 does not specify an effect level; it is marked TBC.
Type labels for StkTst-ISSUE-177, EccTst-ISSUE-189 are classified from the issue content because the source Type field is empty.
4. Known Issues / Limitation 4.1 Integration Notes EccTst (EL3): Update EccTst wherever the module is used. Install the ISR before enabling ECC interrupts, then execute the test and clear interrupts. Revalidate startup and boot-to-application paths with ECC flags already pending. DmaTst: Regenerate and review configuration for startup-test defaults, the minimum hardware-channel count, the single runtime container and channel-link constraints. MD2 Coverage: The nine module adaptations in Section 3 do not establish support for unlisted modules. Confirm the complete module and device-variant support matrix. Release Baseline: Confirm the 3.0.0 version record, package identifier, delivery contents and regression reports. Issue closure does not replace release-package qualification evidence. Annex Release list naming ruleEach release list item contains the following elements:
[Type]-[Module]-[Effect_Level] [Brief Description / Details Link]
Type: Fix — bug fixes; Opt — optimization; New — new functionality; Demo — demonstration projects; Doc — documentation updates. Module: The SafLib module affected by the change. Module names in this document do not constitute a complete device support matrix. Effect_Level: 0: No effect on the previous software version / project. 1: Update recommended but optional. 2: Update the affected module if the application uses the related functionality. 3: Update the affected module if it is used. 4: Update if the software package is used. TBC: The source issue does not specify an effect level. Details Link: The linked YT_SafLib issue provides the analysis, corrective action and verification records. DisclaimerCopyright and Contact Information
YTMicro and its subsidiaries reserve the right to change, correct, enhance, modify and improve YTMicro products or this document at any time without notice. Before placing an order, purchasers should obtain and understand the latest relevant information about the products. YUNTU's products are sold according to YUNTU team and sales conditions at the time of order confirmation. Purchasers have the sole responsibility for selecting, choosing and using YUNTU products, and YUNTU has no responsibility for assisting purchasers in product design and application. YUNTU does not grant any express or implied license to any intellectual property herein. Resale of YUNTU products with information different from that described herein will make any warranty of YUNTU for such product void. YTMicro and YTMicro logo are trademarks of YTMicro. All other product or service names are the property of their respective owners. The information in this document replaces and supersedes any previously provided information in any prior version of this document.
© 2020 - 2026 YUNTU Microelectronics co.,ltd. All rights reserved.
Contact us: Website: www.ytmicro.com.
YUNTU SafLib (Safety Library) provides peripheral self-tests and software safety mechanisms for AUTOSAR application integration. This document describes SafLib 3.0.0 for YTM32B1MD1.
1.1 Release TypeRequired dependency: MCAL 3.0.0. SafLib 3.0.0 must be integrated with MCAL 3.0.0.
Major Version — SafLib 3.0.0.
Status: Internal Release Notes | Release Date: TBC | Issue Snapshot: 2026-10-28
1.2 Release Highlights CorTst Reliability — Fixed exclusive-access, floating-point conversion, exception-stack and SysTick test failures under interrupt or OS/FPU context conditions. DmaTst Configuration — Improved startup-test defaults, runtime-test configuration and DMA channel validation. ClkTst Frequency Tolerance — Added a configurable tolerance for enabled clock sources; zero remains the default. CrcTst Verification — Added FLASH signature verification configuration for SQT. Stack Monitoring — Added hardware stack overflow detection and StkTst_GetDetailsResult() to distinguish MSP and PSP overflow. MCAL Integration — Safety MCAL 3.0.0 adaptation covers Resource configuration, module MemMap, regression tests and demos. EccTst Interrupt Handling — Fixed application hangs when ECC flags are already pending before the test; the ISR is installed before interrupts are enabled. 1.3 Version Evolution Item Previous Release / Baseline Current Release (3.0.0) SafLib Version 2.0.0 3.0.0 Target Device YTM32B1MD1 YTM32B1MD1 AUTOSAR CP v4.4.0 v4.4.0 MCAL Dependency See the previous release notes MCAL 3.0.0 (required) 2. Support ToolchainsYUNTU SafLib software package uses the following toolchains / IDEs:
2.1 Recommended Configuration Tool YCT (Yuntu Config Tool) v3.2.0 or higher versionTip: YCT can be downloaded from YTMicro Account or updated from an installed older version.
2.2 Recommended IDE / Compilers IDE / Compiler Minimum Version Notes IAR v9.50 VSCode (Ninja + CMake + GCC/IAR) VSCode v1.80 Cross-platform build system GCC for ARM v10.3 Green Hills v2022.1.4 2.3 Recommended Debugger SEGGER J-LINK v9.2 or higher hardware + v6.96 or higher software/driver Required: target-device support patch installed 3. Release ListThe following list summarizes changes for YTM32B1MD1:
[Opt]-[SafLib]-[4] Adapt SafLib resources, SchM MemMap, regression tests and demos to Safety MCAL 3.0.0 [Fix]-[CorTst]-[2] Fix false Load/Store test failures caused by interrupts clearing the exclusive monitor [Fix]-[CorTst]-[2] Fix floating-point conversion test failures when the OS disables FPCCR.ASPEN [Fix]-[CorTst]-[2] Fix FPSCR comparison failures in the floating-point exception stack test by preserving the post-exception snapshot [Fix]-[CrcTst]-[1] Add CrcTst SQT configuration for signature verification in FLASH [Opt]-[DmaTst]-[1] Improve DmaTst YCT defaults, runtime configuration and DMA channel validation [Opt]-[ClkTst]-[1] Add configurable frequency tolerance for each enabled clock source, with a default value of zero [New]-[StkTst]-[0] Add hardware stack overflow detection using MSPLIM/PSPLIM and configurable reporting [New]-[StkTst]-[0] Add StkTst_GetDetailsResult() and its YCT switch to distinguish MSP and PSP overflow [Fix]-[CorTst]-[1] Fix intermittent SysTick exception test failures under frequent interrupts by waiting after the pending request [Fix]-[EccTst]-[3] Fix EccTst application hangs caused by pending ECC flags by installing the ISR before enabling interrupts and clearing interrupts after the testType labels for CorTst-ISSUE-165, CorTst-ISSUE-166, CorTst-ISSUE-167, CrcTst-ISSUE-168, CorTst-ISSUE-186, EccTst-ISSUE-189 are classified from the issue content because the source Type field is empty.
4. Known Issues / Limitation 4.1 Integration Notes EccTst (EL3): Update EccTst wherever the module is used. Install the ISR before enabling ECC interrupts, then execute the test and clear interrupts. Revalidate startup and boot-to-application paths with ECC flags already pending. CorTst: Revalidate the affected tests with the target OS, interrupt load and FPU context settings. Follow the effect levels in Section 3. DmaTst: Regenerate and review configuration for startup-test defaults, the minimum hardware-channel count, the single runtime container and channel-link constraints. ClkTst: The tolerance value defaults to zero. Select any nonzero value according to the clock specification and project safety analysis. MCAL Integration: Confirm Resource and module MemMap changes, SUT/SIT/SQT regression and demo updates when integrating Safety MCAL 3.0.0. Release Baseline: Confirm the 3.0.0 version record, package identifier, delivery contents and regression reports. Issue closure does not replace release-package qualification evidence. Annex Release list naming ruleEach release list item contains the following elements:
[Type]-[Module]-[Effect_Level] [Brief Description / Details Link]
Type: Fix — bug fixes; Opt — optimization; New — new functionality; Demo — demonstration projects; Doc — documentation updates. Module: The SafLib module affected by the change. Module names in this document do not constitute a complete device support matrix. Effect_Level: 0: No effect on the previous software version / project. 1: Update recommended but optional. 2: Update the affected module if the application uses the related functionality. 3: Update the affected module if it is used. 4: Update if the software package is used. TBC: The source issue does not specify an effect level. Details Link: The linked YT_SafLib issue provides the analysis, corrective action and verification records. DisclaimerCopyright and Contact Information
YTMicro and its subsidiaries reserve the right to change, correct, enhance, modify and improve YTMicro products or this document at any time without notice. Before placing an order, purchasers should obtain and understand the latest relevant information about the products. YUNTU's products are sold according to YUNTU team and sales conditions at the time of order confirmation. Purchasers have the sole responsibility for selecting, choosing and using YUNTU products, and YUNTU has no responsibility for assisting purchasers in product design and application. YUNTU does not grant any express or implied license to any intellectual property herein. Resale of YUNTU products with information different from that described herein will make any warranty of YUNTU for such product void. YTMicro and YTMicro logo are trademarks of YTMicro. All other product or service names are the property of their respective owners. The information in this document replaces and supersedes any previously provided information in any prior version of this document.
© 2020 - 2026 YUNTU Microelectronics co.,ltd. All rights reserved.
Contact us: Website: www.ytmicro.com.
YUNTU SafLib (Safety Library) provides peripheral self-tests and software safety mechanisms for AUTOSAR application integration. This document describes SafLib 3.0.0 for YTM32B1ME0.
1.1 Release TypeRequired dependency: MCAL 3.0.0. SafLib 3.0.0 must be integrated with MCAL 3.0.0.
Major Version — SafLib 3.0.0.
Status: Internal Release Notes | Release Date: TBC | Issue Snapshot: 2026-10-28
1.2 Release Highlights CorTst Reliability — Fixed exclusive-access, floating-point conversion, exception-stack and SysTick test failures under interrupt or OS/FPU context conditions. DmaTst Configuration — Improved startup-test defaults, runtime-test configuration and DMA channel validation. ClkTst Frequency Tolerance — Added a configurable tolerance for enabled clock sources; zero remains the default. CrcTst Verification — Added FLASH signature verification configuration for SQT. Stack Monitoring — Added hardware stack overflow detection and StkTst_GetDetailsResult() to distinguish MSP and PSP overflow. MCAL Integration — Safety MCAL 3.0.0 adaptation covers Resource configuration, module MemMap, regression tests and demos. EccTst Interrupt Handling — Fixed application hangs when ECC flags are already pending before the test; the ISR is installed before interrupts are enabled. 1.3 Version Evolution Item Previous Release / Baseline Current Release (3.0.0) SafLib Version 2.0.0 3.0.0 Target Device YTM32B1ME0 YTM32B1ME0 AUTOSAR CP v4.4.0 v4.4.0 MCAL Dependency See the previous release notes MCAL 3.0.0 (required) 2. Support ToolchainsYUNTU SafLib software package uses the following toolchains / IDEs:
2.1 Recommended Configuration Tool YCT (Yuntu Config Tool) v3.2.0 or higher versionTip: YCT can be downloaded from YTMicro Account or updated from an installed older version.
2.2 Recommended IDE / Compilers IDE / Compiler Minimum Version Notes IAR v9.50 VSCode (Ninja + CMake + GCC/IAR) VSCode v1.80 Cross-platform build system GCC for ARM v10.3 Green Hills v2022.1.4 2.3 Recommended Debugger SEGGER J-LINK v9.2 or higher hardware + v6.96 or higher software/driver Required: target-device support patch installed 3. Release ListThe following list summarizes changes for YTM32B1ME0:
[Opt]-[SafLib]-[4] Adapt SafLib resources, SchM MemMap, regression tests and demos to Safety MCAL 3.0.0 [Fix]-[CorTst]-[2] Fix false Load/Store test failures caused by interrupts clearing the exclusive monitor [Fix]-[CorTst]-[2] Fix floating-point conversion test failures when the OS disables FPCCR.ASPEN [Fix]-[CorTst]-[2] Fix FPSCR comparison failures in the floating-point exception stack test by preserving the post-exception snapshot [Fix]-[CrcTst]-[1] Add CrcTst SQT configuration for signature verification in FLASH [Opt]-[DmaTst]-[1] Improve DmaTst YCT defaults, runtime configuration and DMA channel validation [Opt]-[ClkTst]-[1] Add configurable frequency tolerance for each enabled clock source, with a default value of zero [New]-[StkTst]-[0] Add hardware stack overflow detection using MSPLIM/PSPLIM and configurable reporting [New]-[StkTst]-[0] Add StkTst_GetDetailsResult() and its YCT switch to distinguish MSP and PSP overflow [Fix]-[CorTst]-[1] Fix intermittent SysTick exception test failures under frequent interrupts by waiting after the pending request [Fix]-[EccTst]-[3] Fix EccTst application hangs caused by pending ECC flags by installing the ISR before enabling interrupts and clearing interrupts after the testType labels for CorTst-ISSUE-165, CorTst-ISSUE-166, CorTst-ISSUE-167, CrcTst-ISSUE-168, CorTst-ISSUE-186, EccTst-ISSUE-189 are classified from the issue content because the source Type field is empty.
4. Known Issues / Limitation 4.1 Integration Notes EccTst (EL3): Update EccTst wherever the module is used. Install the ISR before enabling ECC interrupts, then execute the test and clear interrupts. Revalidate startup and boot-to-application paths with ECC flags already pending. CorTst: Revalidate the affected tests with the target OS, interrupt load and FPU context settings. Follow the effect levels in Section 3. DmaTst: Regenerate and review configuration for startup-test defaults, the minimum hardware-channel count, the single runtime container and channel-link constraints. ClkTst: The tolerance value defaults to zero. Select any nonzero value according to the clock specification and project safety analysis. MCAL Integration: Confirm Resource and module MemMap changes, SUT/SIT/SQT regression and demo updates when integrating Safety MCAL 3.0.0. Release Baseline: Confirm the 3.0.0 version record, package identifier, delivery contents and regression reports. Issue closure does not replace release-package qualification evidence. Annex Release list naming ruleEach release list item contains the following elements:
[Type]-[Module]-[Effect_Level] [Brief Description / Details Link]
Type: Fix — bug fixes; Opt — optimization; New — new functionality; Demo — demonstration projects; Doc — documentation updates. Module: The SafLib module affected by the change. Module names in this document do not constitute a complete device support matrix. Effect_Level: 0: No effect on the previous software version / project. 1: Update recommended but optional. 2: Update the affected module if the application uses the related functionality. 3: Update the affected module if it is used. 4: Update if the software package is used. TBC: The source issue does not specify an effect level. Details Link: The linked YT_SafLib issue provides the analysis, corrective action and verification records. DisclaimerCopyright and Contact Information
YTMicro and its subsidiaries reserve the right to change, correct, enhance, modify and improve YTMicro products or this document at any time without notice. Before placing an order, purchasers should obtain and understand the latest relevant information about the products. YUNTU's products are sold according to YUNTU team and sales conditions at the time of order confirmation. Purchasers have the sole responsibility for selecting, choosing and using YUNTU products, and YUNTU has no responsibility for assisting purchasers in product design and application. YUNTU does not grant any express or implied license to any intellectual property herein. Resale of YUNTU products with information different from that described herein will make any warranty of YUNTU for such product void. YTMicro and YTMicro logo are trademarks of YTMicro. All other product or service names are the property of their respective owners. The information in this document replaces and supersedes any previously provided information in any prior version of this document.
© 2020 - 2026 YUNTU Microelectronics co.,ltd. All rights reserved.
Contact us: Website: www.ytmicro.com.
1、例程将PFlash0作为A面,PFlash1作为B面,实现A/B Swap功能
SDK Demo例程:MD2x_Swap.zip
2、Demo功能介绍
FLASH_DRV_BootSwap(0):通过内部闪存命令(0x30)执行Swap操作。
677e37d0-fd03-4438-831a-8adea93e76a0-image.png
Get_SwapInfo(&swapInfo):读取EFM->STS寄存器,获取BOOT_INFO标志
e8f845e3-7c13-4b77-8106-b426b3047caf-image.png
89db2b5f-6f31-4605-83a5-0c151388941a-image.png
测试主逻辑:上电后读取BOOT_INFO标志,通过BOOT_INFO标志判断当前代码运行在哪个PFflash中,程序运行在PFlash0时点亮LED_A,运行在PFlash1时点亮LED_B。
9f5f5e3f-c9b8-4d5d-b25e-10531dd5805f-image.png
3、测试验证
使用J-Flash擦除芯片。
1b5d7f68-641e-4877-a9b8-35451b7aad88-image.png
将工程程序编译的文件加载到J-Flash中。
dfc46ef6-e9c6-4ef6-8127-eee0beb4d38e-image.png
对PFlash0进行烧录。
4cf326b5-5412-4681-8b03-e433d15be88c-image.png
在Edit->Relocate界面将烧录地址偏移到PFlash1中进行烧录。
8dc92d23-5327-4cd7-98b9-f5f541d8160f-image.png
4、重新上电运行程序
程序会在蓝灯和绿灯之间来回切换,绿灯代表程序在PFlash0中运行,蓝灯代表程序在PFlash1中运行。
affa5ffe-4192-4249-8473-ddf69c81cfd2-image.png
fa4e2037-9cbb-4806-bbdd-6d44814b68c7-image.png 、
用此SKILL, 方便AI操作yct_cli,对工程进行校验,测试,代码生成。
--- name: yct-cli description: >- Operate yct_cli to check, test, and generate code for YTMicro .yct projects (SDK, MCAL, MCAL_EB / EB Tresos). Use when the user mentions yct_cli, a .yct file, SDK, MCAL, MCAL_EB, EB Tresos, tresos_cmd, TRESOS_BASE, 校验, 测试, or 代码生成. --- # yct_cli 用此SKILL, 方便AI操作yct_cli,对工程进行校验,测试,代码生成。 `yct_cli` reads an existing `.yct` and the installed SDK or MCAL package. It does not create the `.yct`. Prefer `yct_cli` on PATH. From this repo, after `npm run cli:build`, use `node cli/cli.min.js`. ## Pick a command Read `project.type` from the `.yct`, then run that command. | Project type | Command | |---|---| | sdk | `yct_cli sdk` | | mcal | `yct_cli mcal` | | mcal_eb | `yct_cli mcal_eb` (alias of `mcal`) | Check with `-c`. Generate code with `-g`. Write the IDE project with `-P` (needs `-g` for MCAL and MCAL_EB). Compile a CMake project only after generate succeeds. ## Package root Resolution order: 1. `-p` install root 2. YT Config Tool settings file: Windows `%APPDATA%/yt_config_tool/config.json`, macOS `~/Library/Application Support/yt_config_tool/config.json`, Linux `~/.config/yt_config_tool/config.json`. Keys: `sdkPath`, `mcalPath`, `mcalEbPath` 3. `userDataPath` plus the project type directory Family folder under that root: - `sdkVersion` is `dev`, or settings `withoutVer` is true: `root/family` - otherwise: `root/family_sdkVersion` `--sdkVer` or `--mcalVer` overwrites the version in the `.yct` before that lookup. The family folder must contain `sdk.json`, `mcal.json`, or `mcal_eb.json`. CLI copies `env` entries from that config, including `TRESOS_BASE`, into the process environment when the variable is not already set. ## SDK Check: yct_cli sdk -i app.yct -c Generate the IDE project: yct_cli sdk -i app.yct -P --ide CMakeGCC `-c` validates the project. `-P` writes IDE files. `--ide` is one of `EWARM`, `KEIL`, `CMakeGCC`, `CMakeEWARM`, `CMakeKEIL`, `CMakeGHS`. | Flag | Required | Meaning | |---|---|---| | `-i, --input` | yes | `.yct` path | | `--verbose` | no | Verbose log | | `-c, --check` | no | Validate the `.yct` | | `-p, --path` | no | SDK install root | | `--ide` | no | IDE name, list above | | `-O, --optimization` | no | CMake optimization. Must be legal for the toolchain | | `--link` | no | Overwrite link file | | `--sdkVer` | no | Overwrite `sdkVersion`, for example `1_0_3` | | `-o, --output` | no | Output path. Default is the `.yct` directory | | `-n, --name` | no | Overwrite project name | | `-P, --project` | no | Also generate IDE files | ## MCAL Check, including stub modules: yct_cli mcal -i app.yct -c -S Generate code, copy MCAL sources, and write the IDE project: yct_cli mcal -i app.yct -g -P --copyMcal --ide CMakeGCC `-c` validates loaded modules. Stub modules such as `EcuM` and `CanIf` are skipped unless `-S`. `-g` generates config code, including `Mcal.h`. `-gm Mcu Dio` limits generation to those modules. `--copyMcal` copies MCAL sources. `-P` needs `-g`. ## MCAL_EB An MCAL_EB `.yct` has `type` `mcal_eb`. Module configuration lives in the EB Tresos project. `.yct` data is usually only `ytlink`. Tresos project directory: - `project.eb.projectPath` when set (absolute, or relative to the `.yct` directory) - otherwise the `.yct` directory That directory must contain `.prefs/pref_general.xdm`. Enabled modules and `GenerationPath` (often `output`) come from that file. `project.eb.stubModules` lists extra stub modules to pull in. Generate, then the IDE project is ready to compile: yct_cli mcal_eb -i Dio_Demo.yct -g -P --copyMcal --ide CMakeGCC - `-g` writes `board/Mcal.h`, or `project.generate.folder` - `--copyMcal` copies driver sources from `plugin.json` move entries. Required before a link. Without it the build only has Tresos `output` and `Mcal.h` - `-P` writes the IDE project. CMake toolchains also write `cmake/ebGenerate.cmake` - `--ide` uses the same list as SDK. Omit it when the `.yct` toolchain is already correct - `-c` does not run XDM validation on MCAL_EB Compile a CMake project from the `.yct` directory: cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE=../cmake/gcc.cmake -B build cmake --build build Configure runs Tresos when `TRESOS_BASE` points at an install that contains `bin/tresos_cmd.bat` (Windows) or `bin/tresos_cmd.sh`. The YT Config Tool env value is written into `CMakeLists.txt`. Tresos C and H files stay in `GenerationPath`. CMake globs them together with the copied MCAL sources. `mcal_eb` is an alias of `mcal`. The `.yct` `project.type` selects the flow. Shared flags: | Flag | Required | Meaning | |---|---|---| | `-i, --input` | yes | `.yct` path | | `--verbose` | no | Verbose log | | `-c, --check` | no | Validate. MCAL_EB skips XDM validation | | `-S, --stub` | no | Include stub modules such as `EcuM` and `CanIf` | | `-p, --path` | no | MCAL or MCAL_EB install root | | `-g, --generate` | no | Generate config code, including `Mcal.h` | | `--copyMcal` | no | Copy MCAL sources from plugin move entries | | `--ide` | no | Same IDE list as SDK | | `-O, --optimization` | no | CMake optimization | | `-gm, --generateModule` | no | Only these modules, for example `-gm Mcu Dio` | | `--mcalVer` | no | Overwrite `sdkVersion`, for example `2_0_0` | | `-P, --project` | no | IDE files. Needs `-g` | | `-s, --save` | no | Write the loaded project back to the `.yct`, with a `.yct.bak` backup | CMake optimization values: - `CMakeEWARM`: `-On -Ol -Om -Oh -Ohs -Ohz`. Default `-Ol`. - `CMakeKEIL`: `-O0 -O1 -O2 -O3 -Oz -Omin -Ofast -Omax -Os`. Default `-O1`. - `CMakeGCC`: `-O0 -O1 -O2 -Os -Ofast`. Default `-O1`. - `CMakeGHS`: `-Omaxdebug -Omoredebug -Odebug -Ogeneral -Osize -Ospeed -Onone`. Default `-Ogeneral`.-
Announcements
Announcements regarding our community
-
Discussion & Question
A place to talk about whatever you want or ask a question
-
Blogs
Blog posts from individual members
快速上手云途开发生态
发帖前请查看
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...