Lavr wrote:Вот я тебе из дома не могу это сказать... Протеус 8.2 и хороший комп под него у меня на работе.
Ну, я собственно, не только и не столько про Протеус, сколько про потребность этого в эмуляторах. Вот ты упоминал спец. сборку эмулятора Шевцова - там какие порты?
lavr wrote:купил самый распространённый
переходник USB-COM для использования по прямому назначению, т.к. на ноуте только USB порты.
Ну и я думал, что он только протокол последовательного интерфейса реализует...
А оказалось можно дрыгать ногами, хотя и не так как раньше - записал байт в порт.
Повезло. Помнится, я как-то искал переходник на определенном чипсете для программирования одной конкретной железки, ибо работало только на нем и не работало на распространенных Prolific...
Вообще, идеально сделать вывод портов на физические можно было только под ДОС, в современных системах наслаивается сразу несколько уровней проблем:
1. Переходник USB-COM или USB-LPT может просто не поддерживать необходимые функции. Но, допустим, это не наш случай и у нас физический COM-порт.
2. Windows может вроде бы управлять данными и DTR/RTS, в LPT тоже 8 бит данных + еще что-то (нужно вспоминать и уточнять) но произвольное управление остальными ногами может быть недоступно.
3. Допустим, мы подключили к ПК какой-то свой контроллер, которые принимает от эмулятора команды, управляет ногами своего выхода и передает эмулятору состояние. Но эмуляция производится фреймами, так что очень часто обмениваться данными с этим контроллером тоже не получится.
4. Даже если мы организуем некий буфер (примерно как в звуковой карте), который будет выдавать на ноги последовательное состояние во времени в течение целого фрейма эмуляции, все равно останется лаг между записью и чтением.
В общем, если и делать поддержку физических портов в эмуляторе, то все равно где-то придется остановиться, стопроцентной поддержки, как было можно в ДОС, добиться не получится...
Поэтому и интересуюсь, для каких задач нужна работа с реальными портами в эмуляторе? Насколько нужно вообще произвольное "дрыгание" ногами и оперативное реагирование с интервалом менее ну, скажем, 20 мс?