4,7 В как HIGH на цифровом выходе вместо 5 В
Я новичок в Arduino, только что получил стартовый комплект и заметил, что цифровые выходы 3 & 4 имеют 5 В как ВЫСОКИЙ уровень, а от 5 до 13 имеют 4,7 В как ВЫСОКИЙ уровень. Это так, как должно быть?
@d.a., 👍1
Обсуждение3 ответа
Да, это прекрасно.
Согласно техническому описанию, при напряжении 5 В минимальное ожидаемое напряжение на выходе HIGH (AKA VOH) составляет 4,2 В. 4,7 В больше, так что все в порядке.
Спасибо. Это было странно для меня, потому что 1 час назад он показывал мне 5v. И я не понимаю, что изменилось., @d.a.
Может батарейка в вашем счетчике села?, @Majenko
Также, если он установлен на «INPUT_PULLUP», он будет выглядеть ВЫСОКИМ, но, возможно, с более низким напряжением (в зависимости от импеданса вашего измерителя)., @Majenko
Также зависит от того, что вы используете через этот выход. Стандартный TTL:
Но CMOS будет немного отличаться:
Arduino подключен к USB-порту MacBook Pro. Я написал простой код для проверки уровня HIGH на цифровых выводах:
пустой цикл() {
цифровая запись (3, ВЫСОКИЙ);
цифровая запись (4, ВЫСОКИЙ);
цифровая запись (5, ВЫСОКИЙ);
цифровая запись (6, ВЫСОКИЙ);
цифровая запись (7, ВЫСОКИЙ);
цифровая запись (8, ВЫСОКИЙ);
цифровая запись (10, ВЫСОКИЙ);
цифровая запись (11, ВЫСОКИЙ);
цифровая запись (12, ВЫСОКИЙ);
цифровая запись (13, ВЫСОКИЙ);
}
, @d.a.
Эти пины выведены? @da Пожалуйста, измените свой вопрос, чтобы опубликовать весь код. Вы также можете прочитать о том, как сделать петлю., @Nick Gammon
@NickGammon как точка там. Вместо того, чтобы помещать это в loop(), это в setup() и делать те же показания, чтобы увидеть, есть ли у вас одинаковые напряжения., @Andre Courchesne
Я должен отметить, что после того, как я проверил, я заметил, что вы пропустили контакт 9 из своего списка. У цикла не было бы такой проблемы., @Nick Gammon
Некоторые из ответов здесь предполагают, что показание 4,7 В соответствует спецификации (что так и есть). Как говорит Маженко, 4,2 В — это минимальное выходное высокое напряжение при температуре окружающей среды 85°C, нагрузке 20 мА и Vcc = 5 В.
Однако без нагрузки и при комнатной температуре я измерил 4,99 В на всех этих контактах, когда были установлены значения OUTPUT
и HIGH
. на мой Uno. Тестовый код:
void setup()
{
for (int i = 3; i <= 13; i++)
pinMode (i, OUTPUT);
}
void loop()
{
for (int i = 3; i <= 13; i++)
digitalWrite (i, HIGH);
}
Это было странно для меня, потому что 1 час назад он показывал 5v.
Правильно. Что ты делал час назад? К этим контактам подключены светодиоды? Если да, то резистор какого номинала вы включили последовательно с ними? Или, может быть, вы управляли мотором от штифтов?
Спасибо всем за помощь, я забыл установить контакт 5 как ВЫХОД. Когда я это сделал, я получил 5v на нем., @d.a.
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Даташит говорит?, @Ignacio Vazquez-Abrams
Пожалуйста, добавьте свой код, чтобы мы могли убедиться, что здесь нет проблем., @sa_leinad