Показать сообщение отдельно
Старый 02.02.2011, 15:40   #24
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Заказчик просит полный модбас

Пардон, что вмешиваюсь в интеллектуальную беседу уважаемых донов, но тем не менее хочу немного рассказать про популярный протокол фирмы Модикон, известный как Модбас.
Этот протокол создавался в те давние времена, когда далеко не в каждом даже крутом программируемом контроллере использовались микропроцессоры. Поэтому коммуникационный протокол разрабатывался с учетом того, что обрабатываться он будет во-первых, не нагружая основной процессор, во-вторых, не программно, а аппаратно. Кстати в то время даже основной процессор чаще всего представлял собой автомат состояний, собранный на горсти мелкосхем низкой степени интеграции. А если и стоял микропроцессор, то очень тормозной, всего несколько сотен тысяч операций в секунду...
Ну не было тогда возможности контролировать выход адресов за диапазон. Аппараные автоматы это слишком сильно усложняло, а мелкопроцессоры не успевали выполнять более важные задачи. Была возможность выставить на шину адреса значение из коммуникационного пакета и записать/прочитать значение из памяти во время нужной фазы тактового генератора. Если в контроллере нет платы памяти с таким адресом, то прочитаются нули. Или единицы, смотря какая память и куда притянута шина данных. Так что формировать ошибку выхода адреса за диапазон формировать было просто некому.
А потом протокол в таком виде прижился и менять его не стали...
Sergey Cherevko вне форума   Ответить с цитированием