Просмотр полной версии : Функция SysComRead из библиотеки SysLibCom.Com
Newcomer
29.05.2014, 11:11
Добрый день.
Прошу пояснить назначение входной переменной dwBytesToRead функции SysComRead.
dwBytesToRead DWORD Число считаемых байт
Справка F1 в CodeSys
Newcomer
29.05.2014, 12:14
Понятно, что число считаемых байт. А для чего функции нужна эта переменная ?
Newcomer подается команда на устройство, количество байт известно, ожидается ответ от устройства, количество байт известно, его и указываете в данной переменной.
Newcomer
30.05.2014, 09:43
Newcomer подается команда на устройство, количество байт известно, ожидается ответ от устройства, количество байт известно, его и указываете в данной переменной.
Это все понятно. Еще раз спрашиваю, зачем функции нужен этот параметр (что будет после того, как в порт поступит указанное количество байт) ?
Newcomer наверное для того, чтобы выставлять другой параметр, если он поддерживается платформой (непосредственно ПЛК)
dwTimeout DWORD
Время в мс, после которого функция обязана завершиться.
Newcomer
31.05.2014, 09:52
Да размер буфера это
А что происходит с буфером при обращении к функции ?
А что происходит с буфером при обращении к функции ?
ну программист же не сапер, можно сделать кучу попыток с разными вариантами значений переменной чтоб самостоятельно выяснить для чего это и самое интересное, что Вам за это ни чего не будет. В качестве наводки, отправляйте в контроллер запросы например от мастера модбас и выставляйте параметр меньше чем количество байтв запросе, равное запросу и больше запроса
Newcomer
31.05.2014, 12:43
ну программист же не сапер, можно сделать кучу попыток с разными вариантами значений переменной чтоб самостоятельно выяснить для чего это и самое интересное, что Вам за это ни чего не будет. В качестве наводки, отправляйте в контроллер запросы например от мастера модбас и выставляйте параметр меньше чем количество байтв запросе, равное запросу и больше запроса
Если бы у меня было "железо", то я бы так и сделал, но у меня его нет.
для winNT тоже есть бибка для работы с ком-портом
Newcomer
31.05.2014, 13:32
для winNT тоже есть бибка для работы с ком-портом
Что можно в порт посылать и тут же читать ?
есть демо-версии виртуальных портов, они могут заворачивать обратно то что приняли
Newcomer
31.05.2014, 13:42
есть демо-версии виртуальных портов, они могут заворачивать обратно то что приняли
Если можно поподробнее про это.
https://www.google.ru/#newwindow=1&q=%D1%8D%D0%BC%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80 +%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2% D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9+%D 0%BF%D0%BE%D1%80%D1%82
Newcomer
31.05.2014, 14:27
Большое спасибо.
Да просто этой функции надо знать, сколько байт от неё вы готовы проглотить, т.е. размер созданного вами буфера. Выяснить размер буфера из одного только dwBufferAddress она не может, т.к. это лишь указатель на начало буфера.
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot