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.

[参考译文] TMS320F28335:在2000上使用 c28335x 的 SGEN 库时、输出值不同于计算出的值

Guru**** 2595805 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1244147/tms320f28335-the-output-value-is-different-from-the-calculated-value-when-using-the-sgen-library-of-the-c28335ware-on-the-2000

器件型号:TMS320F28335
主题中讨论的其他器件:C2000WARE

大家好、

客户有问题需要您的帮助:

在2000年使用 c28335ware 的 SGEN 库时、输出频率与我计算的理论值不同、问题如下、希望您可以帮助我回答:

1.根据指导文件,我得到了 sgen_mdl,输出频率=(频率*阶跃_max*fs)/(2^16*2^15),计算方法,请询问我总结的计算方法是否正确。

在1上使用 SGENT_28335时、什么是 FS、这个值是如何计算或看到的

3、sgen.calc (&sgen)、该函数在例程中如何确保数据以指定的频率出现、函数中是否存在阻塞机制、因为函数封装了、我没有看到具体的实现过程

您能帮助检查这个问题吗?

谢谢。此致、

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

    您好 Ben、很抱歉耽误了时间。

    以下是我提供的回复:

    "

    SGEN 库已经存档、TI 不再为开发人员提供代码。 但我会尽力回答您的询问。

    1.参数 freq 采用 Q15格式,因此 freq 的推导形式为(Freq/Max_Freq)或(Freq/( STEP_max*fs)*(2^16*2^15)。 请注意、"Freq"和"Max_Freq"均采用 Q16格式。 该推导过程扩展了 Max_Freq、以获得2^16乘法器、但"Freq"仍采用 Q16格式。

    这个 fs 值由您决定、它将是用于 SGENT_1的频率和 STEP_max 的计算部分。

    3.我不太确定频率可调性的含义、您可以尝试在例程中动态修改 freq 和 step_max 参数、大概会产生不同采样频率的正弦波。

    4.您是否介意透露您使用过的程序?

    我们还以源代码  sgt1c.asm 等形式发布了所有 SGEN 实现、其中介绍了如何将 sgen.calc 用于 SGENT_1。 在 SGEN 中、正弦波的生成基于查找表、而输出将通过增益和偏移进行缩放。

    "

     

    我还建议客户尽可能使用 C2000Ware DCL 的基准发生器。  我们积极支持这一新库、并且在我看来、它具有更直观的设计和详尽的文档。  

    此致!

    王森