>Most PICs are rated to being able to source up to 20mA >and to sink up to 25mA at any pin. My understanding of the data sheets is that this would apply to any pin that is not a supply pin, i.e. this is the maximum current you could put through the protection diode. >Now, keeping into the safe side, say that I want to >source 15mA from ALL output pins of a 16F84. >Having up to 13 outputs, this would mean a total of >nearly 200mA out of the chip. The limitation here is what voltage drop you can stand across the output transistor in the PIC. If you are driving an LED for example, you can compensate for the transistor drop by reducing the value of the series resistor. The only problem you then have is the thermal dissipation in the transistor inside the PIC. With just one or two turned on, there is probably no problem. If the possibility exists to have many turned on, then you will need to look at any curves that may exist for the chosen chip, and calculate the total power dissipation you could have, and relate that to the maximum for the chip. You then get into a loop of checking if this could be a steady state situation, and what the operational ambient temperature may be, or is it going to be a dynamic situation e.g. operating a security door lock for say 5 seconds, in which case the temperature rise may not be a problem (but you would be wise to check). For the number of "high" current drives you want, it would probably be wise to have an external driver chip such as a ULN2000 series chip (the one I know best is ULN2007), but they do come in other flavours). each chip has several drivers capable of high currents, with protection diodes for inductive spike suppression.