Digital I/O threshold voltages for ATmega32u4
What are the voltages on a ATmega32u4 (eg Arduino Leonardo) such that a HIGH or LOW is read?
I want to ensure that I'm reading the chip reference manual correctly, where Table 29-1 says:
VIL: Input Low Voltage, Except XTAL1 and Reset pin
- Min: -0.5
- Max: 0.2VCC-0.1V (LVTTL)
VIH: Input High Voltage, Except XTAL1 and RESET pins
- Min: 0.2VCC+0.9V (LVTTL)
- Max: VCC + 0.5V
My questions:
- What is LVTTL?
- How do I interpret the VIL Max and VIH Min?
- Is the input undefined between those two values?
voltage-level digital atmega32u4 voltage digital-in
add a comment |
What are the voltages on a ATmega32u4 (eg Arduino Leonardo) such that a HIGH or LOW is read?
I want to ensure that I'm reading the chip reference manual correctly, where Table 29-1 says:
VIL: Input Low Voltage, Except XTAL1 and Reset pin
- Min: -0.5
- Max: 0.2VCC-0.1V (LVTTL)
VIH: Input High Voltage, Except XTAL1 and RESET pins
- Min: 0.2VCC+0.9V (LVTTL)
- Max: VCC + 0.5V
My questions:
- What is LVTTL?
- How do I interpret the VIL Max and VIH Min?
- Is the input undefined between those two values?
voltage-level digital atmega32u4 voltage digital-in
add a comment |
What are the voltages on a ATmega32u4 (eg Arduino Leonardo) such that a HIGH or LOW is read?
I want to ensure that I'm reading the chip reference manual correctly, where Table 29-1 says:
VIL: Input Low Voltage, Except XTAL1 and Reset pin
- Min: -0.5
- Max: 0.2VCC-0.1V (LVTTL)
VIH: Input High Voltage, Except XTAL1 and RESET pins
- Min: 0.2VCC+0.9V (LVTTL)
- Max: VCC + 0.5V
My questions:
- What is LVTTL?
- How do I interpret the VIL Max and VIH Min?
- Is the input undefined between those two values?
voltage-level digital atmega32u4 voltage digital-in
What are the voltages on a ATmega32u4 (eg Arduino Leonardo) such that a HIGH or LOW is read?
I want to ensure that I'm reading the chip reference manual correctly, where Table 29-1 says:
VIL: Input Low Voltage, Except XTAL1 and Reset pin
- Min: -0.5
- Max: 0.2VCC-0.1V (LVTTL)
VIH: Input High Voltage, Except XTAL1 and RESET pins
- Min: 0.2VCC+0.9V (LVTTL)
- Max: VCC + 0.5V
My questions:
- What is LVTTL?
- How do I interpret the VIL Max and VIH Min?
- Is the input undefined between those two values?
voltage-level digital atmega32u4 voltage digital-in
voltage-level digital atmega32u4 voltage digital-in
asked Feb 10 at 4:24
Tom HaleTom Hale
14311
14311
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
- LVTTL is Low Voltage Transistor-Transistor Logic. In general, the
term "TTL" is used for a digital signal.
The "Low Voltage" part is special,
the ATmega32U4 switches from low to high (and vice versa)
at low voltages. - Just as it is written. For example, when the ATmega32U4 runs at 5V,
then:
VILmax = 0.2 * 5 - 0.1 = 0.9 V.
VIHmin = 0.2 * 5 + 0.9 = 1.9 V. - Between those values the input signal is seen as low or high,
but the exact voltage when it switches from low to high may
vary.
When the microcontroller is running at 5.0 V and is used
within the specifications of the datasheet, then a voltage
below 0.9 V is always seen as low and
a voltage above 1.9 V is always seen as high (guaranteed).
Those voltages is what a electronics designer must consider.
In the datasheet of the ATmega32U4 at page 403 is paragraph 30.7 "Pin Threshold and Hysteresis" with figure 30-22 and 30-23.
The figures show that at 25°C and 5V, the input switches from low to high typical at 1.55 V and it switched from high to low at maybe a slightly lower voltage.
The hysteresis is almost none and the voltage depends on VCC and the temperature.

(Thanks to Edgar Bonet for the correction/addition)
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("schematics", function () {
StackExchange.schematics.init();
});
}, "cicuitlab");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "540"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2farduino.stackexchange.com%2fquestions%2f61447%2fdigital-i-o-threshold-voltages-for-atmega32u4%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
- LVTTL is Low Voltage Transistor-Transistor Logic. In general, the
term "TTL" is used for a digital signal.
The "Low Voltage" part is special,
the ATmega32U4 switches from low to high (and vice versa)
at low voltages. - Just as it is written. For example, when the ATmega32U4 runs at 5V,
then:
VILmax = 0.2 * 5 - 0.1 = 0.9 V.
VIHmin = 0.2 * 5 + 0.9 = 1.9 V. - Between those values the input signal is seen as low or high,
but the exact voltage when it switches from low to high may
vary.
When the microcontroller is running at 5.0 V and is used
within the specifications of the datasheet, then a voltage
below 0.9 V is always seen as low and
a voltage above 1.9 V is always seen as high (guaranteed).
Those voltages is what a electronics designer must consider.
In the datasheet of the ATmega32U4 at page 403 is paragraph 30.7 "Pin Threshold and Hysteresis" with figure 30-22 and 30-23.
The figures show that at 25°C and 5V, the input switches from low to high typical at 1.55 V and it switched from high to low at maybe a slightly lower voltage.
The hysteresis is almost none and the voltage depends on VCC and the temperature.

