Jump to content

rord100

Members
  • Content Count

    17
  • Joined

  • Last visited

About rord100

  • Rank
    Member

Profile Information

  • Interests
    msp430 controllers
  1. Hi Fmilburn, Thank you for your remark. I tested your suggested code on new MSP-EXP430G using Fluke 187 multimeter connected in series to the Vcc pins of J3 after the jumper was removed and I measured 0.27 ?A which is good. Is there anything else I can do, in your opinion, to lower current consumption to 0.1 ?A ? Here is your the code I used: /* This example was derived from a posting by fmilburn3 Demonstrates a way to utilize LaunchPad low power modes with the sleep(), sleepSeconds(), suspend() and wakeup() functions in Energia. The LaunchPad will blink the red LED 3 times and demonstrate sleep() and sleepSeconds(). It then goes into suspend() but will wake up and start over again if the button is pushed. sleep() and sleepSeconds() use LPM3. suspend() uses LPM4. This example was derived from a posting by @[member=spirilis] at 43oh.com Created by Frank Milburn June 2015 Released into the public domain */ void setup() { for (int i =2; i < 20; i++) { pinMode(i, OUTPUT); digitalWrite(i, LOW); } pinMode(P1_3,INPUT_PULLUP); // this is the PUSH BUTTON pinMode(P1_0,OUTPUT); //Enable output on P1_0 (onboard red LED) attachInterrupt(P1_3,Interrupt, FALLING); } void loop() { // Flash the LED - use sleep and sleepSeconds to save power by going // into LPM3 for (int i = 0; i < 3; i++) { digitalWrite(RED_LED, HIGH); sleep(200); // use sleep for millis digitalWrite(RED_LED, LOW); sleepSeconds(1); // use sleepSeconds for seconds } // Suspend and go into LPM4 suspend(); } void Interrupt(void) { wakeup(); // wake up if button is pushed }
  2. Hi Fmilburn, Thank you for your remark. I tried your example, in the tutorial you mentioned above, on a brand - new MSP-EXP430G Luanchpad with a Fluke 187 multimeter connected in series with the Vcc pins of J3 after the jumper was removed and the circuit consumed 0.22 ?A during suspend mode. which is nice. Is there anything to do in your opinion to lower current consumption to 0.1 ?A ?
  3. Hi NurseBob Thank you for your most educating remark. I was not aware of the family user guide. slau144j.pdf at all. I changed my target board HW accordingly (attached bellow). I tied the RST pin to Vcc via a 47K resistor and the devise is running. I defined the GPIOs as in the the code I previously posted to Greeeg above with current consumption of 0.29 ?A. Is there anything else I can do, in your opinion to lower current consumption to 0.1 ?A ? Thank you Low Power circuit.pdf
  4. Hi Greeeg, Thank you for your meticulousness and good comment. I changed the code accordingly and the current consumption during LPM4 is now ~ 0.29 ?A. Attached bellow is the amended code: void setup() { pinMode(P1_0,INPUT_PULLDOWN); pinMode(P1_1,INPUT_PULLDOWN); pinMode(P1_2,INPUT_PULLDOWN); //pinMode(P1_3,INPUT_PULLDOWN); This input will be set later pinMode(P1_4,INPUT_PULLDOWN); pinMode(P1_5,INPUT_PULLDOWN); pinMode(P1_6,INPUT_PULLUP); //LED pinMode(P1_7,INPUT_PULLUP); //LED pinMode(P2_0,INPUT_PULLDOWN); pinMode(P2_1,INPUT_PULLDOWN); pinMode(P2_2,INPUT_PULLDOWN); // pinMode(P2_3,INPUT_PULLUP); // LED This input will be set to output pinMode(P2_4,INPUT_PULLUP); // LED connected pinMode(P2_5,INPUT_PULLDOWN); // NC pinMode(P2_6,INPUT_PULLDOWN); pinMode(P2_7,INPUT_PULLDOWN); pinMode(P1_3,INPUT_PULLDOWN); //I changed this from pinMode(P1_3,INPUT_PULLUP); pinMode(P2_3,OUTPUT); //Enable output on P1_0 (onboard red LED) The P2_3 is where one of my LEDs is connected attachInterrupt(P1_3,Interrupt, RISING); //I changed this changed from attachInterrupt(P1_3,Interrupt, FALLING); } void loop() { LPM4; //whenever the loop runs, switch back into LPM4 //we could put code here that would run after every Interrupt - see warning in text. } void Interrupt(void) //Our interrupt routine { digitalWrite(P2_3,!digitalRead(P2_3)); //toggle the red LED };
  5. Hi, I would like to report the results of the tests I did following my last post where I managed to reach 25
  6. Hi guys, I would like to report that following your comments I tried to set: pinMode(P1_3,INPUT_PULLDOWN); instead of the previous pinMode(P1_3,INPUT_PULLUP); and consequently I had to change attachInterrupt(P1_3,Interrupt, RISING);instead of the the previous attachInterrupt(P1_3,Interrupt, FALLING);. I needed to change the switch wiring from GND to Vcc. The results are that power consumption went from 75
  7. Hi , This last problem is solved by connecting the RST pin on the target board to VCC. The high current consumption did not go away just yet...
  8. Hi , Sorry for the confusion I caused. Is there any way to cancel my post in one of the forums?
  9. Hi @Mention, Thank you for your input. I have tried with and without all those INPUT_PULLDOWN but with no significant change in current consumption. I already tried to insert the LPM4 in different places including at the end of setup() but to no avail.
  10. For some reason, probably because I am new my reply to you seem to appear in the wrong place. So I will try again to insert my reply where I think it is right. I also attached the diagram as PDF attachment, I could not figure out how to make it appear nicely on the page. Hi greeeg, Thank you for your input. Attached please find the circuit diagram I use. I have no external pull down resistors at all. All other parts on my PCB, like 4 LEDs and one buzzer are active only when the program is awake. When in LPM4 mode all LEDs outputs are set to HIGH and the Buzzer output is set to LOW , so no current should flow through these guys. Regarding the RX, TX, RST and TEST pins , when I disconnect RX and TX there is no change in current consumption , still 75 430h2.pdf
  11. Hi, Thank you, I did but to no avail, still same current consumption, But I realized that when I disconnect the TEST jumper from the Luanchpad the program stop running. Any Idea ?
  12. Hi greeeg, Thank you for your input. Attached please find the circuit diagram I use. I have no external pull down resistors at all. All other parts on my PCB, like 4 LEDs and one buzzer are active only when the program is awake. When in LPM4 mode all LEDs outputs are set to HIGH and the Buzzer output is set to LOW , so no current should flow through these guys. Regarding the RX, TX, RST and TEST pins , when I disconnect RX and TX there is no change in current consumption , still 75 430h2.pdf
  13. Hi @Mention, Thank you for your advise. It is a very enlightening article which I read with great interest. I studied the practices mentioned at the "Ultra-Low Power with MSP430" link and successfully used the codes they suggested. Although I used their codes, I did not use their measuring method but instead I used analog method, namely, connected a micro Amper meter in series with the VCC line. I used different high quality ?A meters, they all show similar results. The code is working, the current goes from 5mA when in awake mode to 75 ?A when in LPM4 mode. I failed to understand what did I do wrong not being able to reach 1?A like they did. The TI MSP430G2553 datasheet indicates to use 2.2VDC of supply voltage where they mentioned 0.1?A current consumption. I was tempted to go down this road when I realized that in the link you mentioned they reached this current consumption using Vcc~3.6VDC. Presently I am a bit confused..... and will appreciate a good hint, thank you
×
×
  • Create New...