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.

[参考译文] MSP430G2101:在 P1.6上电时胜出#39;t 初始化

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1275867/msp430g2101-won-t-initialize-when-power-on-p1-6

器件型号:MSP430G2101

我正在尝试实现以下电路。 它由9V 电压供电、通过瞬时开关和分压器将电压降低至~2.7伏。 此电压用于启用也由9V 供电的电压稳压器。  

控制器进行初始化时、它会向电压稳压器发送3.3V 电压、以在释放按钮后保持电源开启。 它还打开 LED 指示灯、指示一切正常。

我遇到的问题是我正在尝试将来自开关的2.7V 电压发送到 P1.6、以便能够检测电源按钮何时被按下(原理图中的紫色线)。 连接 P1.6时、控制器无法初始化、提供给稳压器使能引脚的电压仅为0.86v。 未连接 P1.6时、所有内容均正确初始化。

我确定我缺少一些明显的东西、但我不确定要搜索什么。 非常感谢您提供任何帮助。

 

此处是刷写到控制器中的代码、

#include <msp430.h>

int main(void)
{
WDTCTL = WDTPW | WDTHOLD;
P1SEL = 0x00;
//P1.6 Input
P1DIR = ~BIT6;
//Output 3.3v on P1.1
P1OUT = BIT1;
P2SEL = 0x00;
P2DIR = 0xFF;
P2OUT = 0x00;
//Enable resistor on P1.6
P1REN |= BIT6;

//Turn on LED
P2OUT |= BIT6;
}

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

    我还应指出、据我所知、我拥有的电路板正使用此精确电路和工作。 然而、我无法访问他们所闪存的代码、因此我不知道他们在做什么。

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

    您缺少的是 ESD 二极管和绝对最大额定值。

    某个引脚上的绝对最大值为 Vcc + 0.3V 左右。 当 Vcc 为0时、引脚上任何超过0.3V 的电压都超过绝对最大值。 实际效果是、引脚上的 ESD 二极管相对于 VDD 引脚进行正向偏置、电流流入 VDD 轨、从而打开芯片。

    我们中的大多数人、像您一样、都是通过艰难的方法来学习这一点。

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

    您刚才提到过、我记得在某一点上的绝对最大额定值读数。 您不会碰巧知道这些文档在哪里、您会怎么做? 我在 slau144k 中找不到它引用的内容。

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

    中提供了说明(如本讨论顶部所链接)

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

    嘿、Andrew、  

    正如 Keith 已指出的、听起来好像您先为 GPIO 供电、这违反了最大额定值、并且可能对 MCU 反向供电。   

    谢谢。

    JD

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

    我相信大家都是对的。 让我感到困惑的一点是、我有一个电路板采用了此电路、但它并未受到此问题的影响。 开关的2.7V 电压和稳压器的3.3V 电压同时上升。 电路板会按预期进行初始化。  

    在发生故障的电路板上、保护二极管会立即触发、开关的电压仅 上升至约0.8V。 从不启用稳压器。

    我可能会添加一个 晶体管 、将稳压器的输出馈入引脚1.6中、并由开关电压驱动、但我想弄清楚另外一个 板是如何工作的。

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

    好像它就是我使用的电压稳压器。 我从工作板上偷走了稳压器、电路开始工作。

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

    您应该使用 TI 稳压器!   

    开个玩笑,我很高兴你找到了你的根本原因。   

    谢谢。

    JD

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

    我要寻找更多有关 ESD 二极管的文档。 我能够在这里找到该文档 slaa689b