0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【英飛凌PSoC 6 RTT開發(fā)板試用】信號處理前端之頻率幅值相位分析

嵌入式USB開發(fā) ? 來源:嵌入式USB開發(fā) ? 作者:嵌入式USB開發(fā) ? 2023-07-14 09:02 ? 次閱讀

3.2 周期(頻率),幅值,相位分析

原理

FFT變換結(jié)果,幅值最大的橫坐標(biāo)對應(yīng)信號頻率,縱坐標(biāo)對應(yīng)幅度。幅值最大的為out[m]=val;則信號頻率f0=(Fs/N)m ,信號幅值Vpp=val/(N/2)。N為FFT的點數(shù),F(xiàn)s為采樣頻率。相位Pha=atan2(a, b)弧度制,其中ab是輸出虛數(shù)結(jié)果的實部和虛部。

添加命令行

shell_fun.h中

void FrqFun(void* param);

shell_fun.c中

#include "frq.h"

shell_cmd_list中添加一行

{ (const uint8_t*)"frt",         FrqFun,           "frq"},

添加命令執(zhí)行函數(shù)

void FrqFun(void* param)

{

Frq_main();

}

實現(xiàn)代碼

Frq.c

#include "arm_math.h"
#include "arm_const_structs.h"
#include < stdio.h >

#define TEST_LENGTH_SAMPLES 2048
#define FS 10000

extern float32_t testInput_f32_10khz[TEST_LENGTH_SAMPLES];
static float32_t testOutput[TEST_LENGTH_SAMPLES/2];


static uint32_t fftSize = 1024;
static uint32_t ifftFlag = 0;
static uint32_t doBitReverse = 1;
static arm_cfft_instance_f32 varInstCfftF32;

static int testIndex = 0;

static float testtmp_f32_10khz[2048];
static int32_t adcbuffer[2048];

int32_t frq_main(void)
{

  arm_status status;
  float32_t maxValue;

  status = ARM_MATH_SUCCESS;

  status=arm_cfft_init_f32(&varInstCfftF32,fftSize);

  //memcpy(testtmp_f32_10khz,testInput_f32_10khz,sizeof(testInput_f32_10khz));
  adc_samp(adcbuffer,2048);
  for(int i=0; i< 2048;i ++)
 {
	  testtmp_f32_10khz[i] = (float)adcbuffer[i];
  }
  arm_cfft_f32(&varInstCfftF32, testtmp_f32_10khz, ifftFlag, doBitReverse);

  arm_cmplx_mag_f32(testtmp_f32_10khz, testOutput, fftSize);

  /* Calculates maxValue and returns corresponding BIN value */
  arm_max_f32(testOutput, fftSize, &maxValue, &testIndex);

  float freq = (FS/TEST_LENGTH_SAMPLES)*testIndex;
  float vpp = maxValue/(TEST_LENGTH_SAMPLES/2);
  float pha = atan2(testOutput[2*testIndex],testOutput[2*testIndex+1]);
  printf("freq=%f,vpp=%f,pha=%frn",freq,vpp,pha);

}

 /** endlink */

Frq.h

#ifndef FRQ_H
#define FRQ_H

int frq_main(void);

#endif

測試

輸入frq開始測試印如下
image.png

實時采集測試

此時采集的是音頻背景聲,噪聲很小,所以頻率為0
image.png

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 英飛凌
    +關(guān)注

    關(guān)注

    66

    文章

    2134

    瀏覽量

    138255
  • PSoC
    +關(guān)注

    關(guān)注

    12

    文章

    170

    瀏覽量

    91759
  • 信號處理
    +關(guān)注

    關(guān)注

    48

    文章

    992

    瀏覽量

    103154
  • FFT
    FFT
    +關(guān)注

    關(guān)注

    15

    文章

    433

    瀏覽量

    59256
  • 頻率
    +關(guān)注

    關(guān)注

    4

    文章

    1422

    瀏覽量

    59101
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4895

    瀏覽量

    97055
  • RTT
    RTT
    +關(guān)注

    關(guān)注

    0

    文章

    65

    瀏覽量

    17057
