5-23
rtt官方有cmsis支持包,,,,又白造轮子了哎
本文主要介绍,如何使用rt-thread的scons工具添加DSP库组件
1. 准备所需文件
在bsp目录下建立文件夹,添加以下文件
其中.a
文件是gcc工具链使用的静态库,.lib
文件是keil编译所需的库,笔者没有使用iar工具,故此处没有添加iar工具的对应库文件.
2. 编辑SConscript文件
这里直接给出脚本内容,具体含义可以参考rtt官方的scons手册
Import('rtconfig') from building import * cwd = GetCurrentDir() src = Split(''' ''') CPPPATH = [cwd] # 将当前路径加入构建搜索的头文件路径 LIBPATH = [cwd] # LIBPATH 指定库的路径,表示库的搜索路径是当前目录 if rtconfig.CROSS_TOOL == 'gcc': LIBS = ['arm_cortexM4lf_math'] # GCC 下 LIBS 指定库的名称 elif rtconfig.CROSS_TOOL == 'keil': LIBS = ['arm_cortexM4lf_math'] # ARMCC 下 LIBS 指定库的名称 else: LIBS = ['libabc_iar'] # IAR 下 LIBS 指定库的名称 CPPDEFINES = ['ARM_MATH_LOOPUNROLL'] CPPDEFINES = ['ARM_MATH_CM4'] group = DefineGroup('arm-dsp', src, depend = ['RT_USING_ARMDSP'], LIBS = LIBS, LIBPATH=LIBPATH, CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES) Return('group')
3. 编辑Kconfig
这里直接编辑board下的Kconfig,添加使能DSP库选项
config RT_USING_ARMDSP bool "Enable ARM-DSP Lib" select RT_USING_ARMDSP default n
到这里准备工作就完成了,下面介绍如何使用
4. 使用
打开bsp目录,使用menuconfig
使能DSP库
然后导出代码
scons --dist --target=cmake --project-name=dsp-test
测试cmake工程
结果如下,完美计算出正弦值,移植成功。
同样生成mdk工程,进入生成的目录下,执行
scons --target-=mdk5
编译烧录后结果相同,移植成功。