STM32 DSP库的使用方法
一、工程中如何添加DSP庫
在keil5軟件中點擊 Pack,CMISIS組件選擇DSP資源,可以選擇Source源碼或者Library庫導(dǎo)入到項目中,點擊OK,可以在項目樹中看到該資源已經(jīng)導(dǎo)入了工程。
二、?如何使用DSP庫
DSP庫對浮點計算做了優(yōu)化和增強(qiáng),一般來說在具有FPU單元的單片機(jī)上運行效果更好,STM32F4 是M4內(nèi)核,支持FPU,但默認(rèn)是關(guān)閉該功能的,需要手動開啟,開啟方法很簡單,開啟Single Precison,硬件浮點計算功能即可。
以STM32F4為例,其預(yù)編譯添加以下宏支持:ARM_MATH_CM4(CM4支持的),ARM_MATH_MATRIX_CHECK(矩陣輸入輸出檢查),ARM_MATH_ROUNDING(四舍五入相關(guān)支持)
在項目工程中,一般需要包括#include "arm_math.h"? #include "math_helper.h"? #include "arm_const_structs.h"頭文件夾即可。
具體使用方法參考官方說明文檔,沒有哪一個博客寫的有官方文檔好。
DSP庫支持的計算類別包括:
- 基本數(shù)學(xué)函數(shù),包括:向量的絕對值,加減乘除,位與,點乘,或,異或等
- 快速數(shù)學(xué)函數(shù),包括:平方根,余弦,正弦
- 復(fù)雜的數(shù)學(xué)函數(shù),包括:共軛,點乘,復(fù)數(shù),復(fù)數(shù)平方,乘方,實數(shù)乘法
- 濾波功能,包括:FIR IIR LMS 等
- 矩陣函數(shù),包括:矩陣的加法、轉(zhuǎn)置、乘法、逆等
- 變換功能,包括:FFT?
- 電機(jī)控制功能,包括:PID、Clarke、正余弦變換等
- 統(tǒng)計功能,包括:最大、平均、方差、標(biāo)準(zhǔn)差、均方根等
- 支持功能,包括:排序、填充、插值、轉(zhuǎn)換等
- 插值功能,包括:線性插值、雙線性插值等
- 支持向量機(jī)功能(SVM),包括:SVM
- 貝葉斯分類器功能,包括:貝葉斯估計
- 距離計算功能,包括:常見的距離計算,如歐式距離,余弦距離等
在線參考手冊:https://www.keil.com/pack/doc/CMSIS/DSP/html/group__cos.html#gace15287f9c64b9b4084d1c797d4c49d8
其他需要注意的事項,注意KEIL軟件版本和Pack,盡量使用最新的版本。
總結(jié)
以上是生活随笔為你收集整理的STM32 DSP库的使用方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux cJSON库的使用、编译为c
- 下一篇: cacti 监控安装失败