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.

[参考译文] LAUNCHXL-F28027F:由逆变器 EVM8301供电

Guru**** 2607985 points
Other Parts Discussed in Thread: LAUNCHXL-F28027F

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/684120/launchxl-f28027f-powered-from-inverter-evm8301

器件型号:LAUNCHXL-F28027F

你(们)好

我制定了一个程序来控制三相逆变器 EVM8301 Booster Pack、作为一个连接到 Launchpad F28027F 的单相逆变器(2个桥臂)

当 Launchpad 27F 连接到 USB 时以及当我插入 EVM8301 Booster Pack 并通过外部电源 Vdc-10V 为其供电时(但不移除 JP1..3 3.3V/GND)、这些程序工作正常

如果我在 JP1..3仍处于打开状态的同时移除 USB、则逆变器红色 LED 故障变为打开、逆变器输出关闭、但我的程序仍正常运行(OLED 显示屏、ADC、...)

如果我移除 JP1..3以让 EVM8301 Booster Pack 使用自己的电源为 Launchpad 供电、我在 Launchpad 27F 上的程序将不起作用!  

它具有3.3V 电压、但27F 程序不起作用

但是、如果我将 USB 连接到5V、则会打开故障红色 LED 并关闭逆变器、然后27F 开始运行!!! 但逆变器关断

然后、如果我移除5V USB、则逆变器不再关断(LED 呈红色熄灭状态)、27F 仍在运行并保持此状态、直到我移除 EVM8301的外部电源

这很奇怪、我不理解。

即使我按下复位按钮、也会自行供电、但这不会引导27F

因此、为了使其正常工作、我必须连接/断开 USB。。。

是否有线索? 谢谢  

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

    我的程序的主要例程

    void main (void)
    {
    //仅在从闪存运行时使用
    //请注意变量 FLASH 由项目
    #ifdef FLASH 定义
    //将时间关键代码和闪存设置代码复制到 RAM
    // RamfuncsLoadStart、RamfuncsLoadEnd 和 RamfuncsRunStart
    //符号由链接器创建。 请参阅链接器文件。
    Memcopy ((uint16_t *)&RamfuncsLoadStart、(uint16_t *)&RamfuncsLoadEnd、(uint16_t *)&RamfuncsRunStart);
    
    #ifdef csm_enable
    //copy .econst 至 unsecure RAM
    if (* econst_end -* econst_start)
    {
    Memcopy ((uint16_t *)&econst_start、(uint16_t *)&econst_end、(uint16_t *)&econst_ram_load);
    }
    
    //copy .switch ot unsecure RAM
    if (* switch_end -* switch_start)
    {
    Memcopy ((uint16_t *)&switch_start、(uint16_t *)&switch_end、(uint16_t *)&switch_ram_load);
    }
    #endif
    #endif
    
    //初始化硬件抽象层
    halHandle = HAL_init (&hal、sizeof (hal));
    
    //初始化用户参数
    user_setParams (&gUserParams);
    
    //设置硬件抽象层参数
    HAL_setParams (&gUser初 始化 Params);
    
    //初
    
    
    
    
    
    始
    化 I2H_Inchunt (I2HAL);//初始化中断向量//ADCINT1 ET I2CINT1A
    
    //启用 ADC 中断
    HAL_enableAdcInts (halHandle);
    
    //启用全局中断
    HAL_enableGlobalInts (halHandle);
    
    //启用调试中断
    HAL_enableDebugInt (halthalHandle);
    
    //禁用 PWM_disablePwm
    (halthoreHandle);//启用 DRV8301HL_DRV301
    
    
    
    
    
    
    (half)接口
    
    ;//启用 DRV8301)
    
    //初始化 I2C OLED 配置
    
    //针对 while
    (true)
    {
    if (Flags.RefreshOLED) RefreshOLED();
    }
    // main ()函数的末尾
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请参阅 LaunchXL-F28027F 的原理图、您可以在 LaunchXL-F28027F 上设置 S1、如下所示、将引导模式跳线设置为"引导至闪存"。

    S1 (1开、2开、3关)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢、这解决了问题、引导正常。
    您能解释一下为什么它从闪存引导(S1打开时)?

    对于 S1 (1开、2开、3关)、我们无法再进行调试、但如果我连接 USB、仍然使用它进行刷写程序、它是否正确?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    设置 S1以设置 GPIO37=1、GPIO34=1和 TRSTn=0以将引导模式设置为"获取模式"、默认情况下从闪存引导。 有关2802x 引导模式的更多信息、请参阅《技术参考手册》中的器件特定引导 ROM 一章。
    无法对闪存进行编程、因为通过设置 S1的 TRSTn=0来断开 JTAG 仿真器。