arm_offset_q15関数 |
配列にオフセットを加算する |
関数のソース(CMSIS 2.0以上をダウンロード・インストールする必要あり) CMSIS_2_00\CMSIS\DSP_Lib\Source\Cortex-M4-M3\BasicMathFunctions\arm_offset_q15.c サンプルソース(DFFSKN40基板付属CD-ROMに収録) IARprojects\src\projects\arm_offset 引数と戻り値 説明(イメージ) 使用例(サンプルソースの一部)
実験 上記のサンプルソースをDFFSKN40基板(デジタルフィルター社)にて実験した。Cortex-M4マイコンはPK40X256VMD100(Kinetis, フリースケール社)搭載。演算結果をLCDに16進数で表示している。 下の写真はn = 0のとき。 a[0] = 10,000, offset = 100なので、 10,000 + 100 = 10,100 = c[0] 16進数で: 0x 2774 下の写真はn = 1のとき。 a[1] = -12,345, offset = 100なので、 -12,345 + 100 = -12,245 = c[1] 16進数で: 0x D02B 下の写真はn = 2のとき。 a[2] = 32600, offset = 100なので、 32,600 + 100 = 32700 = c[2] 16進数で: 0x 7FBC 下の写真はn = 3のとき。 a[3] = 32,700, offset = 100なので、 32,700 + 100 = 32,800 ←Q15の範囲を超えている この場合、最大値で飽和させる。32,767 = c[3] 16進数で: 0x 7FFF |