1

Given I have two Arduinos that are supposed to primitively communicate with each other using digital pins. On Arduino Ar1, pin D13 is to be used as an input, connected to Ar2's D2 pin.

Will I need to use the internal pullup resistor of Ar1 on pin 13, or is an outputted signal of LOW/HIGH already dragged to 0V/5V?

chicks
  • 223
  • 4
  • 10
Mikoyan
  • 33
  • 4
  • It's better to not think of the pullup resistor as part of the input (even though physically it is inside the chip) but instead think of it as part of the button circuitry. Thus if you're not using a button then the button circuitry doesn't exist, and that includes the pullup resistor. – Majenko Aug 25 '22 at 10:31

1 Answers1

1

If you set a pin to output mode in Arduino, it is "push-pull". This means, that any value, 0 or 1, is actively driven.

Therefore, you do not need a pull-up or pull-down resistor on the receiving input.


You need such a resistor, only if the driver does not drive the voltage actively. For example, this is the case with buttons or switches, which simply open and close a contact.

Some output modes exist like "open-drain" that only drive to GND at a value of 0, but do not drive the output pin at a value of 1. Such modes are not used if you call pinMode().

the busybee
  • 2,002
  • 7
  • 17