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.

[参考译文] MSP430F5659:msp430f5659的复位初始化

Guru**** 2510945 points
Other Parts Discussed in Thread: MSP430F5659

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/779288/msp430f5659-reset-initialization-of-msp430f5659

器件型号:MSP430F5659

您好!

我正在使用具有16x2 LCD 的 MSP430F5659微控制器

问题:

按下复位开关(在 RST 引脚上接地)后液晶屏上有时会出现垃圾数据/中文字符。 电路在 RMU PCB 上连接了2.2nf 和42k Ω 电阻。

请建议系统初始化过程。  我的系统初始化代码如下所示:

   WDTCTL = WDTPW | WDTHOLD;                //停止 WDT
   //PMMCTL0 = PMMCTL0_L | PMMPW | PMMSWBOR;

   //SYSRSTIV = 0x02;
   _disable_interrupt ();
   Clock();

   P1DIR=0xFF;
   P1OUT=0x00;
   P5DIR =0xFF;
   P5OUT=0x00;
   P4DIR = 0xFF;
   P4OUT=0x00;
   P2DIR =0xFF;
   P2OUT=0x00;
   P3DIR = 0xFF;
   P3OUT=0x00;

   _DELAY_CYCLES (400000);
   Clock();
   _DELAY_CYCLES (400000);
  lcd_init();
   _DELAY_CYCLES (40000);
   lcd_init();
   _DELAY_CYCLES (40000)

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

    似乎您使用外部 LCD 驱动器来驱动 LCD、因为 F5659没有 LCD 驱动器外设、对吧?
    您能否首先检查您的 LCD 驱动器是否工作正常? 从我的怀疑来看、液晶屏驱动程序和液晶屏之间存在问题。
    如果您有更新、请告诉我。

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

    您好、Shafali、

    您是否再次释放 RST 按钮、以便可以执行代码。 如果不是、您的器件在此模式下仍处于复位状态、则所有引脚均为 HiZ 且悬空。 这意味着到外部 LCD 的控制信号是悬空的、这会导致随机行为。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我的控制器由2个电源(太阳能和电池)供电。 在这些电源之间进行切换、以可用的电源为准。 在电源之间切换时、液晶屏上有时会显示垃圾数据。
    即使在 MCU 启动时、LCD 上也会出现垃圾消息、这可能会导致假设控制器未正确启动。
    因此、我想知道复位控制器并正确启动控制器所需的指令。
    我没有使用过外部 LCD 驱动器。 16x2 LCD 由 MCU 引脚驱动。
    问题是在 MCU 启动时出现的、而不是在启动后出现、因此问题可能与 LCD 代码无关。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Shafali、

    如果您按 RST 按钮、将执行 BOR、从而完全重新启动您的器件。 如果 DVCC 在电池和太阳能之间切换、则可能会出现同样的情况。我希望电源电压下降、导致电源短路。 无论如何、这里将执行欠压(下电上电)。 您可以通过在开关期间使用示波器跟踪 MSP 电源来检查这一点。

    至少在欠压时、LOCKLPM5位会复位、这会将 GPIO 恢复到 HiZ 状态。 如果 BOR 通过 RST 引脚执行、则会出现相同的情况。
    我看不到您在哪里处理 LOCKLPM5位。

    为了确保 LCD 不显示垃圾、您应该应用外部下拉电阻、如果 MSP 的驱动器引脚在复位期间未定义、则确保 LCD 分段关闭。

    此致、
    Dietmar