1、 文档目标
ArmDS中如何调用CMSIS-DSP库的API。
2、 问题场景
某客户需要在ArmDS中如何实现Helium指令,也需要其他类似的CMSIS-DSP指令。
Cortex-M55 都自带单精度浮点的 Helium 指令。
Helium 指令是 Cortex-M55 引入的一种新的浮点指令集,它基于 ARMv8.5-FP 规范。Helium 指令可以显著提高 Cortex-M55 的浮点性能。
Cortex-M55 有两种版本:
Cortex-M55F:包含单精度浮点和双精度浮点的 Helium 指令。
Cortex-M55D:仅包含单精度浮点的 Helium 指令。
3、软硬件环境
1)、软件版本:ArmDS 2023.0
2)、电脑环境:Windows 11
3)、外设硬件:无
4、解决方法
1)、打开ArmDS软件自带的Coretex-M55的实例中的“Coretex-M55.rteconfig”文件,选择“DSP”如图4-1所示:
![](/Uploads/2024-01-10/659e63e49c75b.png)
图4-1
2)、在上图中,点击“CMSIS-DSP Library for Cortex-M and Comtex-A”,打开帮助文档,找到“arm_class_marks_example_f32.c”文件,如图4-2所示:
![](/Uploads/2024-01-10/659e64030866e.png)
图4-2
3)、打开“arm_class_marks_example_f32.c”文件,把CMSIS-DSP库的相关的API添加到工程的main.c中,然后编译工程,如图4-3所示:(注:arm_math.h是CMSIS-DSP库的头文件)
![](/Uploads/2024-01-10/659e641e9226a.png)
图4-3