Пытаюсь использовать Nano Every в качестве USB-логического анализатора, но не могу изолировать его от "наблюдаемого устройства"
Вот сценарий: у меня есть радио, которое отображает информацию на ЖК-дисплее 1602A. 1602A подключен к заголовку, поэтому я могу легко вытащить его и вместо этого подключить провода логического анализатора. Логический анализатор декодирует протокол HD44780 и показывает мне данные, которые пошли бы на 1602A. Логический анализатор, что неудивительно, не оказывает заметного влияния на радио.
Теперь я хочу заменить логический анализатор на Nano Every. Я подключил его так, чтобы наблюдаемые сигналы были подключены к цифровым входным контактам на каждом. Каждый питается через USB и не намеренно извлекает энергию из радио. Все работает, как ожидалось, и каждый тасует показания на ПК через последовательный. ОДНАКО при такой комбинации радиоприемник потребляет по меньшей мере вдвое больше тока от источника питания, и регуляторы напряжения радиоприемника начинают существенно нагреваться!
Я бы подумал, что цифровые входные контакты каждого из них имеют достаточно высокий импеданс, чтобы это не оказало существенного влияния на радио, точно так же как логический анализатор этого не сделал. Я могу только предположить, что "значительный" ток течет из жидкокристаллического заголовка радио в входные контакты Nano Self, поскольку они являются единственным соединением между радио и Nano.
Итак, я думаю, мой вопрос таков: Как я могу заставить Nano Self работать больше как логический анализатор? Нужна ли мне дополнительная схема между тестируемыми сигналами и входными контактами "Я", возможно, логическими буферами? Или здесь происходит что-то еще?
@Bezewy, 👍1
Обсуждение1 ответ
@jsotola был правильным, и программное обеспечение неверно определило направления выводов. Похоже, я сломал один из выводов в процессе (мультиметр показывает непрерывность между выводом и землей), но когда я перемонтировал новый вывод на порту D и запустил исправленное программное обеспечение, все, кажется, работает так, как ожидалось!
- Секундомер Arduino, какую плату использовать?
- avrdude ser_open() can't set com-state
- Загрузка Arduino Nano дает ошибку: avrdude: stk500_recv(): programmer is not responding
- Какое максимальное энергопотребление Arduino Nano 3.0?
- Как навсегда изменить скорость передачи данных ESP8266 (12e)?
- Питание светодиодной ленты - Сколько ампер?
- Arduino nano как клавиатура HID
- Как запомнить значения переменных после перезагрузки платы Arduino Uno R3
в качестве выхода может быть установлен один из выводов ... определите, какие контакты вызывают проблему ... пожалуйста, оставьте свой код, если можете, @jsotola
Это мой первый раз, когда я работаю с регистрами портов, и у меня был "PORTD.DIRCLR = 11111111; // Установите весь порт на вход". Я думаю, что это должно было быть B00000000 вместо этого, правильно?, @Bezewy
11111111-десятичное число ... B1111111111 является двоичным .... вы можете сделать " DDRD = B00000000;", чтобы установить контакты регистра D в качестве входных данных, @jsotola
Извините, это была опечатка-код имел префикс B для двоичного литерала. Я не думаю, что DDRD даже определен для Arduino Nano Каждый или другой ATmega4809 на основе ардуино. Это могло бы быть так, если бы в разделе Инструменты в IDE был выбран пункт "эмуляция регистра", но вместо этого я решил использовать новые регистры портов.., @Bezewy