2

I have a 4KHz 5V pulsed signal connected to Arduino UNO pin2 (ISR).

  • When the board is powered, the pulse is attached to ISR rising edge, and is working as intended.

  • I don't know the output impedance of the pulsed signal, but when the board is not powered, the pulse drops to 2V.

  • The resistance between pin2 and ground is about 500K when not powered. The resistance is infinite when powered.

  • The pulsed signal does NOT drop when connected to a 500K resistor.

Question:

  • What is the cause of the signal drop?
  • How to prevent it ? (It's not practical to disconnected the signal from Arduino, but I can make sure Arduino is always powered. How to deal with transient situations like reset ?)

Thanks in advance !

1
  • you prevent it by not sending a signal into an unpowered arduino ... you should not be doing that in the first place because you can blow out the input protection diodes
    – jsotola
    Oct 22 '20 at 17:45
3

The Atmega328p (which is used in the Un[ (and actually all other AVR microcontrollers) has clamping diodes in the input hardware to protect it from overvoltage (above Vcc). When not powered, Vcc is at the same level as ground, so any positive voltage on an input pin is above Vcc. The protection diodes get conductive to protect the input hardware. Note, that the diodes can be fried easily, if a too high current flows through them. You should prevent that.

How to prevent it? By not doing it. You should never provide a voltage on an input of an unpowered chip (like any chip). If you really need to unpower the Arduino, you can prevent the voltage from reaching the input pin with a MOSFET.

3
  • I can make sure Arduino is always powered, but Arduino will briefly reset when programming or initiating serial com.
    – 7E10FC9A
    Oct 22 '20 at 18:06
  • 1
    @7E10FC9A reset is not unpowered
    – jsotola
    Oct 22 '20 at 18:17
  • Adding a resistor (for example 10kΩ) between the signal and the Arduino pin is a reasonable compromise.
    – Gerben
    Oct 22 '20 at 19:08
0

I do that all the time but I also read the data sheet. There is a limit on the amount of current you can inject into a processor pin or in total, that is on the data sheet. Also be aware when you inject current you can cause VCC to go out of specification unless it has enough load to support it. Typically I limit my input current to less than 1mA with a resistor. This also protects me in case I get a negative excursion. For a 5V system that resistor is 5K or greater, with 10K being very common. The input resistance reading is only good to check if the pin is shorted. It is connected to an active junction of a FET and a few Diodes. The voltage and or polarity of your ohm meter will definitely affect the reading. The resistance that may be there is due to chip resistance, bonding wire resistance etc. all low in value.

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.