收藏 人收藏

    評論

    相關(guān)推薦

    英飛凌PSoC 6 RTT開發(fā)板試用信號處理前端濾波

    CMSIS-DSP提供直接I型IIR庫支持Q7,Q15,Q31和浮點四種數(shù)據(jù)類型。其中Q15和Q31提供了快速版本。
    的頭像 發(fā)表于 07-14 00:09 ?3450次閱讀
    【<b class='flag-5'>英飛凌</b><b class='flag-5'>PSoC</b> <b class='flag-5'>6</b> <b class='flag-5'>RTT</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>試用</b>】<b class='flag-5'>信號</b><b class='flag-5'>處理</b><b class='flag-5'>前端</b><b class='flag-5'>之</b>濾波

    英飛凌PSoC 6】新建RTT工程

    介紹英飛凌PSoC 6 RTT開發(fā)板環(huán)境創(chuàng)建
    的頭像 發(fā)表于 04-24 15:29 ?1869次閱讀
    【<b class='flag-5'>英飛凌</b><b class='flag-5'>PSoC</b> <b class='flag-5'>6</b>】新建<b class='flag-5'>RTT</b>工程

    英飛凌PSoC 6 RTT開發(fā)板試用信號處理前端之極值檢測

    在電力等行業(yè),分析電壓極值,是一項重要的參數(shù)分析,可以分析電壓的波動;示波器中也有自動測量極值的功能更。
    的頭像 發(fā)表于 07-11 14:33 ?1972次閱讀
    【<b class='flag-5'>英飛凌</b><b class='flag-5'>PSoC</b> <b class='flag-5'>6</b> <b class='flag-5'>RTT</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>試用</b>】<b class='flag-5'>信號</b><b class='flag-5'>處理</b><b class='flag-5'>前端</b>之極值檢測

    【新品發(fā)布】英飛凌PSoC 6 RTT物聯(lián)網(wǎng)開發(fā)板內(nèi)容詳解

    4月12日,英飛凌聯(lián)合 RT-Thread 發(fā)布PSoC? 62 with CAPSENSE? evaluation kit開發(fā)板 (以下簡稱PSoC
    發(fā)表于 04-13 13:46

    【新品試用英飛凌PSoC 6 RTT開發(fā)板試用活動

    概述、軟件調(diào)試、硬件接入、視頻演示,不少于500字+2張圖片。 2)報告形式:標(biāo)題格式 【評測活動標(biāo)題+自擬標(biāo)題】示例: 【英飛凌PSoC 6 RTT
    發(fā)表于 04-13 15:26

    英飛凌PSoC 6 RTT開發(fā)板試用

    單周期乘法和MPU,可以充分發(fā)揮 PSoC6 雙核芯片性能。 該開發(fā)板核心 板載資源 如下: MCU:CY8C624ABZI-S2D44,Cortex-M4主頻 150MHz,Cortex-M0主頻
    發(fā)表于 05-30 20:47

    英飛凌PSoC 6 RTT開發(fā)板試用】+開箱測試

    英飛凌PSoC 6 RTT開發(fā)板試用】+開箱測試 硬件資源介紹
    發(fā)表于 06-05 01:06

    英飛凌聯(lián)合 RT-Thread 發(fā)布 PSoC? 62 with CAPSENSE ? evaluation kit開發(fā)板

    近日,RT-Thread 社區(qū)團(tuán)隊打造了新品開發(fā)板英飛凌聯(lián)合 RT-Thread 發(fā)布 ?PSoC 62 with CAPSENSE evaluation kit開發(fā)板?(以下簡稱
    的頭像 發(fā)表于 04-13 01:35 ?1778次閱讀

    英飛凌PSoC 6 RTT開發(fā)板試用信號處理前端諧波分析

    3.1 電能質(zhì)量,諧波分析 添加命令行 在電能檢測應(yīng)用中,電能質(zhì)量一項分析即諧波分析,諧波分量大,說明電能質(zhì)量不好, 基于本信號
    的頭像 發(fā)表于 07-13 20:49 ?2052次閱讀
    【<b class='flag-5'>英飛凌</b><b class='flag-5'>PSoC</b> <b class='flag-5'>6</b> <b class='flag-5'>RTT</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>試用</b>】<b class='flag-5'>信號</b><b class='flag-5'>處理</b><b class='flag-5'>前端</b><b class='flag-5'>之</b>諧波<b class='flag-5'>分析</b>

    基于PSOC6開發(fā)板構(gòu)建的智能小車

    本項目是基于Psoc6-evaluationkit-062S2開發(fā)板構(gòu)建的智能小車。該開發(fā)板由RT-Thread與英飛凌聯(lián)合推出,集成了一顆32位雙核CPU子系統(tǒng),包括150MHz的A
    發(fā)表于 07-28 15:14 ?761次閱讀
    基于<b class='flag-5'>PSOC6</b><b class='flag-5'>開發(fā)板</b>構(gòu)建的智能小車

    英飛凌開發(fā)板模塊評測任務(wù)大挑戰(zhàn)-SPI驅(qū)動測試

    使用PSoC? 62 with CAPSENSE? evaluation kit開發(fā)板適配的RTT SPI驅(qū)動,做顯示測試。
    發(fā)表于 08-10 15:44 ?665次閱讀
    <b class='flag-5'>英飛凌</b><b class='flag-5'>開發(fā)板</b>模塊評測任務(wù)大挑戰(zhàn)-SPI驅(qū)動測試

    基于 Infineon PSoC?62開發(fā)板信號處理前端虛擬示波器-工具集

    一、前言 本項目基于英飛凌PSoC6 RT-Thread開發(fā)板實現(xiàn)了信號處理前端-一個
    的頭像 發(fā)表于 08-16 20:15 ?589次閱讀
    基于 Infineon <b class='flag-5'>PSoC</b>?62<b class='flag-5'>開發(fā)板</b>的<b class='flag-5'>信號</b><b class='flag-5'>處理</b><b class='flag-5'>前端</b>虛擬示波器-工具集

    基于infineonPSOC62開發(fā)板的-信號處理前端 虛擬示波器-工具集

    一、前言 本項目基于英飛凌PSoC 6 RTT開發(fā)板實現(xiàn)了信號
    的頭像 發(fā)表于 10-11 18:35 ?553次閱讀
    基于infineonPSOC62<b class='flag-5'>開發(fā)板</b>的-<b class='flag-5'>信號</b><b class='flag-5'>處理</b><b class='flag-5'>前端</b> 虛擬示波器-工具集

    英飛凌測評】英飛凌PSoC? 62開發(fā)板試用報告-LCD ILI9341 8080 DEMO

    # Infineon Psoc6-evaluationkit-062S2 說明 ## 簡介 本文檔為 `RT-Thread` 為 `PSoC6 CY8CKIT-062S2-43012` 開發(fā)板提供
    的頭像 發(fā)表于 03-07 21:07 ?645次閱讀
    【<b class='flag-5'>英飛凌</b>測評】<b class='flag-5'>英飛凌</b><b class='flag-5'>PSoC</b>? 62<b class='flag-5'>開發(fā)板</b><b class='flag-5'>試用</b>報告-LCD ILI9341 8080 DEMO

    玩轉(zhuǎn)PSoC 6 RTT積木式開發(fā)套件,實現(xiàn)毫米波雷達(dá)等實用功能

    本期英飛凌手工課,將由來自英飛凌的工程師Jenson給大家?guī)?b class='flag-5'>PSoC62withCAPSENSEevaluationkit(下稱PSoC6RTT
    的頭像 發(fā)表于 03-20 08:35 ?833次閱讀
    玩轉(zhuǎn)<b class='flag-5'>PSoC</b> <b class='flag-5'>6</b> <b class='flag-5'>RTT</b>積木式<b class='flag-5'>開發(fā)</b>套件,實現(xiàn)毫米波雷達(dá)等實用功能