主题中讨论的其他器件: TMS320F2800137
工具与软件:
您好!
我正在使用 DRV8317驱动器 IC 和 TMS320F2800137微控制器开发 BLDC ESC。 稍后由 DRV8317的 LDO 供电。 我正在使用与 EVM 板中相同的 nSLEEP 电路、其中3.3V 齐纳二极管用于10k Ω 上拉至 VDC。 我不需要在 DRV8317上使用睡眠模式、但需要短脉冲来复位故障(如数据表中所述)。 问题是当 nSLEEP GPIO fom F2800137配置为输出时、CPU 会丢失调试连接。 我认为 GPIO 配置会在某种程度上负责将 DRV8317芯片置于睡眠模式、从而使 LDO 关断。 我可以看到3.3V 电压开始下降、然后 BOR 将复位 CPU。 CPU 返回后、会在初始化例程中再次发生、此时 GPIO 再次被置位、所有操作都会重复进行。 如果我禁用 nSLEEP GPIO 设置、一切都会正常运行。 我将介绍通用电机控制示例、GPIO 设置的代码为:
// GPIO29->M1_nSLEEP、1-有效、0-低功耗睡眠模式
GPIO_setPinConfig (GPIO_29_GPIO29);
GPIO_writePin (29、1);
GPIO_setDirectionMode (29、GPIO_DIR_MODE_OUT);
GPIO_setPadConfig (29、GPIO_PIN_TYPE_STD);
当我单步执行 GPIO_setDirectionMode 时、调试器关闭。 我还尝试将该引脚设置为开漏引脚(因为它应该是这样)、并且是相同的。
当我测量 nSLEEP 引脚上的电压时、尽管我有一个3.3V 齐纳二极管、但它会向我显示大约2.5V 的电压。
我在这里感到困惑、我需要一个解决方案、否则我将无法重置故障条件。
谢谢你。
Jernej