Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.221.165.246] |
|
Страницы: (3) [1] 2 3 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Как на С++ Можно организовать работу с СОМ портом который находиться на задней панели компа,
Задача отправить сигнал и проверить дошел ли он туда физически.... Например при помощи светодиода..... У меня просьба если на форуме есть програмисты которые работали с програмированием железа и аппаратной части То отзовитесь пожалуйста на aster_x@inbox.ru мне ваша помощь очень нужна. |
Сообщ.
#2
,
|
|
|
Посмотри здесь
http://www.sources.ru/cpp/cpp_cserialport.shtml |
Сообщ.
#3
,
|
|
|
А еще какие нибудь предпосылки...
|
Сообщ.
#4
,
|
|
|
CreateFile("COM1",...)
|
Сообщ.
#5
,
|
|
|
Antber а ЧТО ДАЛЬШЕ?
|
Сообщ.
#6
,
|
|
|
Цитата aster_x @ А дальше берешь нажимаешь ссылку Поиск и находишь кучу ссылок; тоже самое можно сделать в любом поисковике. Про работу с последовательным портом столько написано, что еще 5 лет назад тот же Рамблер выдавал под сотню ссылок. ЧТО ДАЛЬШЕ? |
Сообщ.
#7
,
|
|
|
Цитата Adil @ тот же Рамблер выдавал под сотню ссылок И по поводу Например при помощи светодиода..... Тоже. |
Сообщ.
#8
,
|
|
|
Писал софтец для управления достаточно круной железякой через COM-поры, если надо могу часть исходников по работе с портами выложить, все на VC++ 6.0
|
Сообщ.
#9
,
|
|
|
CSerialport - проще некуда!!!
к COM-порту подцеплял контроллер Atmel через max232(с соответствующей обвязкой работает изумительно). а с помощью светика проверить только при постоянной передачи данных, заципившись на RTS или DTS или TX (вроде так это называется), но там 12 вольт и напряжение не постоянно. диод с резичтором ~800 Ом на какой либо из этих выводов и на землю. потом создаешь класс итд. распиновку COM-порта и схему подключения можно посмотреть на http://gaw.ru (поиск посайту:rs232) распиновка http://www.gaw.ru/html.cgi/txt/interface/rs232/index.htm |
Сообщ.
#10
,
|
|
|
Вооше есть класный сайт [URL=http://rs232.ru]rs232.ru[/URL
Прочитал инфу и пользуюсь ей с успехом.Чтоб при помощи светодиода проверить дошёл ли туда сигнал необходима микроса max232, а ей на ногу(по сигналу TX) вешаешь светодиод-это первый вариант если действительно нужна индикация через светодиод.Ну а дальше WriteFile("COM на задней панели" ,...)Но можно и проще--- memset(&ovr,0,sizeof(ovr)); ovr.hEvent=CreateEvent(NULL,TRUE,TRUE,NULL); SetCommMask(port,EV_TXCHAR); WaitCommEvent(port,&mask,NULL);-> эта строка ждёт события на линии которую устоновишь в строке выше.В этой строке вся прога стопорится до тех пор пока не будет желанного TX.Поэтому её нужно сделать в отдельном потоке, а с основного потока послать байт. MessageBox("TX"); Если надо больше задавай вопросы. |
Сообщ.
#11
,
|
|
|
Цитата denim_sake @ Вооше есть класный сайт [URL=http://rs232.ru]rs232.ru[/URL Прочитал инфу и пользуюсь ей с успехом.Чтоб при помощи светодиода проверить дошёл ли туда сигнал необходима микроса max232, а ей на ногу(по сигналу TX) вешаешь светодиод-это первый вариант если действительно нужна индикация через светодиод.Ну а дальше WriteFile("COM на задней панели" ,...)Но можно и проще--- memset(&ovr,0,sizeof(ovr)); ovr.hEvent=CreateEvent(NULL,TRUE,TRUE,NULL); SetCommMask(port,EV_TXCHAR); WaitCommEvent(port,&mask,NULL);-> эта строка ждёт события на линии которую устоновишь в строке выше.В этой строке вся прога стопорится до тех пор пока не будет желанного TX.Поэтому её нужно сделать в отдельном потоке, а с основного потока послать байт. MessageBox("TX"); Если надо больше задавай вопросы. max232 - преобразователь интерфейсов (из 12 вольт в 5 вольт и обратно) Зачем её ставить для светика??? она нужна для 5 вольтового UARTa на микроконтроллерах Atmel, pic итд. тогда уж напрямую на TxD COM-порта через сопротивление ~1000 Ом и на землю... и все тоже получится... |
Сообщ.
#12
,
|
|
|
Цитата aster_x @ Например при помощи светодиода..... Тоже. И поэтому поводу - тоже. Просто MSDN почитать (даже и поисковик не нужен) повнимательней и обнаружить функцию EscapeCommFunction, с помощью которой можно чудесным образом напрямую управлять выводами DTR и RTS. |
Сообщ.
#13
,
|
|
|
Цитата Adil @ И поэтому поводу - тоже. Просто MSDN почитать (даже и поисковик не нужен) повнимательней и обнаружить функцию EscapeCommFunction, с помощью которой можно чедесным образом напрямую управлять выводами DTR и RTS. тоже верно, но это выводы не для передачи данных, а вроде для тактования... как правило с них получаю постоянное напряжение путем установки детектора(последовательно диод, параллельно конденсатор) и стабилизатора (например КР148ЕН8). ну а после светодиод и резистор на 300 ом... только COM-порт по току много не вывезет...( |
Сообщ.
#14
,
|
|
|
.........max232 - преобразователь интерфейсов (из 12 вольт в 5 вольт и обратно)
.........Зачем её ставить для светика??? А ставить её надо на всякий случай, ток Com порта невилик, и в моеё практике 3 сгоревших ком порта ).Может и действительно для светодиода не надо, но я так привык. |
Сообщ.
#15
,
|
|
|
Достаточно только светодиода и резистора.
|