-
Пользователь
-
Результатом выполнение любого действия заключенного между "IF" и "THEN" будет булевая переменная равная TRUE или FALSE. Поэтому внутри IF THEN достаточно одной переменной типа BOOL. Вощем IF i_bWrite = TRUE THEN - масло масленое (лишняя операция & индусский подход ) 
Когда сокет открылся (o_eCondition = STC_WORK) любой вызов этого сокета приводит к чтению (при i_bWrite = FALSE) или записи (i_bWrite = TRUE) эту переменную выставляешь по желанию в вызывающем сокет коде.
у меня TCP IP поднялся без дополнительных настроек SysSockSetOption. поэтому думаю на нее можно забить. если канеш не знаешь точно что от нее хочешь )
-
Ну пока до обмена пока видно далеко….
Вот какая штука происходит.
ОВЕН будет сервером. Клиентом железка со своей средой под юниксообразом.
На клиенте создаю соединение турум пумпум тыкаюсь в ip и порт овна.
Эврика клиент показывает ONLINE.
Дальше чудеса останавливаю, сбрасываю или выдергиваю из овна патчкорд – Клиент усеровно ONLINE.
Ладно думаю руки крюки в клиенте дровишки где-то неправильно написал.
Ставлю на клиенти дровишки под другую железку не ОВЕН, меняю в них порт и ip на те что в ОВНЕ.
Эврика опять мой клиен кричит ONLINE. Выдеркиваю патчкорд из ОВНА – опять ONLINE.
Ну думаю как так, беру железку к которой был приделан измененный драйвер подключаю к сети,
В дровишках меняю ip и порт обратно. Клиент ONLINE. Выдергиваю патчкорд из железки – Клиент OFFLINE.
Что за чудеса? Есть у кого мысли?
-
Пользователь
Вы бы меньше использовали сленг, чтоб Вас понять можно было.
Драйвер написан под сетевую карту, под стек ТСР или просто используете готовые библиотеки чтоб установить соединение?
-
Железка представляет из себя что-то типа контроллера со своей средой программирования на lua.
В ядро железки не залезть, ну и естественно драйвер писался теми средствами который дал
разработчик.
Создать соединение, коннект к порту, дисконект, закрыть соединения, ну и данные туда –суда, контроль ONLINE-OFFLINE. Все.
Наверное ответ такой - просто используете готовые библиотеки чтоб установить соединение.
Вот еще какая закономерность если на ОВЕН ставлю выполнение своего сервера менее 50ms, на клиенте
ONLINE появляется очень редко – мельком, Если ставлю более 50ms то при подключении ONLINE приходит через
5-10секунд после подключения потом всегда ONLINE, далее OFFLINE могу добиться только переустановкой драйвера
на клиенте или перезагрузкой клиента.
-
Пользователь
так спросили бы у разработчика, как он организовал контроль, может он периодически посылает на железку какие нибудь импульсы и железка на них отвечает, поэтому при разрыве четко отслеживается контроль соединения, а ОВЕНовский плк этого не понимает, потому что нереализована ответная часть
-
Разработчик в США, пошлем меня на ... как узнает что я прикручиваю к его железки более перспективные и более дешевые чем родные.
Да и так пошлет, у них там других дел по самое немогу.
может он периодически посылает на железку какие нибудь импульсы и железка на них отвечает, поэтому при разрыве четко отслеживается контроль соединения
Да не знаю, мы уж стока дровишек написали под эту железку, причем для разнопланового оборудования - продаются, пока сильно не жалуются.
-
причем тут ОВЕН? ) траблы в железяке )
-
Да тож так думаю, отослал свой драйвер коллегам с описанем задачи, жду коментов.
Думаю в недельку услышу ответ, посто клиент и сервер на железки поднимаю с точных исходников
производителя, проблем еще не встречали.
Уже думаю, что в моих мозгах че-то повернулось как переключился на ОВЕН, и просто не вижу в дровишках
ошибку, а она сидит и смотрит.
-
Ваши права
- Вы не можете создавать новые темы
- Вы не можете отвечать в темах
- Вы не можете прикреплять вложения
- Вы не можете редактировать свои сообщения
-
Правила форума