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.

[参考译文] MSP430FE427A:MSP430测量周期速率

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/578226/msp430fe427a-msp430-measurement-cycle-rate

部件号:MSP430FE427A
主题中讨论的其他部件: MSP430F6736AEVM430-F6736

我们使用MSP430测量RMS电流

我已将MCLK = 8 MHz,SD16DIV = 8,SD16OSR256 --> FMSP = 1 MHz --> Fadc = 4096 Hz --> 4096样例= 1秒循环以获得新能量和RMS值
在该配置中,我每隔一秒看到1个新的IMRS结果,这是正常的
我们希望每秒有更多RMS电流值。 如果我将SD16DIV更改为4,2或1,而不是在所有三种情况下,则会获得相同的结果。 MSP每 隔0.5秒提供一个新的IRMS值。
1.为什么通过 MSP430的SD16DIV更改输入时钟> 1MHz这种奇怪的行为?
2. SD16CONF1寄存器的规格是什么? 在emeter.c演示软件中,写入了0x48值,但我在数据表中找不到此寄存器的定义。
3.我还更改了SD16OSR (过采样)设置,但这对计时没有任何影响。  SD16OSR如何影响MSP的输出周期时间?
我希望MSP430测量周期将受到OSR设置的影响,但不会受到 影响。
如何获得每秒的更多RMS值并保持能量测量正常工作?
提前Tnx
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Marcel,您好!

    首先,我想问一些有关您的硬件和软件设置的问题。 您使用的是哪款EVM? 我假设它是EVM430-FE427A。 对于您的软件,您是否在此EVM上运行了通用的MSP430-ENERGY库?

    接下来,您是否想要提高采样率(例如 4kHz至8kHz)或获取累计能量值的频率(例如,每0.5 秒更新一次,而不是每1秒更新一次),还是两者?

    进行上述更改时,是否在重新编程MSP430之前重建了所有项目?

    当您更改SD16OSR值时,是否增加了该值? 如果是,请尝试减少。 保持调制频率不变,减少OSR应可提高采样率。

    此致,

    詹姆斯

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

    我们自己的PCB基于EVM430-FE427A,软件基于MSP430能源库。 我们的软件和硬件在1秒的测量周期内均可正常使用标准设置。

    我们的客户希望提高在DE ESP430中获得测量和计算的I RMS值的频率(每秒的数值更多)。 获得累计能量值的频率不太重要。 因此,获取I RMS值,例如每0.5 或0.25 秒,而不是每1秒。

    是的,在对MSP430进行编程之前,我重建所有项目。

    在我的默认设置中,我使用SD16OSR_256,就像在能源库中一样。 这为ESP430返回寄存器提供1秒的更新速率。
    如果我使用SD16OSR_64重新编译并对ESP430进行编程。 我假设更新率将提高4倍,但我看不到任何变化。 更新速率保持1秒。

    更改采样率会带来变化,但也不是我所期望的那样。
    @8 kHz ESP430返回寄存器每秒更新一次0.5。 这是我所期待的,但根据数据表,采样率现在超出了规格。
    @16kHz更新速率保持在0.5 秒。 这很奇怪,但我认为我现在已经超出了规范!

    此致,

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

    如果我理解正确,您的客户希望提高采样率(例如从4kHz提高到8kHz)? 他们的请求背后的原因是什么? 例如,他们是否想要捕获某些谐波并需要额外的带宽? 我对所有的问题都很抱歉,但我只是想在各个层面上了解此应用程序。

    您能否解释一下将OSR从256更改为128时设备如何超出规格? 数据表中的特定部分,表格或页面将会很有帮助。 SD16的调制频率最大可为1MHz左右 但是,采样频率可以通过调制频率除以OSR计算得出。 由于我们不能增加调制频率,因此唯一的选择是降低OSR以增加采样频率。 这是否合理?

    查看计量代码的工作原理,计数器会计算样本数量。 在一定数量的样本(例如4K)后,寄存器将更新为最新能量值。 如果我们将采样频率增加一倍(OSR = 128),我希望能量值的寄存器将在一半时间内更新(每0.5 秒而不是1秒)。 如果要将更新时间保持在1秒,则可能必须将此计数器加倍。 否则,这不是问题。

    您在其他OSR值中观察到的行为肯定很奇怪。

    此致,

    詹姆斯

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

    没有理由提高采样率,但可能会加快ESP430返回寄存器的更新。
    我们现在需要的是准确的I RMS测量和对该I RMS值变化的响应时间稍长一点。 假设250毫秒。 IRMS_LO/高回路寄存器仅在ESP430完成4096个循环后更新。 我们需要一些介于之间的I RMS值。

    我的软件的工作方式就像度量代码。 它计数1024个样本从ESP430获取中断并读取返回寄存器。 此主体工作正常,每250毫秒我就会得到一个中断,但返回寄存器每秒只更新一次新值。

    关于超出规格:
    我认为您误解了我的评论。 SD16调制频率的最大采样率为1 MHz /256 OSR =4 kHz。 它需要4096个样品才能完成测量。 如果使用SD16DIVx寄存器更改调制频率,我可以将调制频率提高一倍至2 MHz / 256 OSR = 8 kHz采样率。 这意味着每秒有2个4096个样本,我看到返回寄存器的更新速率更高。 这种方法有效,但调制频率现在超出了规范。 当我将其加倍到4 MHz /256 OSR =16 kHz采样率时。 我希望4个4096样本和4倍的返回寄存器更新,但这不起作用。 它每秒仅提供2个更新。 奇怪的行为,但我同意闪存模块是完全不规范的。
    结论调制频率应固定在其最高速率= 1 MHz;4096个样本是用于计算的固定值;因此只有SD16OSRx设置才能真正更改TH寄存器的更新速率。 我对吗?

    我不明白为什么在软件中更改到SD16OSRx寄存器没有效果。 我将再次关注这一点。

    在4096个样品测量期间,是否有另一种方法读取IRMS_LO/HIGH值之间的值?

    此致,

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

    Marcel,您好!

    很抱歉回复延迟,但我花了一些时间来深入探讨这个主题。 这是我的发现。

    正如您所观察到的,ESP430的返回寄存器仅每1秒更新一次新值。 遗憾的是,此更新速率是MSP430FE427A中ESP430最快的。 根据 《ESP430CE1A外设模块用户指南》中的1.2 章节4,完整的ESP430计算序列的采样数为4096,与AFE采样频率(FM/SD16OSRx)无关

    由于这对客户来说可能是一个限制,如果 他们需要修改此设计,我建议他们查看MSP430F6736A和EVM430-F6736。

    关于增加采样频率,我不建议调制频率超过1兆赫。 相反,请将此频率保持在1 MHz并降低OSR值以增加采样频率。 这是一般性反馈,因为您不需要增加此处的采样频率。

    此致,

    詹姆斯

    MSP客户应用程序