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.

[参考译文] TMS320F28054M:TMS320F28054M

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1246335/tms320f28054m-tms320f28054m

器件型号:TMS320F28054M
主题中讨论的其他器件:MOTORWARELAUNCHXL-F28027

我正在使用"instaspin"技术设计的低电压定制电路板上工作。 我正在尝试从中实施实验10A -可在定制电路板中通过 motorware 进行过调制。 该卡在"调试模式"下按预期工作、最高可达调制指数0.677、但在独立模式下、调制指数超过0.577后、最后一个 PWM 脉冲在一个脉冲持续时间内变为低电平、然后再变为完全高电平。 我检查了变量 gPwmData.tabc.value[]->的值,它设置 PWM 寄存器的值,发现当发生这种 PWM 反向行为时,它高于0.5,低于0.6。  因此、怀疑出现了将 PWM 输出设置为完全低电平的瞬时情况(PWM 周期是否跳过?)。 电机运行正常、但噪声稍大、电流形状不稳定、如随附文档中所示。 可以有人 ppl. 以便了解一下对于调试模式和独立模式的这种差异、我可以检查些什么? 由于调试模式和运行模式中的这种行为差异、我完全困惑。。。

e2e.ti.com/.../PWMWaveform.txt.docx

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

    您在上面提到过。 问题可能来自调试和运行模式下的噪声、该噪声可能会有所不同、因为连接仿真器会导致电源供电或接地在这两种模式下有所不同。

    此电路板使用的是哪种仿真器?

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

    亲爱的亚明,谢谢你的答复。

    我认为这不是噪声问题、在 PWM 更新之前、我在 ISR 中使用了 TRIP 引脚(GPIO8)和 CRO、以确认值 gPwmData.tabc.value[0]在0.5至0.6之间。 如图所示、PWM 的反向、即使 TRIP 引脚显示脉冲指示、gPwmData.tabc.value[]正确。  

    ------------------------------------------------------------------------------------------------------------------------------------------------------------

    if (gPwmData.tabc.value[0]>_IQ (0.5)&& gPwmData.tabc.value[0]<_IQ (0.6))
    {
    GPIO_setLow (halHandle->gpioHandle、trip);

    HAL_writePwmData (halHandle、&gPwmData);
    {
    SVGENCURRENT_IgnoreShunt_e ignoreShuntNextCycle = SVGENCURRENT_getIgnoreShunt (svgencurrentHandle);
    SVGENCURRENT_VmidShunt_e midVolShunt = SVGENCURRENT_getVMID (svgencurrentHandle);

    //在低侧脉冲的中间设置触发点
    HAL_SetTrigger (halHandle、ignoreShuntNextCycle、midVolShunt);

    GPIO_setHigh (halHandle->gpioHandle、trip);

    --------------------------------------------------------------------------------------------------------------------------------------------

    如果我在 instaspin 中使用运行模式而不是调试、会插入哪些代码补丁、删除哪些代码、尤其是在 PWM 初始化中? 我还能确定哪些因素可能导致了这种现象吗?

    对于调试器、我们有内部开发的卡、它使用 LAUNCHXL-F28027卡中的电路和 FT2232H 芯片。 我认为它相当于 XDS100V2调试器。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果我在 instaspin 中使用运行模式而不是调试,则插入了哪些代码补丁并删除了哪些代码补丁-特别是在 PWM 初始化时? 我还可以检查哪些因素可能导致了这种现象吗?

    如果您使用的工程具有相同的构建配置、则没有任何差异。

    对于调试器,我们有一个内部开发的卡,该卡使用带 FT2232H 芯片的 LAUNCHXL-F28027卡中的电路。 我认为它相当于 XDS100V2调试器。

    您是否初始化项目中的所有关键变量?

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

    谢谢。 是的、我做了。  

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

    我的问题 TI 团队有任何最新动态?

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

    是否在此器件上使用 CSM? 并且正在使用隔离 JTAG 调试器?

    如果你已经初始化了所有使用变量、如果你未使用 CSM、看起来有任何进一步的更新。

    如果我在 instaspin 中使用运行模式而不是调试,则插入了哪些代码补丁并删除了哪些代码补丁-特别是在 PWM 初始化时? 我还可以检查哪些因素可能导致了这种现象吗?

    ROM 中的 InstaSPIN 代码无差异。

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

    什么是 CSM? 调试器是隔离式的。  

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

    "双区域安全模块"它用于设置安全内存块保护的安全密码。 您可以在 F2805x 数据表和技术参考手册中找到有关这方面的更多详细信息。

    你是否在 ISR 中添加了任何函数? 添加函数是内联类型吗? 还是外部功能?

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

    谢谢澄清、是的、我在 ISR 中添加了更多代码、主要是从 LAB10A 进行代码修补以重构电流值。

    我在"运行模式"下使用自由数字输出引脚进行了一些测试、并检查了  

    halHandle->pwmHandle[0]->CMPA 变量并在值为零时刷新了一个数字引脚。 我发现、PWM 输出具有100%高占空比后、此时的值为零。 所以、为什么输出在完全变为高电平之前仅在一个周期内变为低电平、这是一个谜。 这在调试模式下不会发生。

    您能提供一些可能的方法来检查这种现象吗? 发生了周期跳跃之类的情况吗? 如果是、我可以检查什么?

    我在"调试模式"下观察到的另一种情况是这个。  halHandle->pwmHandle[0]->CMPB (B 比较寄存器)(始终为零)、当 HAL_writePwmData  (halHandle、&gPwmData)时、在观察窗口中以0到80的小值持续波动; 调用函数(如果添加了注释、则该值不摆动)来更新 PWM、即使代码内部没有用于更改 CMPB 寄存器的指令也是如此。

    您能为我提供一些需要测试的建议吗?

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

    1.   先禁用过调制和电流重构以查看发生的情况。

    2.将 调制指数限制为0.57,并启用 过调制和 电流 重构,查看发生的情况。

    3. 将 调制指数限制为0.66 ,并启用 过调制和 电流 重构查看发生的情况。

    如果情况1正常、但情况2和情况3不好、则必须检查 过调制和 电流 重构算法。

    如果第1种和第2种情况正常、但第3种情况不良、您必须检查采样电流信号。