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.

[参考译文] MCF8316A:MCF8316A1VRGFR:有关对该器件进行编程的文档

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1389714/mcf8316a-mcf8316a1vrgfr-documents-on-programming-this-device

器件型号:MCF8316A
主题中讨论的其他器件: MSP430FR2355

工具与软件:

是 BPM 的器件支持工程师。 我们的一位客户需要通过我们的编程器为其提供支持的此器件'CF8316A1VRGFR'。 我们看到它们的数据文件为.json 格式。 您能为我们提供有关此器件的编程指南吗? 谢谢!

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

    尊敬的 Vigita:

    请参阅 MCF8316A 数据表 部分  7.6 EEPROM 访问和 I2C 接口 以了解有关如何使用其 I2C 接口协议对 EEPROM 进行编程的详细信息。

    我们还 提供了此 E2E 常见问题解答、其中提供了一个示例固件工程、该工程使用 MSP430FR2355 LaunchPad 对 MCF8316A 上的 EEPROM 进行编程。

    此致、
    Eric C.

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

    我明白了。 谢谢! 我会尝试,并会回到你

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

    尊敬的 Vigita:

    没问题! 如果您对上面提供的信息有任何疑问、敬请告知。

    此致、
    Eric C.

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

    此器件的从器件 I2C 地址是什么。 您能否为我们提供使用 I2C 写入 EEPROM 所需的电源开启条件

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

    尊敬的 Vigita:

    MCF8316A 的默认 I2C 目标地址为0x01。 但是、可以通过写入 EEPROM 来将其配置为不同的值。

    确保 FG 和 nFAULT 引脚的上拉电阻器为3.3~5V、否则器件将无法正常上电。 不应提供速度输入命令。 器件上电时应进入 MOTOR_IDLE 状态。  

    此致、
    Eric C.

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

    Eric、您好!

    我对该器件的数据文件有一些疑问。

    客户共享了.json 格式的数据文件。 我对数据文件有一些疑问。  
    根据规格要求、该器件具有4组配置 寄存器。 例如 、假设我们需要对 ISD 配置进行编程、然后用于存储该值的正确地址寄存器将为80h。 对于反向驱动配置、该值为82h。
     
    我在数据文件中看到、它是 ID = 0。 对于每组寄存器、它从0开始
    数据文件中有一些寄存器、我在数据表中没有看到。 确实如此
    您能否确认我们、如果这实际上是数据文件将是怎样的。 如果是、您能告诉我们如何在数据文件中未提及寄存器地址的情况下对器件进行编程吗? 谢谢!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Vigita:

    E2E 常见问题解答中链接的 用于对 EEPROM 进行编程的 MSP430FR2355 LaunchPad 示例编程代码 不会读取.json 文件。 示例代码使用数组中的值 、该数组需要手动输入所需的寄存器值。

    包含寄存器配置的.json 文件用于我们的 GUI、如 Motor Studio。当 GUI 将寄存器值加载到 GUI 时、.json 中的 idx 用于指示 Motor Studio GUI 寄存器映射中的值位置。

    [报价 userid="555481" url="~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1389714/mcf8316a-mcf8316a1vrgfr-documents-on-programming-this-device/5341970 #5341970"]数据文件中有一些寄存器、我在数据表中看不到

    所有 ANA_TRIM 寄存器都是保留寄存器、这就是数据表中未提及它们的原因。 不应写入这些寄存器、示例代码中的数组包含对器件进行编程所需的所有寄存器、使其根据需要运行。

    此致、

    约书亚

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

    你好、Joshua:

    我想知道数据文件应该是怎样的? csv 或.text 或其他文件。 我假设数据文件应该具有寄存器地址以及要写入该地址的值。 您能否为我们提供一个示例数据文件。 真的很有帮助。 谢谢!

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

    尊敬的 Vigita:

    我能否获得有关您的编程设置的更多信息?

    在进一步查看 您提供的.json 文件的屏幕截图后、这似乎是用于 dev.ti.com 上旧 GUI 的旧.json 格式。 这些旧的 GUI 特定于器件、这就是未将地址包含在.json 中的原因。

    如果您使用的是 Motor Studio 和 MCF8316AEVM、则要使用的文件类型为.json 文件、如下所示:

    e2e.ti.com/.../4251.Default-Registers-MCF8316C.json

    如果您将 使用 MSP430 LaunchPad 常见问题解答通过 I2C 在 Program MCx BLDC 电机驱动器中使用示例 CCS 工程、则需要手动将寄存器映射写入 CCS 工程中 main.c 文件中的数组。

    Motor Studio 还能够以.csv 格式输出寄存器配置、但 Motor Studio 或 CCS 工程不使用此文件类型:

    e2e.ti.com/.../Default-MCF8316C-Register-Config.csv

    此致、

    约书亚

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

    是否还有任何其他东西用于为器件供电。 I 为 VM 引脚提供5V 电压(引脚编号:9 10和11)。 FG 和 nFault 引脚被上拉。 然而、器件不会响应从器件地址。 我缺少什么吗?

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

    尊敬的 Vigita:

    要检查器件是否正确加电、您能否在向 VM 施加5V 电压后检查 AVDD = 3.3V 和 DVDD = 1.5V? 如果这些电压无法输出正确的电压、请检查从电源消耗的电流量。

    如果 nFAULT 和 FG 引脚由外部电源(不是来自 AVDD 或集成降压转换器的3.3V)上拉、请确保在为器件供电之前上拉这些引脚、否则 MCF8316A 可能会进入 I2C 通信不再工作的测试模式。

    此致、

    约书亚

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

    你好、Joshua:

    这是我的加电条件。 我将时钟和数据引脚悬空。 然后我将 VPU 设置为3.6V、从而将 FG 和 Fault 引脚上拉至3.6。 然后、我向 VM 引脚施加了5V 电压。 之后、我尝试与器件通信、但器件没有响应任何地址。

    I 测量了来自 AVDD 和 VDD 引脚的电压。 对于5V 电源、AVDD 和 dvvd 引脚上的电压为695mv 和660mv。 我认为该器件不会在5V 的电压下通电。  

    然后我将电压增加到了12伏。 无法与器件通信。  对于12V 电源、AVDD 和 DVVd 引脚上的电压为 4.06V 和 2V

    我缺少什么吗? SDA 和 SCL 引脚是否需要外部上拉电阻器?

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

    尊敬的 Vigita:

    AVDD 和 DVDD 的输出值大于其绝对最大值。 这可能表示 MCF8316A 已损坏、但也可能是由于采用了测量方法。  

    如果能够、您能否尝试测量另一个 MCF8316A 器件的 AVDD 和 DVDD 电压?

    sda 和 SCL 引脚是否需要外部上拉?

    我们建议在 SDA 和 SCL 上使用值为5.1k Ω 的上拉电阻器、以确保这些引脚可读作逻辑高电平。

    您是否可以测量 SDA 和 SCL、以检查在逻辑高电平时电压是否超过0.65 * AVDD? 如果逻辑高电平电压未超过0.65 * AVDD、则 MCF8316A 无法记录逻辑高电平输入。  

    此致、

    约书亚

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

    SPEED 引脚接地。 这会影响沟通吗?

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

    只有当 DEV_MODE 设置为1b 以便器件可以进入睡眠模式时、才能将 SPEED 引脚接地。 在睡眠模式下、AVDD 和 I2C 总线被禁用、因此我认为这不是原因、因为在将12V 施加到 VM 时、可以测量到高于3.3V 的 AVDD

    请务必 尝试测量另一个 MCF8316A 器件的 AVDD 和 DVDD 电压、测得的这些电压是因为输出高于其绝对最大额定值的电压可能表示损坏、这可能是通信问题的原因。

    如果您愿意、我可以查看原理图以检查是否有任何可能会出现问题的内容。

    此致、

    约书亚

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

    一个不同的样本上

    我们在 DVDD 引脚上得到1.23V

    以及 AVDD 上的3.3V

    当我发送从器件地址(0x01)并写入位0时、器件不会进行确认

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

    尊敬的 Vigita:

    感谢您检查另一个 MCF8316A 的 AVDD 和 DVDD、这有助于确认通信问题不是由器件损坏引起的。

    您能否提供以下信息:

    1.原理图

    2.尝试与 MCF8316A 通信时 SDO 和 SCL 的捕获

    此致、

    约书亚

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

    这是原理图

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

    连接到 SDA 和 SCL 引脚的电阻器为51.1k

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

    尊敬的 Vigita:

    我需要就此问题联系我的团队。 我的目标是在下周三之前与您联系。

    此致、

    约书亚

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

    尊敬的 Vigita:

    很抱歉回复延迟。

    1. 您是否能够在任何时候与 MCF8316A 通信? 如果您以前能够通信、是否写入了 EEPROM?
    2. 您是否可以尝试所有 I2C 目标地址来检查 EEPROM 是否编程了非默认 I2C 地址?
    3. MCF8316A 提供了有关 I2C 通信的勘误表。 我们建议客户尽可能切换到 MCF8316C、因为该器件是更新后的固件、可修复许多错误。 MCF8316C 与 MCF8316A 是引脚对引脚的。

    此致、

    约书亚

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

    你好、Joshua:

    我们解决了问题。

    您之前已了解、如果该器件正确上电、它将在 AVDD 引脚上输出3.3V、在 DVDD 引脚上输出1.5v。 当我们为 VM 引脚提供5V 电压时、AVDD 引脚上会获得3.3V 电压、但在 DVDD 引脚上仅获得1.2V 电压。 我之前分享了这些波形。 我们再次检查了规格、发现对于 DVDD 引脚至输出1.5、FB_BK 引脚的电压应为3.3V。 当我们为 FB_BK 提供3.3V 电压后、DVDD 引脚输出1.5v、并且器件提供了正确的 I2C 地址。

    之后我们能够对器件进行编程。

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

    我很高兴您能够发现问题的原因! 我确实遗憾的是、我没有立即注意到 DVDD 稳压器输出低于技术规格。 为了提供一点上下文信息、DVDD 稳压器用于为 MCF8316A 内的数字内核供电、因此该电压不在规格范围内会导致 I2C 外设无法开启。

    此致、

    约书亚