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

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

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

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

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

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

基于本板設(shè)計(jì)了信號(hào)處理前端也實(shí)現(xiàn)了該功能。

算法來(lái)源于論文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)

        {

            /* 極大值 */

        }

    }

}

測(cè)試

添加命令行

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

 
void  MaxFun ( void * param)

{

	max_test();

}

 
void  MaxFun ( void * param);

測(cè)試代碼如下,串口命令行輸入命令max,開(kāi)始采集ADC值,并計(jì)算極值,打印到PC串口通過(guò)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是檢測(cè)到的極大值,如果檢測(cè)極小值將原始數(shù)據(jù)取反即可。

image.png

image.png

檢測(cè)語(yǔ)音,效果如下

image.png

image.png

image.png

審核編輯:湯梓紅

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

    關(guān)注

    66

    文章

    2188

    瀏覽量

    138716
  • PSoC
    +關(guān)注

    關(guān)注

    12

    文章

    170

    瀏覽量

    91914
  • 信號(hào)處理
    +關(guān)注

    關(guān)注

    48

    文章

    1029

    瀏覽量

    103283
  • 信號(hào)
    +關(guān)注

    關(guān)注

    11

    文章

    2791

    瀏覽量

    76757
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5050

    瀏覽量

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

    關(guān)注

    0

    文章

    65

    瀏覽量

    17126
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    英飛凌PSoC 6】新建RTT工程

    介紹英飛凌PSoC 6 RTT開(kāi)發(fā)板環(huán)境創(chuàng)建
    的頭像 發(fā)表于 04-24 15:29 ?1942次閱讀
    【<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)開(kāi)發(fā)板內(nèi)容詳解

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

    【資料下載】英飛凌PSoC 6 RTT物聯(lián)網(wǎng)開(kāi)發(fā)板

    Infineon Psoc6-evaluationkit-062S2 說(shuō)明開(kāi)發(fā)板免費(fèi)試用活動(dòng):https://bbs.elecfans.com/jishu_2349212_1_1.html簡(jiǎn)介本文
    發(fā)表于 04-13 13:38

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

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

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

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

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

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

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

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

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

    3.1 電能質(zhì)量,諧波分析 添加命令行 在電能檢測(cè)應(yīng)用中,電能質(zhì)量一項(xiàng)分析即諧波分析,諧波分量大,說(shuō)明電能質(zhì)量不好, 基于本信號(hào)處理前端
    的頭像 發(fā)表于 07-13 20:49 ?2356次閱讀
    【<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'>開(kāi)發(fā)板</b><b class='flag-5'>試用</b>】<b class='flag-5'>信號(hào)</b><b class='flag-5'>處理</b><b class='flag-5'>前端</b>之諧波分析

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

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

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

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

    英飛凌開(kāi)發(fā)板模塊評(píng)測(cè)任務(wù)大挑戰(zhàn)-SPI驅(qū)動(dòng)測(cè)試

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

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

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

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

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

    英飛凌測(cè)評(píng)】英飛凌PSoC? 62開(kāi)發(fā)板試用報(bào)告-LCD ILI9341 8080 DEMO

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

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

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