QEMU: связь USART между двумя микроконтроллерами (STM32)

Я пытаюсь создать два экземпляра qemu и позволить им общаться через usart. фон в том, что я хочу эмулировать общение, пока платы еще не закончены, но код уже можно протестировать.

Таким образом, создание двух параллельных экземпляров qemu не является проблемой, но связь между ними не происходит.

Как я думал, это может работать, это расширить командную строку ведущего устройства с помощью -serial pty для привязки USART1 STM32 к сокету pty и после этого привязать USART1 ведомого к тому же pty. Но очевидно, что это не работает.

Код, который я использую, уже протестирован с двумя платами разработки Olimex, поэтому должны быть проблемы с настройкой qemu.

Кто-нибудь пробовал что-то подобное или может предоставить другой способ установить эмулируемое соединение?


person Tojan    schedule 14.10.2016    source источник
comment
Мне также нужно общаться между двумя экземплярами qemu. Мне как бы не нужно ничего особенного, как то, что вы упомянули. Было бы неплохо, если бы в экземпляре qemu была открыта некоторая функциональность для записи наружу, на хост через именованный канал.   -  person Adam Miller    schedule 19.10.2016


Ответы (1)


Используйте полухостинг с каналами unix. Я реализовал этот подход, и он работает хорошо. Единственным недостатком является то, что в спецификации полухостинга нет способа настроить дескриптор файла как асинхронный, поэтому он всегда будет блокироваться при чтении.

person vaughan    schedule 04.11.2016