I have an Arduino Micro. For my project, I need to use many outputs, but I'm worried I may overshoot the maximum current output of 200mA and thus damage the Arduino Micro I'm using. I'm a noob in terms of Arduino, though know a fair deal about electronics in general.
The Arduino Micro I'm using is outputting as follows:
4 output pins connected to an L293D driver chip, with 2K2 Ohm Resistors - this is to drive a bipolar stepper motor.
3 output pins connected to 3 input pins of a PICAXE 28X2 microcontroller for interfacing easily.
3 output pins connected to 3 input pins of a GENIE E18 microcontroller, again for interfacing.
1 output pin connecting to a loudspeaker (using the full 40mA which is amplified using a Darlington BDW 93C transistor to roughly 200mA).
Just to clarify, the Arduino Micro is the main microcontroller, which does the "heavy lifting" processing, while the PICAXE and GENIE microcontrollers control subsystems of the circuit.
At any one time, these outputs could all be on, i.e. being used. I am conscious that having 11 outputs at once means that I could damage the microcontroller if I go past 200mA. However, the only way I am able to solve this is through limiting the current outputted - reducing the number of outputs used at a time is out of the question, to make things clear.
The input pins of the GENIE and PICAXE microcontrollers are high impedance, so I would like to limit the current to as little as possible, the inputs just need a 5V input when the output goes high. I would like as little current to flow to these pins, just enough for the 5V output to be registered by the input pins of the said microcontrollers.
I would prefer to only limit the current of the 6 outputs going to the microcontroller, though if not possible I could limit the current for the 4 pins going to the L293D (again, this is a last resort situation).
Is it possible to limit the output current through programming or through hardware?
P.S. Sorry about the length of this post - this is my first time posting a question on the forum and I wanted to make sure I gave enough detail about the project.