.Net работа с Com-портом?

Можете подсказать кусок кода на .Net для поднятия напряжения на любом пине Com-порта(RS232) на отрезок времени в 10сек? Большое спасибо.
  • Вопрос задан
  • 3132 просмотра
Решения вопроса 1
neco
@neco
инженерммм
мои пять копеек:
для работы с ком-портом в .net начиная с 2.0 есть замечательный неймспейс System.IO.Ports (ух как же я радовался когда он появился в 2.0 до этого приходилось извращаться)

как уже правильно написали — рабочее напряжение ком порта это +-12в. причем +12в это логический 0, а -12в это логическая 1. т.е. физически +5 у можно получить только используя внешнее железо:

вариант1: тут я рекомендую посмотреть в сторону микросхем max232 или аналог adm232 это стандартный преобразователь уровней, часто используемый электронщиками, производителями сотовых телефон да вообще много кем.

вариант2: собрать ЦАП из одного конденсатора и резистора и реализовывать ШИМ на какой либо ноге.

теперь по поводу чем можно управлять.
непосредственно управлять в ком-порте можно всего двумя сигналами это: DTR и RTS. в .net.system.io.ports они выставляются примерно таким кодом:

SerialPort sp1 = new SerialPort(«COM1»);
sp1.Open();
sp1.DtrEnable = false;
sp1.RtsEnable = true;

но если сильно извратиться и подумать головой, поиграться с настройками порта (такими как стоп-старт биты и четность) и постоянно посылая данные в порт можно добиться управления еще и ногой TX (особым извращением было делать ШИМ на ноге TX ;)

вот примерно как-то так.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
pietrovich
@pietrovich
программно и +5V ровно — никак. у него напряжение меняется от +5..+15 для «0» и -5..-15 для «1». т.ч. поймаете вы там скорее всего что-то в районе (±)7..8V
посмотрите схемы в сети(google: rs232 5v), которые дадут вам ровные 5v, а потом уже ищите софтовое решение как на пин давать постоянно 1. (правда, емнип, вы все равно получите «пилу», т.к. в зависимости от частоты будут еще падения до «логинчекое непонятно» (+3v)). в общем без дополнительной схемы ну никак
Ответ написан
Комментировать
@redsh
там можно управлять только 2-3 пинами, и это нестандартный режим порта, его поддерживают только встроенные порты (сейчас уже вроде бы даже не все). имхо лучше взять самую дешёвую тиню или пик, стоит она как кабель ком-ком, и сделать на ней всё без изврата. в нормальном режиме работать с ком портом не сложнее чем с файлом, разве что нужно будет настроить таймауты и конфигурацию
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы