Список вопросов
Как зайти в Даркнет?!
25th January, 01:11
5
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
893
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
912
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4380
0
Помогите пожалуйста решить задачи
24th November, 23:53
6084
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4395
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
.Net работа с Com-портом?
Просмотров: 404
 
Ответов: 3
Можете подсказать кусок кода на .Net для поднятия напряжения на любом пине Com-порта(RS232) на отрезок времени в 10сек? Большое спасибо.
мои пять копеек:
для работы с ком-портом в .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 ;)
вот примерно как-то так.
программно и +5V ровно — никак. у него напряжение меняется от +5..+15 для «0» и -5..-15 для «1». т.ч. поймаете вы там скорее всего что-то в районе (±)7..8V
посмотрите схемы в сети(google: rs232 5v), которые дадут вам ровные 5v, а потом уже ищите софтовое решение как на пин давать постоянно 1. (правда, емнип, вы все равно получите «пилу», т.к. в зависимости от частоты будут еще падения до «логинчекое непонятно» (+3v)). в общем без дополнительной схемы ну никак
там можно управлять только 2-3 пинами, и это нестандартный режим порта, его поддерживают только встроенные порты (сейчас уже вроде бы даже не все). имхо лучше взять самую дешёвую тиню или пик, стоит она как кабель ком-ком, и сделать на ней всё без изврата. в нормальном режиме работать с ком портом не сложнее чем с файлом, разве что нужно будет настроить таймауты и конфигурацию
Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться