Looking through the datasheet there's a set of graphs that looks like what I want on page 25. I'm a bit confused as to what they mean.
For example, let's focus on the two graphs on the right which correspond to Vcc = 3v. I think the top graph is what would happen if you try to sink current with P1.7 and the bottom graph is what would happen when you try to source current with P1.7. I'm not entirely sure what these graphs are saying, though. Why would the pin voltage change? I thought the device was supposed to hold the pin voltages steady at 0v or Vcc when you output low and high respectively. Additionally, I can't seem to find a maximum sum current rating for all of the pins.
The project I'm trying to do specifically is to light groups of LEDs using multiple pins like this. This is my first attempt at using a micro controller outside of class and I'm rather new at this, so any help would be appreciated!
The graphs you sited from the datasheet are the V-I curves of the typical output pins of MSP430G2x53/G2x13. V-I curve shows the voltage verses current relationship of an electric element. The datasheet of the LED should have a V-I curve too. A resistor have a liner V-I curve V=R*I, where the slope R is the resistance of that resistor.
In the case of using a resistor and a LED in series with P1.7 to sink 15mA, the calculation is as follows:
a) According to Fig.7, P1.7 will drop 0.5V (at Vcc=3V, Ta=85C)
b) According to the other article you sited, the LED they use will drop 1.9V at 15mA.
c) The total voltage should be 3V, thus the resistor needs to drop 3-0.5-1.9=0.6V. This means R=V/I=0.6/0.015=40 Ohm
In the case of sourcing 15mA:
a) According to Fig.9, P1.7 will provide 2.4V (at Vcc=3V, Ta=85C)
b) According to the other article you sited, the LED will drop 1.9V at 15mA
c) Thus the resistor needs to drop 2.4-1.9=0.5V. This means R=V/I=0.5/0.015=33 Ohm
In reply to old_cow_yellow:
Exactly what I needed, thank you!
My only remaining question is do you know how much total current I can source or sink from all of the pins simultaneously? I've looked everywhere for that info and I can't find it in the documentation.
In reply to Andre Vazquez:
Andre Vazquezhow much total current I can source or sink from all of the pins simultaneously?
In reply to Istvan Cserny:
That makes sense. This might seem kind of silly, but what would happen if I sourced current from some pins, and sunk current into others? Could I theoretically negate that voltage drop and circumvent the limit if the net total current is near 0? I'm sure there's some hardware maximum the pins and micro controller are able to withstand.
Andre VazquezCould I theoretically negate that voltage drop and circumvent the limit if the net total current is near 0
Well there is no free lunch. You could in theory safely source 48mA and Sink 48mA but the result would not be 0 mA.
Besides the fact that the voltage drop increase will increase with increasing current (the dependance is not linear, there's a poitn where a minimum current increase will result in a huge voltage drop), there's another limiting factor: power dissipation.Dissipated power is current * voltage drop. (and this is independent of sink or source)
If you have 0.3V drop on 6mA per pin and draw 6mA from 8 pins, this is 16mW power. Not too much. However, if current rises, voltage drop also rises (and much faster) and the total power on the por tpins will eventually exceed the total chip maximum power dissipation (resulting in a chip temperature above limit).On 15mA per pin (and guessed voltage drop of ~1V), you're at almost 120mW.
Even worse, the heating is applied at a small, concentrated area of the die (where this ports drivers are) and the total junction temperature at this point might be exceeded even if the total chip temperature is still in teh allowed range. This will melt the port pin drivers.
The MSP is very hard to kill, but if you overload its pins for a longer time, it will eventually die.
Time to say goodbye - I don't have the time anymore to read and answer forum posts. After falling behind by two months (900 threads), there's no point in continuing. See my bio for details.Before posting bug reports or ask for help, do at least quick scan over this article. It applies to any kind of problem reporting. On any forum. And/or look here.If you cannot discuss your problem in the public, feel free to start a private conversation: click on my name and then 'start conversation'. But please do so only if you really cannot do it in a public thread, as I usually read all threads. And I prefer to answer where others can profit from it (or contribute to it) too.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.