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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

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

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

在電力等行業(yè),分析電壓極值,是一項重要的參數(shù)分析,可以分析電壓的波動;示波器中也有自動測量極值的功能更。

基于本板設計了信號處理前端也實現(xiàn)了該功能。

算法來源于論文https://www.mdpi.com/1999-4893/5/4/588/htm

核心代碼如下

void  ampd (int32_t* data, int32_t len)

{

    int row_sum;

     for (int k=1; k< len/2+1; k++)

    {

        row_sum = 0;

         for (int i=k; i< len-k; i++)

        {

             if ((data[i] > data[i - k]) && (data[i] > data[i + k]))

            {

                row_sum -= 1;

            }

        }

        arr_rowsum[k-1] = row_sum;

    }

    int min_index = argmin(arr_rowsum,len/2+1);

     max_window_length = min_index;

     for (int k=1; k< max_window_length + 1; k++)

    {

         for (int i=k; i< len - k; i++)

        {

             if ((data[i] > data[i - k]) && (data[i] > data[i + k]))

            {

                p_data[i] += 1;

            }

        }

    }

 

     for (int k=0; k< len; k++)

    {

         if (p_data[k] == max_window_length)

        {

            /* 極大值 */

        }

    }

}

測試

添加命令行

{ (const uint8_t*)"max",         MaxFun,           "max"},                 /*打印幫助信息*/

 
void  MaxFun ( void * param)

{

	max_test();

}

 
void  MaxFun ( void * param);

測試代碼如下,串口命令行輸入命令max,開始采集ADC值,并計算極值,打印到PC串口通過seraistudio可視化顯示

int max_test(void)
{
	for(int i=0; i< 10; i++)
	{
		memset(p_data,0,sizeof(p_data));
		//adc_samp(sim_data_buffer,1000);
		sim_data();
		ampd(sim_data_buffer, sizeof(sim_data_buffer)/sizeof(sim_data_buffer[0]));
	    for(int k=0; k< sizeof(sim_data_buffer)/sizeof(sim_data_buffer[0]); k++)
	    {
	        if(p_data[k] == max_window_length)
	        {
	            /* 極大值 */
	        	printf("/*%ld,%ld*/\\r\\n",sim_data_buffer[k],sim_data_buffer[k]);
	        }
	        else
	        {
	        	printf("/*%ld,%d*/\\r\\n",sim_data_buffer[k],0);
	        }
	        cyhal_system_delay_ms(10);
	    }
	}
	return 0;
}

效果如下,IN是原始數(shù)據(jù),MAX是檢測到的極大值,如果檢測極小值將原始數(shù)據(jù)取反即可。

image.png

image.png

檢測語音,效果如下

image.png

image.png

image.png

審核編輯:湯梓紅

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

    關注

    66

    文章

    2115

    瀏覽量

    138130
  • PSoC
    +關注

    關注

    12

    文章

    170

    瀏覽量

    91707
  • 信號處理
    +關注

    關注

    48

    文章

    988

    瀏覽量

    103112
  • 信號
    +關注

    關注

    11

    文章

    2767

    瀏覽量

    76449
  • 開發(fā)板
    +關注

    關注

    25

    文章

    4834

    瀏覽量

    96820
  • RTT
    RTT
    +關注

    關注

    0

    文章

    64

    瀏覽量

    17035
收藏 人收藏

    評論

    相關推薦

    英飛凌PSoC 6】新建RTT工程

    介紹英飛凌PSoC 6 RTT開發(fā)板環(huán)境創(chuàng)建
    的頭像 發(fā)表于 04-24 15:29 ?1838次閱讀
    【<b class='flag-5'>英飛凌</b><b class='flag-5'>PSoC</b> <b class='flag-5'>6</b>】新建<b class='flag-5'>RTT</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物聯(lián)網(wǎng)開發(fā)板

    Infineon Psoc6-evaluationkit-062S2 說明開發(fā)板免費試用活動:https://bbs.elecfans.com/jishu_2349212_1_1.html簡介本文
    發(fā)表于 04-13 13:38

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

    概述、軟件調(diào)試、硬件接入、視頻演示,不少于500字+2張圖片。 2)報告形式:標題格式 【評測活動標題+自擬標題】示例: 【英飛凌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ū)團隊打造了新品開發(fā)板英飛凌聯(lián)合 RT-Thread 發(fā)布 ?PSoC 62 with CAPSENSE evaluation kit開發(fā)板?(以下簡稱
    的頭像 發(fā)表于 04-13 01:35 ?1736次閱讀

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

    3.1 電能質量,諧波分析 添加命令行 在電能檢測應用中,電能質量一項分析即諧波分析,諧波分量大,說明電能質量不好, 基于本信號處理前端
    的頭像 發(fā)表于 07-13 20:49 ?1894次閱讀
    【<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>之諧波分析

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

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

    基于RT-thread和Psoc6實現(xiàn)的多線程mpu6050讀取及顯示

    這次RT-thread官方主辦的一個大學生夏令營活動,我們組使用的是Psoc6開發(fā)板,這個板子的主控是英飛凌,這個板子的的介紹在RTT的官方文檔里面有。
    的頭像 發(fā)表于 07-31 15:42 ?1022次閱讀
    基于RT-thread和<b class='flag-5'>Psoc6</b>實現(xiàn)的多線程mpu6050讀取及顯示

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

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

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

    一、前言 本項目基于英飛凌PSoC6 RT-Thread開發(fā)板實現(xiàn)了信號處理前端-一個
    的頭像 發(fā)表于 08-16 20:15 ?569次閱讀
    基于 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 ?539次閱讀
    基于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 ?615次閱讀
    【<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

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

    本期英飛凌手工課,將由來自英飛凌的工程師Jenson給大家?guī)?b class='flag-5'>PSoC62withCAPSENSEevaluationkit(下稱PSoC6RTT
    的頭像 發(fā)表于 03-20 08:35 ?783次閱讀
    玩轉<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)毫米波雷達等實用功能