|
|
|
сниффер ком порта |
|
|
|
Sep 28 2016, 11:12
|
Знающий
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473
|
QUOTE (demiurg_spb @ Sep 28 2016, 13:55) Не всё так просто. В АСУТП и КИП на базе интерфейса RS485 протокол Modbus-RTU является стандартом де-факто. И считается, что помимо любых других он должен быть обязательно. Реже используется Modbus-ASCII и DCON. Остальные протоколы вообще крайне редки. В Росии тот-же ОВЕН долгое время продвигал свой собственный, весьма не плохой протокол, ну а в последнее время сдался и тоже реализовал во всех своих изделия Modbus-RTU. конечно не просто - мы же всегда любим делать все через одно место сделать(принять как вы написали дефакто) стандарт который очень неудобный и потом им пользоваться - хотя между BSC(1968 год) и MODBUS-RTU (2006) пропасть времени сделать растяжки гробящие шину проДУВАТь канал (хотя хоть какойто смысл есть) использовать приемо передатчики без сдвига - хотя даже отечественные драйвера все уже правильные - где вы только неправильные достаете ;-) сначала угробить промышленность - а потом запеть про импорто замещению когда уже все угроблено- начать делать страховые запасы зашибись дефакто правда потом начинаем покупать все иностранное и при этом качать права чтобы все соответсвовало нашим стандартам типа а какого хрена у вас мерседес с винтиками не по госту? или почему печатная плата в дюймах? помните проблему псведо дюймов? - которые 2.5 вместо 2.54? вот этот дефакто из этой же серии и еще раз ТС дали четкий ответ - хочешь снифер = делай(тем более они делают свои железки как я понял) МК приблуду. под WIN по честному не получится что еще обсуждать?
|
|
|
|
|
Sep 28 2016, 11:24
|
;
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509
|
Цитата(demiurg_spb @ Sep 28 2016, 13:55) Реже используется Modbus-ASCII и DCON. вот мне лично ASCII нравится и я предпочтения ему отдаю, если нужно построить сеть из несложных девайсов. Цитата В Росии тот-же ОВЕН долгое время продвигал свой собственный, весьма не плохой протокол, ну а в последнее время сдался и тоже реализовал во всех своих изделия Modbus-RTU. А там еще было какое-то решение на базе Modbus-ASCII с заменой множества символов, так что они были прозрачны для остальных девайсов с "фирменным модбасом" с точностью до фрейма. причем, непонятно для чего сие вообще, если мастер один Цитата(net @ Sep 28 2016, 14:12) конечно не просто - мы же всегда любим делать все через одно место ... что еще обсуждать? при чем тут... чуждый православию модбас появился эволюционным путем. Всё.
|
|
|
|
|
Sep 28 2016, 11:52
|
Гуру
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244
|
QUOTE (_Pasha @ Sep 28 2016, 09:55) 1. Нет. Речь шла о продувке физ. канала. Совершенно закономерно, что мысль дошла до того, чтобы сделать продувку равную Т35 или Т15, но делать ее по максимуму, ессно, необязательно. Мягко говоря ничего не понял. Таймера будут по любому и городить "продувку" левой рукой правое ухо просто незачем. Не обойтить без таймера, вот он пусть и отрабатывает все нужные интервалы в зависимости от состояния автомата фреймера. QUOTE 2. Нет! "на многих чипах" -это х51? Абсолютно на всех, котрые ведут совместимость от 8250 чипа. Среди микроконтроллеров это, например все NXP включая ARМ. Ну и само собой все IBM-PC. QUOTE 3. Да )) но не совсем. при Т15 остальной парк девайсов примет все что идет вплоть до Т35. Т.е. после продувки Т15 можно запросто потерять пакет. А после Т35 - нет. Понятие правильности оно абсолютное и не надо называть "правильными" нарушения пртокола под устройства сделанные кем то с нарушением. Иметь настройки под уродов, это да, жизненная необходимость, но это не делает нарушения легальными. QUOTE (net @ Sep 28 2016, 10:16) 2) легко реализуемо путем пердачи лишнего байта - и как только лишний байт уйдет из регистра значит передача нужного байта выполнена Не реализуемо. Прерывание отработает с задержкой, да и само прерывение будет выдано с задержкой на один бит в большинстве случаев. Так что получите, как минимум, лишний стартовый бит до того, как отключите передатчик.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 28 2016, 11:56
|
Знающий
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473
|
QUOTE (zltigo @ Sep 28 2016, 14:52) Не реализуемо. Прерывание отработает с задержкой, да и само прерывение будет выдано с задержкой на один бит в большинстве случаев. Так что получите, как минимум, лишний стартовый бит до того, как отключите передатчик. реализуемо и кого волнует мусор на шине? QUOTE (_Pasha @ Sep 28 2016, 14:24) при чем тут... чуждый православию модбас появился эволюционным путем. Всё. путем деградации
|
|
|
|
|
Sep 28 2016, 12:33
|
Гуру
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244
|
QUOTE (AHTOXA @ Sep 28 2016, 15:15) Стартового бита не будет, потому что ножка передатчика отключена. Так что нормуль. Если НЕ понимаете о чем речь, не плодите "мусор на шинефоруме". Передатчик НЕ отключен, поскольку передатеся валидный "предпоследний" байт. QUOTE (net @ Sep 28 2016, 14:56) реализуемо и кого волнует мусор на шине? Меня волнует мусор, которого могло-бы и не быть. Не люблю грязную работу и сам НЕ делаю свою работу грязно.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 28 2016, 12:47
|
Знающий
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473
|
QUOTE (zltigo @ Sep 28 2016, 15:33) Меня волнует мусор, которого могло-бы и не быть. Не люблю грязную работу и сам НЕ делаю свою работу грязно. ну тогда считаем что этого мусора нет - посколькку после него будет пауза и этот сигнал никому не помешают, и он строго детерменирован и не представляет никакой опасности и совершенно чист перед протоколом и в от личии от вашего невозможно - это все решает без проблем
|
|
|
|
|
Sep 28 2016, 12:55
|
фанат дивана
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684
|
Цитата(zltigo @ Sep 28 2016, 17:33) Если НЕ понимаете о чем речь, не плодите "мусор на шинефоруме". Передатчик НЕ отключен, поскольку передатеся валидный "предпоследний" байт. Нет, это вы влезли посреди обсуждения, и, как выясняется, совершенно НЕ понимаете, о чём речь. Но осуждать это вам не мешает. На всякий случай, речь шла об вот этом методе: Цитата(demiurg_spb @ Sep 27 2016, 19:45) А линию продуваю действительно так, как вы предположили. Поясню на примере STM32. Отключаю функцию UART на ноге ТХ (перевожу в GPIO) и отправляю один байт на заранее рассчитанной скорости чтобы получилась пауза 3,5T (при этом нога TX вообще не дёргается). Потом в прерывании TXC перевожу ногу обратно в режим UART-TX, меняю на правильный бодрейт и отправляю пакет, потом снова продуваю прежним способом. Т.е. у меня в драйвере UART есть возможность включить пакетный режим с суффиксом и префиксом активного состояния. Прерывания от таймера вообще не использую.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Sep 28 2016, 13:13
|
Гуру
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244
|
QUOTE (AHTOXA @ Sep 28 2016, 15:55) Нет, это вы влезли посреди обсуждения, и, как выясняется, совершенно НЕ понимаете, о чём речь. Но осуждать это вам не мешает. На всякий случай, речь шла об вот этом методе: Вот именно по этому методу окончание передачи и НЕ работает, если, как уже писал, нет прерывания по окончанию передачи. И прерывание по загрузки регистра хранения в регистр сдвига, как у 8250 совместимых чипов никак не канает. QUOTE (net @ Sep 28 2016, 15:47) ну тогда считаем что этого мусора нет Понял. Насрать соседу под дверь, насрать не считается, ибо дверь чужая и проблемы соседа - пусть чистит.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 28 2016, 13:18
|
Знающий
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473
|
QUOTE (zltigo @ Sep 28 2016, 16:13) Вот именно по этому методу окончание передачи и НЕ работает, если нет прерывания по окончанию передачи. И прерывание по занрузки регистра в регистр сдвига, как у 8250 совместимых чипов никак не канает. еще как канает - и не вы ли тут писали по поводу стойкости к борьбе с шумами? QUOTE (zltigo @ Sep 28 2016, 16:13) вы нагадили тем, что сказали что метода получить, что байт ушел нет!!! я вам привел метод как можно узнать что байт ушел, разговор шел именно о том как узнать что байт ушел!!! вы начинаете выворачиваться с шумами на шине и тд слив засчитан
|
|
|
|
|
Sep 28 2016, 13:23
|
Гуру
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244
|
QUOTE (net @ Sep 28 2016, 16:18) еще как канает - и не вы ли тут писали по поводу стойкости к борьбе с шумами? Вообще это даже НЕ шум. Лишний стартовый бит означет дополнительный байт фрейма идущий БЕЗ паузы, попадающий MODBUS фрейм и ЛОМАЮЩИЙ его. Если фреймер байтствффинговый, тогда это мусор, который тоже есть признак того, что "программист" засранец . QUOTE инаете выворачиваться с шумами на шине и тд слив засчитан Вот уж точно с про Вас - с больной головы на здоровую.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 28 2016, 13:33
|
Знающий
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473
|
QUOTE (zltigo @ Sep 28 2016, 16:23) Вообще это даже НЕ шум. Лишний стартовый бит означет дополнительный байт фрейма идущий БЕЗ паузы, попадающий MODBUS фрейм и ЛОМАЮЩИЙ его. Если фреймер байтствффинговый, тогда это мусор, который тоже есть признак того, что "программист" засранец . Вот уж точно с про Вас - с больной головы на здоровую. я уж не говорю о том, что слушая что передаете вы спокойно отследите уход своего байта так что про больную голову не надо
|
|
|
|
|
Sep 28 2016, 13:59
|
Гуру
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244
|
QUOTE (net @ Sep 28 2016, 16:33) я уж не говорю о том, что слушая что передаете вы спокойно отследите уход своего байта Это БЕЗ проблем. Именно так бывает делаю, если приемопередатчик позволяет принимать эхо, то есть он RS422 а не RS485, или тестовое закольцовывание внутри UART не блокирует передачу. Но только это не решает задачу держать ПУСТУЮ паузу отключив передатчик. Еще пробовать засирать форум негодными "идеями" будете? Но речь шла вообще о ДРУГОМ, неработоспособном методе. Так что про больную голову все правильно. P.S. С 1984 года я познал множество извращений с UART и поначалу наступил на некоторое количество гараблей, так что дабы меня чем нибудь удивить, надо очень постараться.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Sep 28 2016, 14:03
|
Знающий
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473
|
QUOTE (zltigo @ Sep 28 2016, 16:59) Это БЕЗ проблем. Именно так бывает делаю, если приемопередатчик позволяет принимать эхо, то есть он RS422 а не RS485, или тестовое закольцовывание внутри UART не блокирует передачу.
Но речь шла о ДРУГОМ, неработоспособном методе. Так что про больную голову все правильно.
P.S. С 1984 года я познал множество извращений с UART и поначалу наступил на некоторое количество гараблей, так что дабы меня чем нибудь удивить, надо очень постараться. спокойно сосчитайте до 1000 или сколько вам надо метод отправки лишнего байта работает чтобы узнать ушел ли предыдущий байт то что вы пользуетесь кривыми протоколами и у вас возникают проблемы это ваш выбор так что про больную голову возвращаю
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|