Go Down

Topic: How to wire Logic Level Converter ? (Read 4837 times) previous topic - next topic


Aug 09, 2016, 10:58 pm Last Edit: Aug 10, 2016, 03:17 am by dlloyd
Yes, your right ... for some reason I thought conduction would begin at around Vcc +0.3V like with the Due. Nope. With 12.0V at Vin and using 10K I measured 5.54V at a digital input. This is only about 650µA through the internal protection. Wow, looks like 1mA might be pushing it!


Ask Atmel. I didn't write the document.
Hello again,

You sure?  I could have sworn i had seen at the end of the document, "I, Raschemmel, wrote this entire document".  :-)

Ok all kidding aside, i was just wondering why you told me to re-read the data sheet, that's all really.

But you've been very helpful with the information you did supply so far, so thanks for that.


I meant the circuit shows a 1 Mohm current limiting resistor and I believe it says that the resistor limits the current to 1 mA.
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter


The maximum current through an I/O pin's protection diode is specified in a bass ackwards way. Basically it can handle any current that doesn't cause the pin's voltage to exceed maximum ratings. Could be tested ... I suspect significantly higher than 1mA (2-3mA??) would still be fine.

See 4.9.1 General I/O Pin Protection here.

Yes but as i am sure you know it is a very poor way to specify the CURRENT from knowing the VOLTAGE, which is essentially the voltage across the diode itself.

For example, we can probably measure close to 3.6v with 100ua through the diode, or very close to that.  So say we measure 3.55v at 50ua.  Do we stop there or push it?  So say we measure 3.59v at 100ua, do we stop there or push it a little higher.  Or maybe it's 200ua, but at some point we have to call the voltage 3.600000v even though a meter is not perfect.  This could lead to several people measuring the same spec differently.
The real point being that a spec for the CURRENT should be a spec for the current, not for the indirect current via a voltage measurement.  It's a cop out on Atmel's part.
For the AVR line they do spec 1ma max in that data sheet however, which is quite low if you ask me for a pin that can source or sink 40ma.
If we look at the Microchip line we see a spec of 20ma on chips like the 12F675 for example.  THAT is a decent current level spec to work with.
1ma means that if we expect an over voltage on an analog pin of only 2v we need a 2k resistor in series with the pin.


Aug 10, 2016, 10:17 am Last Edit: Aug 10, 2016, 10:18 am by MrAl
But isn't the maximum pin voltage just one diode-drop away from the supply voltage? Thereby limiting the current to "none at all" or some complex calculation based on the exact I-V curve of these curiously-unspecified diodes?

That has been my gripe every since i started working with the ARM chip.  But i guess that mystery applies to the AVR series too then although it looks like they are sort of specifying it in that app note that quotes 1ma max for the AVR.  That's a poor way to specify it too, in an app note, when it should be right on the DATA SHEET.
How hard could it be to add it?
I think they are afraid to add it because then future designers can quickly see how poor the spec is to begin with :-)


What can I say ? ("use protection")
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter

Go Up