Jump to content

This N°9

Programmer
  • Posts

    331
  • Joined

  • Last visited

About This N°9

  • Birthday 09/09/1981

Contact Methods

  • Website URL
    http://mm-computing.ch

Profile Information

  • Gender
    Male
  • Location
    Bern / Switzerland

This N°9's Achievements

MIDIbox Tweaker

MIDIbox Tweaker (3/4)

0

Reputation

  1. I can't login to the forum the normal way, I always have to use the "frogot password function.." When I try to log in with the new reset password, it doesn't work. Somebody else has this issue?
  2. http://svnmios.midibox.org/listing.php?repname=svn.mios&path=%2Ftrunk%2Fmodules%2Fblm%2F I never used it, and it's for duo, not RGB LED's, and written in asm. From your code I guess your are not targeting mios32. There are two BLM-modules for mios32: http://svnmios.midibox.org/listing.php?repname=svn.mios32&path=%2Ftrunk%2Fmodules%2Fblm%2F http://svnmios.midibox.org/listing.php?repname=svn.mios32&path=%2Ftrunk%2Fmodules%2Fblm_x%2F Maybe you could find some inspiration there, or port parts of the code for your application.
  3. hi protofuse, is there a special reason why you don't use an existing blm-module for your application? I did not study your code / postings in deep, just flew over it.
  4. I updated fairchild about the condradicting answers, and provided a link to this forum thread ca. a week ago. Now they marked the request as "solved" without further comments, so do I. You can read all the answers, numbers, test results in this thead. Make yourself a picture and decide yourself. My personal opinion: it is possible to drive 8 LED's at max. 20mA each with one 74HC595, without damaging the IC, but I won't recommend to go beyond 20mA * 8. The advantages of using additional drivers are: less power consumption (less heat dissipation), more stable current supply (without: current drift max. 4.5% @ 8*20mA).
  5. I did some more test to have a clear answer to this: 74HCH9H, 220R at each output: - one pin through 220R to ground: Isingle = 19.9mA - all eight pin's to ground, single pin current I = 19mA --> Itotal = 152mA Max. current drift @ ca. 20mA (max) each output: 4.5% This is acceptable, you will hardly see a visible change when switching on 1 or 8 LED's. I also measured the voltage drops: - one pin through 220R to ground : Udropsingle = 0.6V - all pin's through 220R to ground : Udroptotal = 0.61V With those numbers I could calculate: - The total power dissipation when all pin's are sourcing ca. 19mA: Ptot = Udroptotal * Itotal = 92.7mW - Assuming a simplified model of the current flow through a common resistor, and the single drivers (simplified to constant resistors in parallel), I could calculate the common resistance, through which all the current of all drivers has to flow, and the resistance of the single driver (only @ ca. 19-20mA each output!): Vcc---Rcommon----Rdriver---- Out 1 ¦ ¦ -- Rdriver---- Out 2 ¦ .. .. Isingle = 19.9mA (current for a single pin sourcing) Itotal = 152mA (current for all pins sourcing) Udropsingle = 0.6V (Vdrop from Vcc to a single output sourcing) Udroptotal = 0.61V (Vdrop from Vcc to outputs when all pin's are sourcing) Rsingle = Udropsingle / Isingle = 30.15R Rtotal = Udroptotal / Itotal = 4.013R Rsingle = Rcommon + Rdriver -----> Rcommon = Rsingle - Rdriver Rtotal = Rcommon + Rdriver / 8 ---> Rcommon = Rtotal - Rdriver / 8 Rsingle - Rdriver = Rtotal - Rdriver / 8 7/8 * Rdriver = Rsingle - Rtotal Rdriver = ( Rsingle - Rtotal ) * 8/7 = (30.15R - 4.013R) * 8/7 = 29.8..R Rcommon = Rsingle - Rdriver = 30.15R - 29.8..R = 0.35R Power dissipation at the common resistor (Vcc-pin, bond-wire, and the common way on the silicon to the supplies of the single drivers) if all pins sourcing: Udropcommon = Udroptotal * (Rcommon / Rtotal) = 0.053..V Pcommon = Udropcommonres * Itotal = 0.053V * 152mA = 8.09..mW Power dissipation of a single driver (all outputs sourcing 19mA each): Pdriver = (Ptot - Pcommon) / 8 = ( 92.7mW - 8.09..mW ) / 8 = 10.57mW
  6. That's exactly my point of view too. In my tests, where I sourced 33mA from each output (which is not necessary in LED applications, as a LED should not be driven beyond 20mA, regardless of colour), I measured a voltage drop of 1.46V from Vcc to output pins. Of course this violates logic level specs, but LED's don't care about logic levels. 1.46V * 264mA -> power dissipation 385.44 mW (uppper limit is specified beyond 600/750mW, depends on manufacturer), so I guess the chip will not be damaged under those conditions. Note that I never planed to sink that much current directly through 74HC595. With a current of 12mA each LED (this is a fact when driving LED's with 74HC595 & 220R resistors), you would have a sink current of 96mA. This is simply not possible, the datasheets specify a sink limit for a sinlge pin of 20mA. Even when grounding a high pin, you will have only a current of 68mA. I guess this will be aboout the same for sink current, I never tested this, because it's not interesting for my application. For sinking, I use the ULN2803, they are cheap and I just need one even for a huge matrix. The driver chips I found are more expensive, and complicate the whole design, and I would need several chips for a matrix. So I would like to use the 74HC595's directly just for sourcing. This is not totally correct. My exact question was, if it is possible to source 20mA each output simultaniously without damaging the device. My original question to fairchild: The whole discussion thread can be found here: https://fairchildsemi.custhelp.com/cgi-bin/fairchildsemi.cfg/php/enduser/myq_idp.php?p_sid=l7MUBgxj&p_accessibility=0&p_redirect=&p_lva=&p_sp=&p_li=&p_iid=77963&p_created=1241624385&p_allorg=1 Yes, true. My only concern is, if 20mA each output simultanously will damage the device. Of course it's an abuse of the original usage aim of the chip, but if it works and does not damage the IC, I don't care :) To make more clear what my aim is: if it's possible to source 20mA per output (simultanously), and .. - ..this way of driving the LED's will not affect brightnes if one/several LED's are on (which seems to be not a problem, as I alredy drive the LED matrix like this).. - ..will not damage the chip.. - ..will not make the input logic (registers / latches) unreliable.. ..this would be the most easy/cheap way to drive the matrix. In either case (special source drivers or not), I'll use the ULN2803 for sinking.
  7. I got the answers from ST,ON and fairchild: ST: fairchild: ON:
  8. I am currently torturing our little friend 74HC595 a bit more, to let it talk about it's current drive capabilities, as I have still no answers from tech supports at fairchild, ST micro and ON providing contradicting information: condition: total output current = 270mA (33.75mA each output) after ca. 10min: temperature: 41° C (surrounding air ca. 21° C) voltage drop Vcc->output terminals: 1.46V this results is a power dissipation of 394mW, well below 500mW (consolidated max. rating different manufactueres)
  9. I started a new discussion on sparkfun's forum. I think "max. power dissipation" could be the magic word(s): http://forum.sparkfun.com/viewtopic.php?p=72352#72352 basicly, if you multiply the voltage drop from Vcc to the drivers, at a given output-current each driver, with the total current Vcc-> drivers, you get ca. the power dissipation, as the input's and logic do not need a lot of current. At 20mA each output, I measured a V-drop of ca. 0.75V -> 120mW Pd, upper limit is 500/600/750 in plastic DIP, depending on manufacturer. 1° C / 10mW is the temperature derating, the device got 36° C @ 8x20mA. makes sense at a room temperature of 20-25°C. As the out-driver's resistance is no constant and will raise at raising current, 35mA source current per output makes sense in the context of max Pd. EDIT: in other words, if the IC does not overheat, I see no reason why it should get damaged
  10. Are you sure? I beleive there are common specifications for 74HC logic family types. My assumtions is that ON and other manufacturer just missed the "per pin / logic unit" information in their specs. Besides my tests don't include fairchild devices, and the results look more like the answer from fairchild would make more sense. When 70mA is really the limit for the whole device, there must be a bottleneck somewhere, this can only be the bond wire or a common Vcc / GND line on the silicon. This would show either in a current cutof @ 5V when you reach some current value, or the device would get very hot. Both is not the case, even if I drive *a lot* more current than 20x8 mA (see test results in my first posting). These are all speculations so far, I fed this info back to ON, and hope their answer will clear the issue. I will also ask fairchild if their per-pin spec just covers their own devices. I think this is safer than rely on speculations.
  11. Funny, fairchild semi gives a different answer (the one I wanted :D ): I beleive each register unit will have it's own bond wire to the Vcc/GND terminal, so the only part that has to take the total current is the pin / terminal itself. So, happy news, it's possible to source/sink the full current rated for one pin (25mA sink, 35mA source).
  12. Sorry that I may fall on your nerves by beeing so sticky to this.. but if a current > 70mA would really be a condition that could damage the 74HC595, then the standard MIDIbox solution for driving LED's would be in serious troubles. I really don't beleive that this is the case, as somebody until now would have noticed this, and my 74HC595 experiments go far beyond the 12, even far beyond 20mA per pin, and the device is still alive. Ok, I did not test for hours or days, but even at 200mA supply current, which is a case that will never be used to drive LED's or additional logic devices, the 74HC595 did not get warmer than 53° C after ca. 10min. I assume that the maximum rating is to ensure a proper logic-1 level of 5V at the outputs, that's not relevant when driving LED's. At 20mA at 7 outputs, the voltage of the 8th output drops to 4.86V (Vcc=4.93V), maybe this could cause instable contitions for some logic families (bad slew rates etcetc.). The device does not overheat or something, and I don't thing that the bond wire will melt under those conditions, and the current specs of the single outputs will not be violated, so what? Because I'am very stubborn, I also contacted fairchild semicondutor's support. They have a very nice knowledge base & asking-questions site (not this we-want-to-sell-but-we-don't exist-thing), where you can get a member and ask questions. I'am waiting for the answer from there now. Besides, some people in the arduino community also use exactly the same approach (74HC595 + 220R) to drive LED's : http://www.arduino.cc/en/Tutorial/ShiftOut (But you have alway to be careful with those DIY punks.. :) )
  13. seppoman, it must have been the crack + coffe.. set a dout-pin to high, take a scope, connect it to the pin, watch your scope and turn the time/div button from 1uS up to 1mS, you will always see a straight horizontal line (don't shake your head while doing it). Why should there be a duty cycle? The 74HC595 have latches, which hold the logic 1 until the data is shifted from the core to the registers. Latch enable will transfer the content of the registers to the latches, there's no time when the pin will be low. Of course, if you have a multiplexed solution, there you have the duty cycle, but normally if you just want to connect some, say 16, LED's, you will do no multiplexing. So you will have a constant current from each output to the LED of 12mA (aproved by measuring it with 220R at outputs). 12x8 = 96, this is quite more than 70mA -> violation of the maximum ratings (if the technical assisten of ON tells the truth, assumed he has a clue and not just reads the datasheet too).
  14. Duty cycle with standard DOUT's (no multiplexing)??? 12mA is exactly the current that I measures flowing through a LED connected to DOUT with 220R. If there would be a duty cycle, I would measure a lower value with a normal multimeter. And if you look at the tests I did, you see that the 74HC595 will not cut off at total current > 70mA. I scope will show the truth this evening.. Is it possible that the 70mA limit is only to guarantee a proper logic 1 level, and not to prevent the chip from damage? I wonder because:
×
×
  • Create New...