gpt4 book ai didi

c++ - 如何为 qwt 示波器示例生成方波?

转载 作者:行者123 更新时间:2023-11-28 06:53:06 26 4
gpt4 key购买 nike

qwt 示波器示例生成正弦波,对于我的项目,我想生成方波或余弦波。 我试图找出产生正弦波的位置,但没有找到。 任何帮助将不胜感激谢谢

最佳答案

要生成“数学方波”,即非带限方波,请使用以下代码:

double value = sin(x / period * 2.0 * M_PI)>=0.0 ? 1.0:-1.0;

这将为您提供理论上纯模拟方波的波形。正如我上面提到的,这个波将是非频带限制的,因为它不会因为混叠而听起来不正确。但是,如果您只是将它用于没有音频输出的示波器,它看起来是正确的。

如果这有帮助,请告诉我。

编辑:对于锯...

const double Sample_Rate = 44100.0;
typedef struct Saw_Data{
double _phasor = 0.0;
double _tolerance = 1.0;
}Saw_Data;

double _DSP::Saw_Wave(double* _frequency,_DSP::Saw_Data* _data){
double _val = _data->_phasor;
_data->_phasor += 2.0 * (1.0/(Sample_Rate/ *_frequency));
if (_data->_phasor > _data->_tolerance) {
_data->_phasor-=2.0;
}
return _val ;
}

这是我用于“数学”非波段限制锯齿波的代码。如果您需要我解释一下,请告诉我。

关于c++ - 如何为 qwt 示波器示例生成方波?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23524129/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com