打印

GD32之克拉克变换

[复制链接]
691|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、克拉克变换
输入信号:
ia=sin(2*pi*50*t);
ib=sin(2*pi*50*t+120);

二、克拉克变换测试程序
#include "dsp_clark.h"



void clark_test(void)
{
        u16 i=0;
        static float32_t a[320]={0,0.309016994374947,0.587785252292473,0.809016994374948,0.951056516295154,1,0.951056516295154,
......};
       
        static float32_t b[320]={0.580611184212314,0.803789806568364,0.948287882324612,0.999960933048743,0.953750840508565,
......};
       
        float32_t iapha[320];
        float32_t ibelt[320];



        for(i=0;i<320;i++)
        {
                arm_clarke_f32(a[i],b[i],&iapha[i],&ibelt[i]);
                printf("%f\r\n",iapha[i]);
        }
       
}




三、结果


四、主函数

/*
    昆明电器科学研究所 张恩寿 2019年5月3日
       
       
*/
#include "bitband.h"
#include "led_config.h"
#include "systick.h"
#include "usart.h"
#include "spi_flash.h"
#include "tft.h"
#include "key_lookup.h"
#include "dsp_clark.h"




int main(void)
{                       
        systick_config(120);
        nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2);
        usart0_init(115200);
    led_init();
        clark_test();
        
        while(1)
        {
                led_on();
                delay_nms(600);
                led_off();
                delay_nms(600);
        }
               
}





五、总结
可能是昨天晚上取得数据和今天的有所误差,,不过串口打印出来的数据个别出现极大或极小,,后续将持续研究

使用特权

评论回复
评论
zeshoufx 2019-9-5 11:05 回复TA
自己顶一个 
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

1962

帖子

14

粉丝