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.

[参考译文] MSP430FR5994:以低时钟频率使用 MSP430FR5994驱动 LED

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1403025/msp430fr5994-driving-led-with-msp430fr5994-at-low-clock-frequencies

器件型号:MSP430FR5994
Thread 中讨论的其他器件: ENERGYTRACE

工具与软件:

尊敬的专家:

我正在处理一个使用 MSP430FR5994的项目、我的目标是以尽可能低的功耗驱动 LED。 目前、我通过切换 GPIO 引脚来驱动 LED、它在更高的时钟频率下工作正常。 然而、当我将主时钟频率降低到32 kHz (ACLK)时、LED 未能亮起。

我的目标是使用尽可能低的时钟频率来驱动 LED、同时更大限度地降低功耗。 您能否就以下事项提供建议:

  1. 使用 GPIO 引脚切换来有效驱动 LED 所需的最低时钟频率是多少?
  2. 是否有任何替代的低功耗方法可以使用 MSP430FR5994驱动 LED、也可以使用 PWM 或其他方法、在32kHz 等较低频率下工作?

感谢您提供任何建议或指导。

谢谢!

此致、

Josel

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

    没有最低频率。 如果您使 LED 产生脉冲、则可能是占空比降低得太大。 我建议您在上面放置一个示波器以查看发生了什么。

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

    LED 的颜色是什么、LED 所需的电流驱动是什么?

    LED 的强度受 PWM 占空比的影响、因此如果占空比太小、LED 将无法产生足够的流明。 您可能能够在黑暗的房间中观察到一些光线、具体取决于 LED 的颜色(红色通常更容易查看)。 但如果您想要更亮的闪烁、则需要增加占空比。

    此致、
    Luke

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

    尊敬的 Luke:

    我想在这个情况下控制 LED1:尽可能使用低功耗、我认为使用 ACLK (32kHz)而不是主时钟(4MHz)、这样可行吗?

    如数据表所述、

    优化的超低功耗模式
    激活模式:118 µA / MHz
    待机模式下的 VLO (LPM3):500nA
    待机模式下的实时时钟(RTC)(LPM3.5):350nA (RTC 由3.7 pF 晶振计时)
    关断电流(LPM4.5):45nA

    我想知道如何使用超低功耗模式? 如果你能给我发送一个关于代码的简单示例,我会非常感谢!!

    我使用 EnergyTrace、发现有源模式(又称正常模式或默认模式)、当我使用 GPIO 来点亮 LED 时、功耗为11mW、但我认为它太高了、但电流需要3.5mA、我们有没有降低这种功耗的解决方案?


    此致!

    Josel

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

    您能给我们演示一下您用于 LED 的代码吗?

    您希望它是连续的还是闪烁?

    闪烁的功耗可能低于连续占空比。

    您只需进行调整、即可在可承受的功率级别获得所需的亮度。 什么都不能得到!

    过去、LM3909在使用电池的情况下长时间闪烁 LED、但似乎已停产。

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

    除非您降低电压、否则如果所需的电流为3.5mA、您将消耗的功率为11.55mW  瞬时  功率(P = I*V)。 通过减少闪烁时间和闪烁频率、可以随时间的推移降低平均功耗。

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

    您好!

    这是代码的第一个版本、我想用 LED 发送简单的信息、

    /*
    #include

    #define 前导码0xB6
    #define LEDID 0xAA

    void sendBit (unsigned int bitValue);
    void send8BitData (unsigned int data);

    void main (void){
    WDTCTL = WDTPW | WDTHOLD;
    PM5CTL0 &=~μ H LOCKLPM5;
    P1DIR |= 0x02;

    对于(;;){
    send8BitData (前导码);
    send8BitData (LEDID);
    __delay_cycles (800000);//延迟0.8s
    }
    }

    void sendBit (unsigned int bitValue){
    if (bitValue){
    P1OUT |= 0x02;
    其他{
    P1OUT &=~0x02;
    }
    __delay_cycles (100000);//延迟0.1s
    }

    void send8BitData (unsigned int data){
    INT k;
    对于(k = 7;k >= 0;k--){
    sendBit ((data >> k)& 1);//发送数据中的每一位
    }
    }

    但是、我认为功耗太大、就像每次我轻量一个 LED (红色)、它都会消耗我(比如11mW);

    我要使用某种低功耗模式、这是我的第二个版本


    #include

    void main (void){
    WDTCTL = WDTPW | WDTHOLD;

    PM5CTL0 &=~μ H LOCKLPM5;
    P1DIR |=位0;
    P1OUT &=~位0;

    CSCTL0_H = CSKEY >> 8;
    CSCTL2 = SELA__LFXTCLK;// LFXT 32kHz
    CSCTL3 = DIVA__1;
    CSCTL4 &=~LFXTOFF;

    执行{
    CSCTL5 &=~LFXTOFFG;
    SFRIFG1 &=~OFIFG;
    } while (SFRIFG1 & OFIFG);

    TA0CCR0 = 32768 - 1;
    TA0CCTL0 = CCIE;
    TA0CTL = tassel__ACLK | MC__UP | TACLR;// ACLK、向上计数模式

    while (1){
    P1OUT ^=位0;

    //1s
    __bis_SR_register (LPM3_bits | GIE);// LPM3
    }
    }

    #pragma vector = TIMER0_A0_VECTOR
    __interrupt void Timer0_A0_ISR (void){
    _BIC_SR_REGISTER_ON_EXIT (LPM3_BITS);
    }


    但我发现、通过此代码、我仍然需要11mW 来减轻 LED (红色)、如何改进以降低功耗? ><


    此致、

    Josel

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

    当 LED 亮起时、始终会消耗11mW 的功率、 例如、如果您以10%的频率进行脉冲、则亮起时、仍将消耗11mW 的功率、但*平均值*仅为1.1mW。

    您需要找到能提供所需亮度的最小脉冲。

    使用 LED 你不能得到什么东西什么,你需要一个特定的功率的可见指示。

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

    当然、选择您能找到的最亮的 LED。 也就是说、光线越亮、电流越小。