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.

[参考译文] MSP430G2755:微控制器在调试器模式下工作、但是在没有 MSP-EFT 的情况下将其打开不起作用。

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1046393/msp430g2755-microcontroller-works-in-debugger-mode-but-turning-it-on-without-msp-eft-does-not-work

器件型号:MSP430G2755
主题中讨论的其他器件:MSP-FET

向整个社区表示问候。

我正在为我的遥测设备公司进行开发、但现在我遇到了一个问题、我完成了代码、当将 MSP-FET 连接到 MSP430G2755微控制器所在的电路板时、一切都正常。 但是、当我断开 MSP-FET 以便电路板在打开时自行启动时、我观察到它未开启、它不会启动程序、因为在 LCD 显示屏上未观察到任何内容。

我在论坛上进行了查询,发现有几位议员也有类似的问题,是通过调整复位回路来解决的,所以我很清楚,我也很清楚。

我无法添加所有代码、因为超过3500行、但这些是主函数的第一个:

    if(mes==6){send_string("Jun");}
    if(mes==7){send_string("Jul");}
    if(mes==8){send_string("Ago");}
    if(mes==9){send_string("Sep");}
    if(mes==10){send_string("Oct");}
    if(mes==11){send_string("Nov");}
    if(mes==12){send_string("Dic");}
    retardo_com();
}

int main(void)
{
    WDTCTL = WDTPW | WDTHOLD;
    BCSCTL1 = CALBC1_8MHZ;
    DCOCTL = CALDCO_8MHZ;
    lcd_init();
    comando (CURSOR_OFF );
    SDA_configsal;SCL_configsal;SCL_bajo;SDA_bajo;
    t_ljson=2;
    retardo_ver();

    while (1)
        {
            while (estado==0)
            {
                estado=5;
                probador=LEER_MEM(0);
                comando(CLEAR_DISPLAY);
                send_string("   DAILY TECH   ");
                ir_lin_esp (3,1);
                send_string("Sist. telemetria");
                ir_lin_esp (4,1);

我没有使用中断、因为所有通信都是通过软件进行的、也有延迟、我使用模拟读数来读取一些按钮。 其余的只是用于通信、处理信号、生成 LCD 接口和类似内容的代码。 针对发生的情况禁用代码优化。

我看到的奇怪是、在对时钟的配置行进行评论时(BCSCTL1 = CALBC1_8MHZ; DCOCTL = CALDCO_8MHZ;)为了使微控制器能够在出厂配置下工作(我认为是 MCLK、DCO 为1MHz)、如果微控制器在没有 MSP-FET 的情况下开启、则问题是每次处理需要以8MHz 的频率运行。

我感谢能够帮助我的每个人、我将在论坛上等待。

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

    这听起来非常类似于缓慢的功率上升。 MCU 将在1.8V 时退出复位状态、但必须在~2.2V 时才能在8MHz 下运行[参考数据表(SLAS800)图1]。 FET 提供恒定功率、因此您不会注意到这一点。

    作为一个快速实验,在停止 WDT 后插入如下内容作为 main()的第二行:

    >_DELAY_CYCLES (1000000UL); //旋转大约1秒

    如果这清除了问题、您可以通过(a)实验或(b)在示波器上观察 Vcc 来调整延迟时间。

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

    你(们)好。

    感谢您的回答 Bruce McKenney47378已经通过添加_delay_cycles 行(1000000UL)进行了更改;但情况仍然如此。

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

    您在 VCC 处测量的电压是多少? 您在电源中使用什么?  

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

    如何连接 MSP-FET? 在 MSP-FET 上、请记住有一个 VCC_TOOL 引脚(电源3.3V)和 VCC_TARGET 引脚(感测外部 VCC 以适当地设置逻辑电平)。 确保使用其中一个、并确保在使用 VCC_TOOL 时不会发生电源冲突。

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

    还有 一个与 DCO 相关的 BCL12勘误表。 有关更多详细信息,请参见勘误表。 您可能会发现 此代码示例 很有趣。