powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / COM-порт из BC4.0 под Win'98
8 сообщений из 8, страница 1 из 1
COM-порт из BC4.0 под Win'98
    #32515570
pconst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа!
Не могу принять данные из COM-порта. Подозрение - что-то недопроинициализировал. Пишу в BC 4.0. Фрагмент кода:

// c = "COM1";
// int trb, err, rcb;
// COMSTAT comstat;

if((idComDev = OpenComm(c, 128, 128)) < 0)
MessageBox("Выбранный порт не может быть открыт",
"Ошибка", MB_OK | MB_ICONSTOP);
else
{
GetCommState(idComDev, &pstat);
............ // установка скорости, размера, паритета
SetCommState(&pstat);
trb = WriteComm(idComDev, array, ((int)array[0] & 0x0F) + 1);
err = GetCommError(idComDev, &comstat);
rcb = ReadComm(idComDev, array, sizeof(array));
CloseComm(idComDev);
................. // обработка принятой информации
} /* else */

RXD соединен с TXD, наличие перемычек RTS-CTS-DTR-DSR на результат не влияет. Очередь приема - пустая. Даже если UngetCommChar() затолкать туда байты, ReadComm() их все равно не читает.

PLS, подскажите!
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32515717
gardenman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятия не имею в чем у тебя дело, но расскажу как было у меня.
Мы разрабатывали POS-терминал на базе компа. Ну, кардридер, модем,
все через COM порты работает. Естественно Хотели сделать чтобы все работало под WinXX/DOS. Короче перелопатили всю MSDN вдоль и поперек.
Оказалось, что то, что написано в MSDN - хорошо работает для NT, а в 95/98 - сплошной облом. Результат - верси тока под DOS и NT.
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32515889
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
под 98 если хочется, могу посоветовать попробовать работать также как и под ДОС... муторно, но по мойму операционка подпустит к портам и гарантированно не будет работать под ядро NT.

для отладки могу порекомендовать соеденить COM1-COM2
на один порт повесить штатную прогу, на второй тестируемую и отлаживаться.

по поводу аппаратуры для самой простой работы с портом нужны только сигналы RxD, TxD и земля.

попроуй запустить сперва только с ними, а потом управляй остальными, если нужно. Да, могу предупредить, правда в win2000 драйвер кривой
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32516149
pconst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BC 4.0 не дает доступа к функциям inportb() - outportb() и bioscom() для приложений под Windows. Все предыдущие задачи подобного рода решались именно этим путем, но в прогах под DOS. Под Виндами они работают не шибко устойчиво, и гарантированный успех можно ожидать только в однозадачном режиме, что является прошлым веком.

С передачей проблем нет, ответное устройство реагирует правильно, и отвечать пытается. Приведенный фрагмент должен иллюстрировать принцип "что передал, то и получил", да не получается.

Попробовал тот же изврат в BC5.0. Результат тот же. Попробую еще сгенерить 32-х битное приложение - там функции работы с портом другие.

Вопрос не закрыт!
pconst
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32516604
ForMix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Воспользуйся библиотекой comapi32.dll
в инете есть
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32518976
Flex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, я что-то не пойму в чем трабл-то ?
Открыть порт? CreateFile : cинхронно без структры overlapped, асинхронно с ней. Чтение как файл, запись так же. Обработка очереди посредсвом событий или функций ожидания.
1000E+11100 статей в нете.
С уважение Flex2
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32531546
Можно попробовать это: поставте так. наз. fossil-драйвер (WinFossil и др.), который будет держать порт уже открытым и проинициализированным настройками из "Control Panel->WinFossil" Windows. Там галки есть: на скорость порта, держать ли его открытым etc.

Иногда помогает :)
...
Рейтинг: 0 / 0
COM-порт из BC4.0 под Win'98
    #32531549
кстати: настройки (скорость, чётность, стоп-биты) должны быть _обязательно_ одинаковыми в оборудовании, в программе, в доп. инциализаторах порта - везде.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / COM-порт из BC4.0 под Win'98
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]