This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320C6748:正弦波生成量大约比预期低4倍。

Guru**** 2618835 points

Other Parts Discussed in Thread: OMAP-L138, TMS320C6748

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/662504/ccs-tms320c6748-sinewave-generate-is-approximately-4-times-lower-than-expected

器件型号:TMS320C6748
主题中讨论的其他器件:OMAP-L138

工具/软件:Code Composer Studio

我一直在使用几本书来尝试为 TMS3260C6748 LCDK 上的几个通道制作正弦波发生器。  但是、每次我尝试输出1kHz 频率时、我都会从示波器和手机上使用 FFT 获得大约243Hz 的频率。  我尝试了使用差分方程和正弦表来生成符号的两种方法。  我开始相信它与 LCDK 的时钟生成有关、但我尝试过采样频率的多次更改、但没有如我所期望的那样发生任何变化。 我还尝试提高 LCDK 的时钟频率、看看是否会有变化、但我没有看到任何变化。  这里是我用来生成正弦波的一些示例代码。 此代码取自"数字信号处理和 OMAP-L138实验板应用"。  它们还提供了用于 LCDK 的文件、这些文件是我在本示例中使用的文件。

// l138_sine48_Buf_intr.c
//

#include "L138_LCDK_aic3106_init.h"
#define LOOPLENGTH 48
#define BUFLENGTH 256

int16_t sine_table[LOOPLENGTH]=
{0、1305、2588、3827、5000、 6088、7071、7934、
8660、9239、 9659、9914、10000、9914、9659、 9239、
8660、7934、7071、6088、 5000、3827、2588、1305、
0、 -1305、-2588、-3827、-5000、-6088、 -7071、-7934、
-8660、-9239、-9659、 -9914、-10000、-9914、-9659、-9239、
-8660、-7934、-7071、-6088、-5000、 -3827、-2588、-1305};

int16_t sine_ptr = 0;//指向查找表

的指针 int32_t buffer[BUFLENGTH];
int16_t buf_ptr = 0;

中断 void interrupt4 (void)//中断服务例程
{
int16_t sample;

sample = sine_table[sine_pt]; //从表
output_left_sample_sample (sample)中读取样本; //输出样本
sine_ptr =(sine_ptr+1)%LOOPLENGTH;//递增表索引
buffer[buf_ptr]=(int32_t)(sample);//将样本存储在缓冲区
buf_ptr =(buf_ptr+1)%BUFLENGTH; //递增缓冲区索引
返回;
}

int main (void)
{
L138_initial_intr (FS_48000_Hz、ADC_GAIN_0dB、DAC_ATTEEN_0dB、LCDK_LINE_INPUTIN);
while (1);
}

是否有人遇到过类似的问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    您能否分享您正在使用的 SDK?

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Yordan、

    有问题的主板是 TMS320C6748 DSP 开发套件(LCDK)。

    Tyler
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Yordan、

    我已经解决了以48kHz 采样的问题。 AIC3106的 Q 值不正确。

    如何将 LCDK 设置为96kHz? 每当我尝试增加它时、我都不会从编解码器获得输出。

    Q=2
    PLL 被禁用
    寄存器2:00000000
    寄存器7:01101010
    寄存器3:00100010

    WCLK:96kHz
    MCLK:24.576kHz
    BCLK:3.049MHz

    我认为我的 BCLK 需要大约是它所需的两倍才能正常工作、但我不确定如何设置该值、或者这是否是我的问题。

    Tyler
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您分享您的解决方案。

    此致、
    Yordan