Как исправить проблемы с UART-вводом на Orange Pi 5 при использовании U-Boot?

Устройство: Orange Pi 5. <br/> U-Boot установлен в SPI-память. Я подключил устройство к ноутбуку через UART с использованием переходника CH340G, на скорости 1500000 бод. Подключения следующие: gnd-gnd, tx-rx, rx-tx. <br/> В результате, при подключении более мощного питания, вывод в терминал работает, но ввод не функционирует совсем. При использовании менее мощного питания вывод также работает, а ввод частично: появляется сообщение «нажмите на любую клавишу, чтобы прервать автозагрузку», я нажал Enter, и всё сработало, однако последующие попытки ввода приводят к появлению знаков вопроса (�), к отсутствию ввода или к стиранию текста. <br/> <br/> С установкой EDK2-RK3588 (UEFI) ввод и вывод работали корректно при любом уровне питания, также на скорости 1500000 бод и с тем же адаптером. <br/> <br/> Я хотел бы установить именно U-Boot. Подскажите, пожалуйста, как можно исправить проблему с вводом в U-Boot? Версия v2025.04-rc4 <br/> <br/> Ссылка на файл с логами U-Boot: dropmefiles.com/qm4R2
  • 22 марта 2025 г. 10:04
Ответы на вопрос 1
Проблемы с UART-вводом на Orange Pi 5, особенно при использовании U-Boot, могут быть вызваны несколькими факторами. Давайте рассмотрим возможные причины и решения:

1. **Скорость передачи данных**: Убедитесь, что скорость передачи данных (baud rate) корректно установлена как на вашем UART-адаптере, так и в терминальном программном обеспечении на вашем ноутбуке. Попробуйте снизить скорость до 115200 или 9600 бод и проверьте, сохраняется ли проблема. Высокая скорость 1500000 бод может вызывать нестабильность, особенно на длинных или некачественных проводах.

2. **Качество соединений**: Проверьте физические соединения салфетками и переходниками. Длинные кабели или некачественные соединения могут вызывать помехи, что также может быть причиной плохого ввода.

3. **Настройки терминала**: Убедитесь, что в настройках вашего терминала корректно установлены параметры: 
   - 8 бит данных
   - 1 стоповый бит
   - Без четности
   - Протокол передачи: нет (Flow Control: None)

4. **Проблемы с питанием**: Поскольку вы упомянули, что с более мощным питанием вывод работает, а ввод нет, это может указывать на проблемы с питанием UART-адаптера или самой платы. Убедитесь, что питание достаточно стабильное и соответствующее для обоих устройств.

5. **Версия U-Boot**: Попробуйте обновить U-Boot до более стабильной версии, если такая доступна. Иногда баги в определенных версиях программного обеспечения могут вызывать подобные проблемы.

6. **Тестирование другого адаптера**: Если у вас есть доступ к другому USB-UART адаптеру, попробуйте использовать его. Некоторые адаптеры могут иметь проблемы совместимости с определенными устройствами.

7. **Логи и отладка**: Если ваша проблема продолжает сохраняться, исследуйте логи U-Boot для выявления возможных ошибок или предупреждений. Также можно попробовать включить более детализированное логирование (если это возможно в вашем варианте U-Boot).

8. **Использование других терминальных программ**: Попробуйте использовать разные программные терминалы (например, PuTTY, Tera Term или minicom) и посмотрите, сохраняется ли проблема. Иногда программное обеспечение может влиять на корректность ввода.

Если ни одно из этих решений не помогло, возможно, стоит обратиться за дополнительной помощью на форумы поддержки сообществ или производителя, предоставив подробности о вашем оборудовании и шагах, которые вы уже предприняли.
Похожие вопросы