主题中讨论的其他器件: MSP-FET、 EVM430-F6779
您好!
在通过 UART 连接 EMDC 与另一个 MCU 方面是否有任何帮助。
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.
您好!
在通过 UART 连接 EMDC 与另一个 MCU 方面是否有任何帮助。
您好 Bilal、
感谢您关注 EMDC 的使用。 首先、我建议您从初始版本 v1.20.00更新到最新版本 v1.30.00。 这里是一些反馈。
[引用 user="Bilal.m.Ahmad "]使用电能测量设计中心(EMDC) GUI 设计电能测量解决方案。[/quot]
很棒! 我们提供了多个预先配置的 EMDC 示例项目、这些项目与我们支持的 EVM 相匹配。 但是、您始终可以将这些内容用作设计的起点、方法是将项目保存为自定义项目、然后进行更改、而不是从头开始新项目。
Bilal.m.Ahmad 说:使用 JTAG 生成代码并按原样部署(完全没有代码更改)。
您可以使用提供的与 EMDC 示例项目相匹配的示例固件映像对 EVM430-F6779进行编程。 只要您使用匹配的 EMDC 项目、就无需生成代码、也无需更改任何内容。 如果您愿意、您可以使用 EMDC 示例项目来生成代码、导入 CCS 或 IAR、然后使用 MSP-FET 通过 JTAG 对 EVM430-F6779进行编程。
[引用 user="Bilal.m.Ahmad "]通过 UART 连接另一个 MSP430 (让我们将其称为主机)。[/quot]
只要 UART 协议和状态机匹配、就可以实现这一点。 请记住、协议数据包会根据您的项目配置发生变化-如果不需要结果、则不会包含这些数据包以保持协议传输更简单。
[引用 user="Bilal.m.Ahmad ]*读取主机 MCU 上的气象值。 [/报价]
绝对有可能。 见上文的评论。
[引用 user="Bilal.m.Ahmad "]从主机 MCU 向 EMDC 写入校准参数。[/quot]
如果您遵循 EMDC 技术指南中描述的流程、也可以执行此操作。
现在、请回答您的其他问题。
1) 1)我研究了 EMDC 的文档-我的理解是、EMDC 默认在 UART 上暴露气象学值和更新校准参数的方法。 请确认其正确。
是的、没错。
[引用 user="Bilal.m.Ahmad ]2) ID 类似于有关如何在主机 MCU 上从 EMDC 读取和写入数据的一些帮助。 代码会很有帮助。 它不必是非常详细的基本意愿。 [/报价]
您是否有机会通读EMDC 技术指南中的"通信协议规范"一章? 更具体地说、"协议概述"部分显示了 EMDC GUI 如何与目标 MSP430器件通信。 如下图(在 此处)所示、在目标 MSP430器件上运行的应用代码会切换模式以开始向 EMDC GUI 发送结果(同样、这取决于代码生成前在 EMDC 配置中选择的结果)。 如果您的主机 MCU 遵循相同的流程并使用相同的协议和波特率、则您将能够使用主机 MCU 从 MSP430读取数据。
有关数据包结构的更多详细信息、请参阅EMDC 技术指南中的"MSP430 EM 设计中心数据包结构"部分。
我希望这对您有所帮助!
此致、
James
[引用 user="Bilal.m.Ahmad ]I 目的是将由 EMDC 生成的代码部署到 MSP430F6779 EVM 上。 [/报价]
很棒!
[报价用户="Bilal.m.Ahmad "]默认波特率是多少?
默认波特率为250kbaud。 我不确定我们是如何错过了将其添加到文档中的。 我将在下一个版本中添加它。
此致、
James
您好 Oleg、
你完全是对的。 这是我们的 CapTIvate 和电能测量设计中心在 GUI 和 MSP430之间的通信协议使用的三字节报头。 您观察到的是:
有关数据包的更多信息、请 参阅CapTIvate 技术指南。它在文档中看起来相当隐蔽、因此我将添加此反馈并请求 在 EMDC 技术指南中更新整个数据包结构。
我希望这对您有所帮助!
此致、
James
您应该能够在位于 CCS 项目> DesignCenter > commm > drivers 文件夹下的'UART_defs.h'文件中更改波特率。 但是、请记住、无法更改 PC 上运行的 EMDC GUI 的波特率。 假设您生成 EMDC 代码并且您计划与另一个主机 MCU 连接、则您始终可以使用较低的波特率、协议或不同类型的接口(例如 I2C、SPI 等)。 正如我可能已经提到的、EMDC 的一个目标是让用户专注于应用端、其中包括通信、而不是尝试找出所有计量代码。
// // //! DEF UART__SAMPLING_MODE 定义了 eUSCI_A LF 或 HF 模式。 // //! DEF UART__prescaler 定义了 eUSCI_A 预分频器。 // //! DEF UART_FIRST_STEP_MOD 定义了 eUSCI_A 第一级调制。 // //! DEF UART__second_stage_MOD 定义了 eUSCI_A 第二级调制。 //// ***************** #define UART__SAMPLING_MODE(EUSCI_A_UART_OPAMPLING_BAUDRATE_GEN) #IF (EM_SMCLK_FREQ_IN_Hz = 25165824) /250K 波特率@ 25MHz #define UART_预 分频器 (0x06) #define UART_FIRST_STAGE MOD (0x03) #define UART__second_stage_MOD (0x02) #Elif (EM_SMCLK_FREQ_IN_Hz = 16777216) /250K 波特率@ 16MHz #define UART__prescaler (0x04) #define UART_FIRST_STAGE MOD (0x03) #define UART__second_stage_MOD (0x00) #Elif (EM_SMCLK_FREQ_IN_Hz = 8388608) /250K 波特率@ 8MHz #define UART__prescaler (0x02) #define UART_FIRST_STAGE MOD (0x01) #define UART__second_stage_MOD (0x02) #else #error "UART 驱动程序不支持 SMCLK 频率" #endif
但愿这对您有所帮助。
此致、
James