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/TMS320F28388D:SDFM 示例问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/872693/ccs-tms320f28388d-sdfm-example-issue

器件型号:TMS320F28388D
主题中讨论的其他器件:AMC1305L25

工具/软件:Code Composer Studio

你好

在示例操作期间、我有一个问题。

示例= fcl_f2838x_tmdxiddk_cpu1.project  

(使用:tmdxiddk279d (电机驱动器评估版)、tms320f28388控制卡(MCU 评估版))

滤波器设置中的滤波器设置。

OSR = 128、SINc3、SHIFT 位= 7  

参考 TRM。我知道。

但是、该示例使用6位。 (源代码如下。)

为什么它不同?

//
// SINC 滤波器模块
//********
//配置数据过滤器模块的过滤器类型、OSR 值和启用//
禁用数据过滤器。
//
使用 Sinc3为 OSR 128选择16位数据表示、来自 TRM 中的//表。
//使用 sinc 3为 OSR 128表示的最大值
//为+/-2097152,即2^21。
//以16位格式表示这一点,其中第一个位是
//符号移位6位。

SDFM_enableFilter (SDFM1_base、(SDFM_FilterNumber) flt);
SDFM_setFilterType (SDFM1_base、(SDFM_FilterNumber) flt、
SDFM_FILTER_SINC_3);
SDFM_setFilterOverSamplingRNumber (SDFM1_BASE、(SDFM_FilterNumber) flt、127);
//COSR = 127 +1 -> OSR = 128
SDFM_setOutputDataFormat (SDFM1_base、(SDFM_FilterNumber) flt、SDFM_filterdata

= 128);SDFM_filtert、SDF6_base (SDFM_filtertf6);SDFM_filtertfm = 128) SINC3,6? TRM = 7; 

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

    如果您可以让 SD 调制器在 SD 调制器数据表中指定的线性满量程范围内运行、则可以在 OSR = 128时使用移位位值6。

    此致、

    曼诺伊

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

    Manoj、感谢您的回答。

    但我不明白。

    我查看了数据表。

    SINC3 =移位位7。

    为什么选择移位 位6?

    谢谢你。

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

    让我尝试用一个示例来解释这一点:

    当 OSR = 128时、当 SD 调制器施加大于(或)等于 Vcliping (最大差分电压输入范围(AINP-AINN))的差分电压时、sinc3滤波器将提供2097152的数字输出。 SD 调制器 DS 中定义的该 Vcl削 波。 例如:在 AMC1305L25中、表7.10电气特性将 Vcl削 波定义为312.5mv。 因此、当施加的差分输入超过(或)等于312.5mv 时、SD 调制器被称为工作饱和。

    16位有符号滤波器输出可以表示从-32768 (0x8000)到0x32767 (0x7FFF)

    当 SD 调制器以+ve 饱和电压运行时:差分输入电压>=+320mv、OSR = 128的 Sinc3滤波器将提供 2097152的滤波器输出、当您向右移6时、将提供32768。 该数字超出了16位有符号滤波器可以表示的最大值。 这就是您将右移7位的原因。 但是、当您确保在线性满量程范围(在表7.10中指定)=+/-250mV 时、不会出现此问题。 在这种情况下、如果使用右移6、因为滤波器输出无法达到大于32767的任何值。

    简而言之、如果您确保在线性满量程范围内运行 SD 调制器、则对于 OSR = 128 Sinc3滤波器、您可以右移6、而不是7。

    此致、

    曼诺伊

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

    曼诺伊

    谢谢!

    简而言之、OSR = 128且 Sinc3滤波器可移位≤7。

    我认为它可以根据差分输入电压灵活地进行更改。

    此致、

    Cho。