раскрыть ветку (34)
раскрыть ветку (9)
Учитывая, что у него еще и callback'и АСИНХРОННЫЕ (по определению любой callback асинхронен) Да еще и dll совместима с любым приложением, которое способно использовать dll (вот это паварот !) - а нахрен dll вообще нужны ?
раскрыть ветку (6)
там написано про ЯП. Может автор имел ввиду разные правила вызова и передачи параметров в разных языках?
раскрыть ветку (1)
Различие в _правилах_ (имелось ввиду в синтаксисе ?) при вызовах и передаче параметров может отличаться исключительно синтаксически для разных языков.
Фактически же это происходит всегда и везде абсолютно одинаково: через стек.
Фактически же это происходит всегда и везде абсолютно одинаково: через стек.
раскрыть ветку (3)
Но разумеется в данном случае речь идет об априорной асинхронности конкретно callback механизма WINAPI.
Глобально, callback разумеется может быть и синхронным.
Глобально, callback разумеется может быть и синхронным.
раскрыть ветку (1)
Только сейчас понял, что используется Builder, а соответственно WinAPI. Тут, разумеется, асинхронно.
Ну а как он может быть синхронен событию (или уж на то пошло - так вообще чему угодно), если выполняется на уровне приложения, в его адресном пространстве?
После аппаратного события-инициатора отрабатывает ядро, дрйвер устройства, MM, диспетчер сообщений, а уж потом, да и то если нет задач поважнее доходит до передачи управления приложению, и хорошо, если рассылка сообщений уже прошла и callback обработан.
После аппаратного события-инициатора отрабатывает ядро, дрйвер устройства, MM, диспетчер сообщений, а уж потом, да и то если нет задач поважнее доходит до передачи управления приложению, и хорошо, если рассылка сообщений уже прошла и callback обработан.
пока никак, не задумывался об этом. Если останется время, или начальство потребует, буду в начало каждого пакета его номер пихать, например...
Сейчас перед отправкой каждого запроса идёт проверка подключения к плате - отсылается пакет, если приходит такой-то ответ, то всё хорошо, едем дальше, если приходит другой пакет, всё плохо, если не пришло вообще ничего, ждем 300 мсек, пробуем ещё пару раз, если ничего не пришло - плата не подключена
Сейчас перед отправкой каждого запроса идёт проверка подключения к плате - отсылается пакет, если приходит такой-то ответ, то всё хорошо, едем дальше, если приходит другой пакет, всё плохо, если не пришло вообще ничего, ждем 300 мсек, пробуем ещё пару раз, если ничего не пришло - плата не подключена
раскрыть ветку (23)
раскрыть ветку (12)
раскрыть ветку (11)
Ебануться реализовывать - это гарантированную доставку на 485м. А на UDP это не так сложно, и путей много. Подумал, может тебе что еще в голову интересное пришло.
раскрыть ветку (10)
Чего это вдруг? Никогда не задумывался, но всегда любил 485й за его простоту.
Та же самая реализация modbus, с проверкой CRC (16), и определенным кол-вом попыток запроса.
Быть может в сравнении с TCP, где в библиотеках уже все заложено, работать с 485м сложнее.
За три года работы, кстати только два раза сталкивался с косяками сетей 485, когда необходим был на линии репитер, и не более. Пакеты не терял :-)
Та же самая реализация modbus, с проверкой CRC (16), и определенным кол-вом попыток запроса.
Быть может в сравнении с TCP, где в библиотеках уже все заложено, работать с 485м сложнее.
За три года работы, кстати только два раза сталкивался с косяками сетей 485, когда необходим был на линии репитер, и не более. Пакеты не терял :-)
раскрыть ветку (9)
раскрыть ветку (8)
Немного не понял вашей терминологии.
На данный момент работаю с 8-ю изолированными 485-ми сетями, в каждой сидит мастер. Помимо мастера, на линии по ~200 slave устройств. В определенных узлах стоят репитеры (адамы, icp-con и подобные). По всей видимости - это шина.
А что значит - линком?
Кстати, да, а почему автор не юзанул 485, гораздо же проще? Одну микруху max485csa на плату, и один RS-485 <-> USB на компутор. По мне, брать байты с COM намного проще, нежели с сокетами возиться. Открыл порт - да бери :-)
На данный момент работаю с 8-ю изолированными 485-ми сетями, в каждой сидит мастер. Помимо мастера, на линии по ~200 slave устройств. В определенных узлах стоят репитеры (адамы, icp-con и подобные). По всей видимости - это шина.
А что значит - линком?
Кстати, да, а почему автор не юзанул 485, гораздо же проще? Одну микруху max485csa на плату, и один RS-485 <-> USB на компутор. По мне, брать байты с COM намного проще, нежели с сокетами возиться. Открыл порт - да бери :-)
раскрыть ветку (7)
Простая терминология, и все правильно вы поняли :)
У нас в подобной сети с реализацией реального времени некоторые проблемы-таки есть. Устройства очень разные висят, где-то пакеты доходят до 5-6кб - непросто их тоже обеспечить, не подвешивая сработки с остальных. Усложняется как раз таки работой на более нижнем уровне - протоколы у устройств разные, и требования у них соответственно. Все это вкупе обеспечивает головную боль большому количеству кодеров разных уровней стабильно :)
Ну и фантомы от меди, лежащей в куче, существенно увеличивает количество ошибок.
У нас в подобной сети с реализацией реального времени некоторые проблемы-таки есть. Устройства очень разные висят, где-то пакеты доходят до 5-6кб - непросто их тоже обеспечить, не подвешивая сработки с остальных. Усложняется как раз таки работой на более нижнем уровне - протоколы у устройств разные, и требования у них соответственно. Все это вкупе обеспечивает головную боль большому количеству кодеров разных уровней стабильно :)
Ну и фантомы от меди, лежащей в куче, существенно увеличивает количество ошибок.
раскрыть ветку (5)
Странно, это как раз таки.
Эзернет можно юзать кому не лень, посылая на микрушку лишнее гамно, в отличии от монополизированного RS232 / 485.
Да и дальность, всего 100 метров, в отличии от 1200 для 485го.
А вы под ARM пишете, я так понимаю?
Эзернет можно юзать кому не лень, посылая на микрушку лишнее гамно, в отличии от монополизированного RS232 / 485.
Да и дальность, всего 100 метров, в отличии от 1200 для 485го.
А вы под ARM пишете, я так понимаю?
раскрыть ветку (4)
да, cortex m4. Устройство находится в метре от пк, и в сети кроме устройства и пк никого нет, так что всё спокойно
раскрыть ветку (3)
уууу.... так это не взаимодействие, это слив. На серьезных объектах за такую реализацию обмена руки отрывают. И не имеет никакого значения, насколько быстро и правильно работает логика. Нет гарантированного обмена - всему твоему коду цена ноль.
раскрыть ветку (9)
если останется время - сделаю гарантированную доставку. Проект через месяц сдавать. У нас в одной локальной сети будут находиться только компьютер и плата, и на 4-м Кортексе tcp поднимать всё-таки неохота...
раскрыть ветку (8)
раскрыть ветку (7)
Проект явно студенческий, и если нету требований по безопасности/надежности, зачем оно надо ?..
Что вы подразумеваете под гарантированной доставкой?
На серьезных объектах предъявляют требования не только по надежности, но и по безопасности, что подразумевает сертификацию не только ПО но и средств передачи данных.Серьезные объекты не работают на Windows, там используются системы реального времени на которых реализовать и доказать безопасность обмена на UDP/TCP .... Нет возможности в общем.
Там везде применяется резервирование (питание/управляющие устройства итд итп), а ПО/процесс разработки проверяется на соответствия стандартам.
И там не используется C++/интерпретируемые языки. Только Си/Асм.
Разной задаче - разный инструмент.
Автору добра и удачи !
Что вы подразумеваете под гарантированной доставкой?
На серьезных объектах предъявляют требования не только по надежности, но и по безопасности, что подразумевает сертификацию не только ПО но и средств передачи данных.Серьезные объекты не работают на Windows, там используются системы реального времени на которых реализовать и доказать безопасность обмена на UDP/TCP .... Нет возможности в общем.
Там везде применяется резервирование (питание/управляющие устройства итд итп), а ПО/процесс разработки проверяется на соответствия стандартам.
И там не используется C++/интерпретируемые языки. Только Си/Асм.
Разной задаче - разный инструмент.
Автору добра и удачи !
раскрыть ветку (5)
Спасибо!
Да, студенческий, я второй курс закончил :)
Требований нет, начальство одобряет.
И тебе добра и удачи)
Да, студенческий, я второй курс закончил :)
Требований нет, начальство одобряет.
И тебе добра и удачи)
Ты обкурился? Все бумажные требования закрываются спец. проверкой. Винда стоит на каждом втором промышленном компе и на каждом втором федеральном объекте особой важности, embedded будет жить вечно. Резервирование и прочая хрень вообще не имеют отношения к функциональности кода. А вот этот самый функционал начинается с гарантированности доставки информации, и уже заканчивается удобством и скоростью. Я тебе это говорю как инженер, седьмой год работающий на охранку федеральных объектов особой важности.
раскрыть ветку (3)
Стоять на промышленном компе она может, в зависимости от требований которые к нему предъявлены. (если это небезопасное устройство - пожалуйста. Были случаи что на них в кваку играли. Если доказательство безопасности строилось с учетом отсутствия безопасности этого устройства - пожалуйста. )
Вы пишите о надежности, я о безопасности.
Я не представляю как дела обстоят в охранке объектов особой важности, видимо к ним такие требования не предъявляются.
К системам ж/д автоматики и авионики такие требования предъявляются. Там составляется доказательство безопасности, код/этапы проектирования сертифицируются по стандартам отросли.
Когда я обкуриваюсь я не думаю о работе. Очень рад за ваш 7-ми летний стаж.
Вы пишите о надежности, я о безопасности.
Я не представляю как дела обстоят в охранке объектов особой важности, видимо к ним такие требования не предъявляются.
К системам ж/д автоматики и авионики такие требования предъявляются. Там составляется доказательство безопасности, код/этапы проектирования сертифицируются по стандартам отросли.
Когда я обкуриваюсь я не думаю о работе. Очень рад за ваш 7-ми летний стаж.
раскрыть ветку (2)
Не знаю какие там у вас стандарты и в какую сторону отросли, но видимо хреновые, если у вас в кваку рубятся. У нас ставятся СЗИ, и даже антивирус не нужен.
раскрыть ветку (1)
Отраслевой стандарт - EN 50126. Можете почитать, если вам интересно.
Случай с квакой это косяк не наш, и этот вопрос там уже решили. Да и всякое бывает в условиях эксплуатации.
СЗИ это да.
Я вообще изначально не мерился... А хотел как то высказать, что если в ТЗ не описаны какие то требования к надежности, то попытки её обеспечения это лишний функционал.Пустая трата денег.
Тем более что обеспечить её одной пересылкой оповещений - ересь.
Ладно .... В интернете всегда кто то не прав, и пытаться вступать в холи вары на полу-пустом месте....
Случай с квакой это косяк не наш, и этот вопрос там уже решили. Да и всякое бывает в условиях эксплуатации.
СЗИ это да.
Я вообще изначально не мерился... А хотел как то высказать, что если в ТЗ не описаны какие то требования к надежности, то попытки её обеспечения это лишний функционал.Пустая трата денег.
Тем более что обеспечить её одной пересылкой оповещений - ересь.
Ладно .... В интернете всегда кто то не прав, и пытаться вступать в холи вары на полу-пустом месте....
