arm_float_to_q15関数 |
配列の各要素をfloatからQ15に型変換する |
関数のソース(CMSIS 2.0以上をダウンロード・インストールする必要あり) CMSIS_2_00\CMSIS\DSP_Lib\Source\Cortex-M4-M3\SupportFunctions\arm_float_to_q15.c サンプルソース(DFFSKN40基板付属CD-ROMに収録) IARprojects\src\projects\arm_f2q15 引数と戻り値 使用例(サンプルソースの一部)
実験 上記のサンプルソースをDFFSKN40基板(デジタルフィルター社)にて実験した。Cortex-M4マイコンはPK40X256VMD100(Kinetis, フリースケール社)搭載。演算結果をLCDに16進数で表示している。 下の写真はfloatで0.1のとき→Q15で0x0CCC 下の写真はfloatで-0.1のとき→Q15で0xF334 負の数はMSBが1になる。 下の写真はfloatで0.9のとき→Q15で0x7333 下の写真はfloatで-0.9のとき→Q15で0x8CCD 負の数はMSBが1になる。 まめ知識 範囲[-1.0 to +1.0)を超えると飽和(0x8000, 0x7FFF)する。 ARM_MATH_ROUNDINGを定義すると四捨五入、そうでなければ切り捨てる。 |