0
\$\begingroup\$

I'm using an Arduino due (3.3V) to drive some daisy-chained SPI DAC's (mcp4822). I use only three cables a MOSI, SCK, and CS (chip select). I'm using just one SPI channel and I select the active module with the CS signal.

The pins of Arduino are capable to deliver "3 mA or 15 mA, depending on the pin, or receive (sink) a current of 6 mA or 9 mA, depending on the pin". Maximum current consumption for all pins connected to the micro-controller 150mA.

The MCP4822 "absolute maximum rating" Current at Input Pins ±2mA Current at Supply Pins ±50mA Current at Output Pins ±25mA

Input-current: 415 (typical) 750 (maximum) μA

So my question is when daisy chaining modules does the current draw raises and if I connect around 6 modules will it damage the pins (I mean the MOSI and the SCK pins )?

Are the SPI pins of Arduino Due connected directly to the microprocessor, or is it a peripheral?

If that is the case should I use a resistor to limit the current?

And one last: if 6 modules would work ok, can I expect the same when connecting 15 or 30 modules (I mean in this fashion i.e. a MOSI and SCK that is connected serially to all modules and only different CS connections to each one).

\$\endgroup\$
  • \$\begingroup\$ Why did you delete your temperature measurement LM335 question (electronics.stackexchange.com/questions/310436/…). I was in the process of giving a lengthy answer explaining how to get better resolution and why this can sometimes be useful. Maybe you should undelete but you certainly should never choose to delete something without giving a decent length of time (at least an hour). \$\endgroup\$ – Andy aka Jun 12 '17 at 9:35
2
\$\begingroup\$

Only SCLK and CS are connected to more than one chip when you are daisy chaining. But they can be buffered as long as the timing constraints allow this.

Typically an input pin does not leak a lot of current. However, you have to be able to drive the capacitance of the line and all the pins.

The relevant numbers for your circuit are:
- Digital Pin Capacitance: 10pf.
- Input leakage current: 1 uA.
- Pull down resistor to pull the signals to a known state in reset.

The absolute maximum ratings only apply when you don't convert the voltage levels properly and are putting a higher (or lower) voltage on the pins than the Vcc (or gnd).

Be cautious not to drive the lines too quickly (slew rate too fast) because that will cause reflections and emissions. Eg: don't buy 1 GHz buffers for a 20 MHz SPI CLK line.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.