ARM Developer Keil MDK是面向各种STM32微控制器产品的全面软件开发解决方案,提供创建、编译和调试嵌入式应用程序时所需的一切资源。MDK包括真正的Arm编译器和易于使用的Keil uVision IDE/调试器,可与STM32CubeMX和软件包连接。MDK还提供各种专业的中间件组件。
Arm Keil MDK 是适用于基于 Arm 的微控制器的最全面的软件开发解决方案,包括创建、构建和调试嵌入式应用程序所需的所有组件。Keil MDK 包括以下功能。
µVision(仅限 Windows) MDK-Core 基于 µVision ,支持 Cortex-M 设备,包括 Armv8.1-M 架构。
Arm C 和 C++ 编译器 MDK 包括Arm C 或 C++ 编译器 ,带有汇编器、链接器和高度优化的运行时库,这些库专为基于 Arm Cortex-M 的设备量身定制,可实现最佳代码大小和性能。
软件包
可以添加到 MDK-Core,使新设备支持和中间件更新独立于工具链。
包含设备支持、CMSIS 库、中间件、电路板支持、代码模板和示例项目。
MDK-中间件 软件堆栈支持:
TCP 或 IP 网络
USB 主机和设备连接
图形用户界面
嵌入式设备的文件系统
调试探针 单独提供以帮助识别应用程序中的问题。调试技术包括:
代码覆盖率
性能分析
事件追踪
电源感知调试
MDK 版本 5.38
发布日期:2022 年 11 月 21 日。
安装前的考虑
默认情况下,安装目标文件夹指定为C:/Keil_v5/. 在此文件系统位置,所有本地用户都具有完全访问权限。为了增强安全性,用户可以选择将产品安装到他们的%LOCALAPPDATA%文件夹 ( C:/Users/<user>/AppData/Local/Keil_v5/) 中,该文件夹的访问权限仅限于当前本地用户和具有管理权限的用户。请注意,Show hidden files需要启用才能浏览到%LOCALAPPDATA%文件夹。
µVision更新至V5.38.0.0
CMSIS-Pack 配置文件:
增强版本生命周期管理:现在可以对“基础”、“更新”和用户管理文件进行三向合并。
基本版本文件 (<configfilename>.<extension>.base@version) 是只读的,应作为项目的一部分存储和发送。它们是软件组件附带的未经修改的默认配置文件。将来,配置文件的版本信息将不再存储为 µVision 项目文件的一部分 ( *.uvprojx)。
*.cprj 格式项目文件的导入和导出得到改进和更新,以支持 Open-CMSIS-Pack 项目的 CMSIS-Toolbox 实施中的最新更改
包含 Arm 编译器
Arm Compiler 6 版本 6.19 - 有关详细信息,请参阅发行说明。
笔记
armasm:不推荐用于 armasm-syntax 汇编代码的遗留汇编器,仅支持旧的 Arm 架构。对所有新的汇编文件使用 armclang 集成汇编器(GNU arm 汇编器语法)。
Arm Compiler 5 不再包含在 MDK-Core 安装程序中。
µVision 仍然支持 Arm Compiler 5,可以从此处下载,例如从修订下拉列表中选择 r5p6-07rel0 以下载“Arm Compiler 5.06 更新 7(内部版本 960)Win32”。本页介绍了在 µVision 中安装 Arm Compiler 5 后如何在您的 MDK 安装目录(默认值:)中进行配置。C:\Keil_v5\ARM\ARMCC
包含的软件包
Keil - MDK 中间件 7.16.0
网络组件版本 7.18.0
文件系统组件版本 6.15.3
USB 组件版本 6.16.1
Keil - MDK-Middleware Graphics 1.1.0(与 MDK v5.37 相同)
更新至 Segger emWin 版本 6.24。
Arm - CMSIS 5.9.0(与 MDK v5.37 相同)
有关更改的完整列表,请参阅CMSIS 5.9.0 版本。
Arm - CMSIS-DSP 1.14.2(新)
CMSIS-DSP 库现在托管在GitHub 上,位于与 CMSIS_5 不同的存储库中,并在 ARM.CMSIS-DSP 包中分发。所有未来的开发都在这个新的存储库中完成。
有关更改的完整列表,请参阅CMSIS-DSP 1.14.2 版本。
Arm - CMSIS-NN 4.0.0(新)
CMSIS-NN 库现在托管在GitHub 上与 CMSIS_5 不同的存储库中,并在 ARM.CMSIS-NN 包中分发。所有未来的开发都在这个新的存储库中完成。
返回类型的向后不兼容更改:所有返回状态的 API 的返回类型都已更改。CMSIS-NN 以前使用 CMSIS-DSP 中类型为 enum 的错误代码arm_status。这现在被 enum 取代了arm_cmsis_nn_status。状态的数值保持不变。建议用户更新其应用程序中的返回类型。
有关更改的完整列表,请参阅CMSIS-NN 4.0.0 版本。
Arm - CMSIS 驱动程序 2.7.2
有关更改的完整列表,请参阅CMSIS-Driver 2.7.2 Release。
Keil - Arm 编译器 1.7.2(与 MDK v5.37 相同)
CMSIS-工具箱
添加:CMSIS-Toolbox 版本 1.3.0,包括位于目录中的 Arm Compiler 6.19 的编译器配置文件。C:\Keil_v5\ARM\ctools
按照 Windows 的设置说明使用来自 MDK 的 Arm 编译器和 CMSIS-Packs 以及来自 CMSIS-Toolbox 的命令行工具。
µVision 支持导入/导出Open-CMSIS-Pack项目指定的“cprj”项目描述格式。
Cortex-M 模型
Arm 虚拟硬件 (AVH)模型已更新至版本 11.19.23。
添加了新的 Corstone SSE-310 (Cortex-M85) 模型变体,包括 Ethos-U65 机器学习处理器 (NPU)。
这些模型的工作方式与之前发货的 FVP 模型类似,但添加了以下虚拟接口:
用于控制简单 I/O(如 LED 和开关)的虚拟输入/输出 (VIO) 。
用于音频、视频和传感器数据流的虚拟流接口 (VSI)。
用于通过主机系统进行 IP 网络连接的虚拟套接字接口 (VSocket) 。
目标调试
塞格 J 链接:
将调试驱动程序更新到版本 7.82。
意法半导体ST-LINK:
将调试驱动程序更新到版本 3.1.0。
将固件升级实用程序 ST-LinkUpgrade.exe 更新至版本 2.6.0。
新唐 NU-Link :
将调试驱动程序更新到版本 3.09.7380r。
德州仪器 XDS110:
用于 TI MPS432 Launchpad 的调试探针。
将调试驱动程序更新到版本 1.0.13,修复了 SWD 模式下的连接问题。
新增功能:系统分析器在单个窗口中随时间显示相关执行信息。它显示程序事件、中断执行、数据跟踪和功耗(使用ULINKplus时)。
新增:事件统计窗口显示相应启动和停止事件之间的执行时间和电流消耗(使用ULINKplus时)。它提供多次执行的平均值的统计数据,并捕获最小和最大时间/当前事件。
添加:事件记录器调试命令:事件文件记录、过滤器设置保存/恢复和统计重置/文件记录。
新:编辑器改进:灰色文本显示#if/#endif语句之间的非活动源代码;带下划线的文本显示符号、类型和函数的帮助链接。按 F1 键打开相应的文档。
新增功能:不带调试的能量测量禁用 CoreSight 调试硬件,以使用ULINKplus对目标硬件进行纯功率测量。
包含 Arm 编译器
将 ARM Compiler 5 更新为版本 5.06u6:有关详细信息,请参阅发行说明。
将 ARM Compiler 6 更新至版本 6.9:有关详细信息,请参阅发行说明。
包含的软件包
ARM-CMSIS 5.3.0
添加:神经网络库CMSIS-NN版本 1.0.0 的初始版本。
更新:CMSIS-Core (Cortex-M)到版本 5.1.1 和CMSIS-Core (Cortex-A)到版本 1.1.1
更新:CMSIS-DAP到版本 2.0.0(通过 WinUSB 进行通信以实现更高的传输速率)。
Keil - ARM 编译器扩展 1.4.0
向事件记录器组件添加了专用的启动/停止事件。这些事件使 MDK 调试器的事件统计对话框能够显示这些事件之间的最小、最大和平均执行时间、通过次数和电流消耗。
Keil - MDK 中间件 7.6.0
文件系统组件在版本 6.10.0 中保持不变。
更新:网络组件到版本 7.8.0。
添加:netUninitialize函数以取消初始化网络组件。
更正:发送带有大附件的电子邮件时, netSMTPc_SendMail函数失败。
更正:netSMTPc_SendMail功能,如果请求的附件不存在,该功能将失败并显示错误代码netFileError,而不是发送虚拟附件。
更改:在 TFTP 客户端中的适当位置将代码netError返回到netFileError 。
更正:netSMTPc_SendMail函数中字符“=”的引用可打印编码。
已记录:网络 API 函数的可能返回码。
更新:USB 组件到版本 6.12.4。
USB主机
更正:用于调试目的的计时器、信号量和互斥锁部分位置。
改进:通过为失败的驱动程序操作添加 2 次重试来提高稳健性。
更正:USART_CDC_ACM.c CMSIS UART 驱动程序接收函数在接收缓冲区中返回无效数据。
改进:U盘卸载程序。
USB 设备
更正:用于调试目的的计时器、信号量和互斥锁部分位置。
改进:通过为失败的驱动程序操作添加 2 次重试来提高稳健性。
更新:图形组件到版本 5.46.5 (5.46e)。
为运行时轮换添加了一组新函数。
添加了新函数 GUI_SetClearTextRectMode() 来管理 GUI_DispStringInRect() 的背景绘制行为
目标调试
添加:Arm ULINKplus调试适配器支持。有关详细信息,请参阅ULINKplus 用户指南。用户指南还涵盖了为使用 ULINKplus的功率测量和测试自动化引入的 uVision 功能。
更新:P&E Micro 调试驱动程序至版本 6.78。
更新:Segger J-Link 调试驱动程序至版本 6.30h。
更新:NULink 驱动程序至版本 2.03.6674。