(Thanks to Edgar Bonet for the correction/addition)
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
add a comment |
- LVTTL is Low Voltage Transistor-Transistor Logic. In general, the
term "TTL" is used for a digital signal.
The "Low Voltage" part is special,
the ATmega32U4 switches from low to high (and vice versa)
at low voltages. - Just as it is written. For example, when the ATmega32U4 runs at 5V,
then:
VILmax = 0.2 * 5 - 0.1 = 0.9 V.
VIHmin = 0.2 * 5 + 0.9 = 1.9 V. - Between those values the input signal is seen as low or high,
but the exact voltage when it switches from low to high may
vary.
When the microcontroller is running at 5.0 V and is used
within the specifications of the datasheet, then a voltage
below 0.9 V is always seen as low and
a voltage above 1.9 V is always seen as high (guaranteed).
Those voltages is what a electronics designer must consider.
In the datasheet of the ATmega32U4 at page 403 is paragraph 30.7 "Pin Threshold and Hysteresis" with figure 30-22 and 30-23.
The figures show that at 25°C and 5V, the input switches from low to high typical at 1.55 V and it switched from high to low at maybe a slightly lower voltage.
The hysteresis is almost none and the voltage depends on VCC and the temperature.

(Thanks to Edgar Bonet for the correction/addition)
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
add a comment |
- LVTTL is Low Voltage Transistor-Transistor Logic. In general, the
term "TTL" is used for a digital signal.
The "Low Voltage" part is special,
the ATmega32U4 switches from low to high (and vice versa)
at low voltages. - Just as it is written. For example, when the ATmega32U4 runs at 5V,
then:
VILmax = 0.2 * 5 - 0.1 = 0.9 V.
VIHmin = 0.2 * 5 + 0.9 = 1.9 V. - Between those values the input signal is seen as low or high,
but the exact voltage when it switches from low to high may
vary.
When the microcontroller is running at 5.0 V and is used
within the specifications of the datasheet, then a voltage
below 0.9 V is always seen as low and
a voltage above 1.9 V is always seen as high (guaranteed).
Those voltages is what a electronics designer must consider.
In the datasheet of the ATmega32U4 at page 403 is paragraph 30.7 "Pin Threshold and Hysteresis" with figure 30-22 and 30-23.
The figures show that at 25°C and 5V, the input switches from low to high typical at 1.55 V and it switched from high to low at maybe a slightly lower voltage.
The hysteresis is almost none and the voltage depends on VCC and the temperature.

(Thanks to Edgar Bonet for the correction/addition)
- LVTTL is Low Voltage Transistor-Transistor Logic. In general, the
term "TTL" is used for a digital signal.
The "Low Voltage" part is special,
the ATmega32U4 switches from low to high (and vice versa)
at low voltages. - Just as it is written. For example, when the ATmega32U4 runs at 5V,
then:
VILmax = 0.2 * 5 - 0.1 = 0.9 V.
VIHmin = 0.2 * 5 + 0.9 = 1.9 V. - Between those values the input signal is seen as low or high,
but the exact voltage when it switches from low to high may
vary.
When the microcontroller is running at 5.0 V and is used
within the specifications of the datasheet, then a voltage
below 0.9 V is always seen as low and
a voltage above 1.9 V is always seen as high (guaranteed).
Those voltages is what a electronics designer must consider.
In the datasheet of the ATmega32U4 at page 403 is paragraph 30.7 "Pin Threshold and Hysteresis" with figure 30-22 and 30-23.
The figures show that at 25°C and 5V, the input switches from low to high typical at 1.55 V and it switched from high to low at maybe a slightly lower voltage.
The hysteresis is almost none and the voltage depends on VCC and the temperature.

(Thanks to Edgar Bonet for the correction/addition)
edited Feb 10 at 15:12
answered Feb 10 at 7:50
JotJot
2,7951618
2,7951618
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
add a comment |
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
Re “it switches from low to high at an average of 1.4 V”: the average threshold voltages are not specified. The datasheet, however, provides graphs with the typical thresholds as a function of temperature and Vcc. Both VIH and VIL are typically between 1.5 and 1.6 V at 25 °C and Vcc = 5 V.
– Edgar Bonet
Feb 10 at 11:47
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
@EdgarBonet, thanks! I found the graphs and I will add it to my answer.
– Jot
Feb 10 at 14:48
add a comment |
Thanks for contributing an answer to Arduino Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2farduino.stackexchange.com%2fquestions%2f61447%2fdigital-i-o-threshold-voltages-for-atmega32u4%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown