|
7, 6 и 5 бит данных в rs485 |
|
|
|
 |
Ответов
(1 - 12)
|
Jun 24 2015, 14:06
|
Профессионал
    
Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528

|
Цитата(_3m @ Jun 24 2015, 19:32)  Вопрос: Кто нибудь встречал использование 7, 6 или 5-битных данных в серийном оборудовании с интерфейсом rs485 (422, 232) ? Никто не мешает передавать 8-битные данные с одним стоповым у которых старший бит выставлен в "1", получится аналог 7N2. Хотя уже 7N1, передаваемые без пауз такой уарт принять не сможет. Мне, впрочем, не приходилось встречать использование RS485 менее чем с 8 битами. Обычно или жёстко заданный формат 8 бит или возможность настройки.
--------------------
Russia est omnis divisa in partes octo.
|
|
|
|
|
Jun 24 2015, 14:16
|
Профессионал
    
Группа: Свой
Сообщений: 1 849
Регистрация: 6-02-05
Пользователь №: 2 451

|
Цитата(SSerge @ Jun 24 2015, 08:06)  Никто не мешает передавать 8-битные данные с одним стоповым у которых старший бит выставлен в "1", получится аналог 7N2. Хотя уже 7N1, передаваемые без пауз такой уарт принять не сможет. Мне, впрочем, не приходилось встречать использование RS485 менее чем с 8 битами. Обычно или жёстко заданный формат 8 бит или возможность настройки. RS232 вышел на рынок (принято считать, что был принят де-факто и де-юрэ) в 1964-м. До этого разрабатывался ( не один день) да и применялся в том или ином виде до этого. Поскольку на западе стандарт не закон, а рекомендации, то и использовали его по разному. В старой аппаратуре возможны 5, 6 и 7 бит и даже 1 стоп-, 1,5 стоп- и 2 стоп- бита. (Связано это было также и с желанием привязать электромеханику к электронике). Иногда последний информационный бит (7-й) при 5-битах информации и 2-х стопах использовался как дополнение до четности (нечетности). Стабильными за все годы и фирмы были только полярности старта и стопа (стопов). Погуглите, все это есть. RS422 и 485 появились позднее и более устойчивы были с самого начала. Но и там своего *** хватало.
|
|
|
|
|
Jun 24 2015, 15:45
|
Знающий
   
Группа: Свой
Сообщений: 869
Регистрация: 30-01-08
Из: СПб
Пользователь №: 34 595

|
Цитата(_3m @ Jun 24 2015, 15:32)  Вопрос: Кто нибудь встречал использование 7, 6 или 5-битных данных в серийном оборудовании с интерфейсом rs485 (422, 232) ? ... Если форматы данных менее 8 бит используются придется брать другой процессор с более гибким уарт. Приходилось сталкиваться с чем-то подобным в 80-х. Вот ни разу не припомню, что бы хоть раз уткнулись в 7 бит. Самое древнее, на что можно ориентироваться, это устройства, с портом на 8251. Наверное, что-то такое ещё встретить можно. Но даже если такие устройства имеют режим 7 бит, они наверняка поддерживают 2 стопа или переключаются в режим 8 бит (обычно задавалось переключателями). Тут ещё стоит учесть обильное использование с 80-х микроконтроллеров типа 8051 и прочего подобного, которые работать с 7+1 просто не умеют. Массовость применения 8-битных каналов разработчиками оборудования в 80-х безусловно учитывалась. Думаю, что даже при большом желании, сейчас чрезвычайно трудно найти рабочую железяку, которая не поддерживает 8 бит (или 7+2).
|
|
|
|
|
Jun 25 2015, 02:34
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Странный вопрос... А автор не знает с каким оборудованием ему предстоит работать??? Разработка "коня в вакууме", работающего со всем возможным существующим в мире оборудованием? И из отписавшихся кто работал когда-нить со сторонним оборудованием по RS-485? Например - разного рода счётчиками э-энергии/воды/газа/...? Например нам, когда мы разрабатывали контроллер сбора данных с различных устройств учёта, ставили задачу по поддержке всех стандартных режимов UART. Даже хуже - говорили что есть какие-то счётчики, которые в процессе обмена с ними переключают скорость и формат обмена (вроде насколько помню - заголовок сообщения передают на одной скорости/формате, тело с данными - на другой). Точно не скажу что это за устройства. Но в ТЗ требование было. Чтобы понять насколько актуально всё менее 8N1, достаточно набрать в поиске 7N1 или 7E1 или... Увидите сколько ссылок и многие - совсем свежие даты. Например вот: http://www.tekon.ru/products/oth_equipment/electocounters
|
|
|
|
|
Jun 25 2015, 05:44
|
Знающий
   
Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960

|
Цитата(jcxz @ Jun 25 2015, 05:34)  Странный вопрос... А автор не знает с каким оборудованием ему предстоит работать??? Разработка "коня в вакууме", работающего со всем возможным существующим в мире оборудованием? И из отписавшихся кто работал когда-нить со сторонним оборудованием по RS-485? Например - разного рода счётчиками э-энергии/воды/газа/...? Автор действительно не знает с каким оборудованием предстоит работать. Поставлена задача работать с любыми устройствами имеющими интерфейс Rs485. В первую очередь это счетчики электроэнергии/воды/газа/солярки/бензина/ зарубежных производителей. Формат 7E1 stm32 еще может переварить если четность софтверно считать. Затык с форматом 7N1 - его Stm32 не переварит никак.
Сообщение отредактировал _3m - Jun 25 2015, 05:47
|
|
|
|
|
Jun 25 2015, 06:28
|
Гуру
     
Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025

|
Цитата(jcxz @ Jun 25 2015, 05:34)  Даже хуже - говорили что есть какие-то счётчики, которые в процессе обмена с ними переключают скорость и формат обмена (вроде насколько помню - заголовок сообщения передают на одной скорости/формате, тело с данными - на другой). Точно не скажу что это за устройства. Но в ТЗ требование было. Ну, например у Шлюмберже есть один газовый корректор (за давностью лет тип не помню). Там во время хэндшейка скорость меняется, причем запрос идет на старой скорости, а ответ уже на новой. Да много извратов бывает, всего не предусмотришь, если в ТЗ нет четкого определения. Лично я не сталкивался с малым количеством бит, но в старой телемеханике много чего бывает, особенно если разработано давно. По-моему, если нужна универсальность, то придется 1. или делать прием-передачу ручками побитово (легко решается, если можно выделить аппаратное прерывание и таймер на каждый из каналов), - на современных молотилках вообще не вопрос. Кстати, этот путь также хорош когда аппаратный UART не позволяет получить нужную скорость или количество каналов большое (например, у меня было такое в древнем ПИКе, когда нужно было 50 бод при тактовой 20 мегагерц-делителя не хватало, или однажды понадобилось 8 каналов 9600 в параллель чтобы работали независимо) 2. или предусмотреть установку внешнего приемника, позволяющего больше возможностей для конфигурирования чем интегрированный UART, у Максима много всяких UART-SPI микросхем. Путь хорош "не вырост"- сейчас на плате пустое место и перемычки, а в случае нужды перемычки убираются и запаивается микросхема (или, еще лучше, если на плате есть посадочное место для своего модуля "адаптер связи", тогда конструкция очень универсальная получается- при нужде разрабатывается маленький модулек и пишется его софтовая поддержка)
|
|
|
|
|
Jun 25 2015, 11:06
|
Знающий
   
Группа: Свой
Сообщений: 869
Регистрация: 30-01-08
Из: СПб
Пользователь №: 34 595

|
Цитата(jcxz @ Jun 25 2015, 05:34)  ... . Но в ТЗ требование было. Чтобы понять насколько актуально всё менее 8N1, достаточно набрать в поиске 7N1 или 7E1 или... Увидите сколько ссылок и многие - совсем свежие даты. Например вот: ... ТЗ - это святое. Даже если там совсем чудные вещи присутствуют. - Реально же, есть вопрос о неперенастраиваемом 7N1 и менее (7E1 - это тоже 8 битов и один стоп). Таких устройств сейчас практически не найти. Ваш пример тому подтверждение. Все устройства поддерживают 8N1. - И есть вопрос о применимости 7N1 в конкретных задачах, если устройства поддерживают оное. В этой части стоит смотреть конкретную практику по конкретным областям. Кто как, а я ни разу не сталкивался с требованием обязательного использования 7N1.
|
|
|
|
|
Jun 25 2015, 12:23
|
Знающий
   
Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960

|
Цитата(prig @ Jun 25 2015, 14:06)  ТЗ - это святое. Даже если там совсем чудные вещи присутствуют. - Реально же, есть вопрос о неперенастраиваемом 7N1 и менее (7E1 - это тоже 8 битов и один стоп). Таких устройств сейчас практически не найти. Ваш пример тому подтверждение. Все устройства поддерживают 8N1. Гугление показало что устройств с 7N1 дофига. Как правило эти устройства также поддерживают и 7E1, 7O1, многие (но не 100%) поддерживают 8*1. 7N1 проблема в большей части организационная. У клиента имеется оборудование, X лет назад все было сконфигурировано на 7N1 и работало с древней 386-й. Теперь 386-я сдохла (или не интегрируется в облако) и поставили мою железку, но ВСЕ устройства переконфигурировать никто не станет, клиенту подавай easy install.
|
|
|
|
|
Jun 25 2015, 12:34
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(prig @ Jun 25 2015, 17:06)  - Реально же, есть вопрос о неперенастраиваемом 7N1 и менее (7E1 - это тоже 8 битов и один стоп). Таких устройств сейчас практически не найти. Ваш пример тому подтверждение. Все устройства поддерживают 8N1. Там (по моей ссылке) для половины устройств идёт отсыл к документации. Учитывая что у двух в таблице уже указано 7E1, высока вероятность, что среди тех, для кого явно не указано есть и 7N1, а может и другие. Да и поиск в инете выдаёт множество воплей с проблемой подключения к устройствам менее 8 бит. Цитата(Ruslan1 @ Jun 25 2015, 12:28)  2. или предусмотреть установку внешнего приемника, позволяющего больше возможностей для конфигурирования чем интегрированный UART, у Максима много всяких UART-SPI микросхем. Путь хорош "не вырост"- На вырост, раз уж просматривается такая проблема, и всё равно - МК только выбирается, выбрать МК с железными 5,6,7 битами. Меньше гемора в будущем... Тем более что и вообще UART у STM плешивенький... Мы недавно, для устройства, которому потребуется много UART-ов, выбрали Tiva. 8 полноценных UART. И с битами и с FIFO всё в порядке. Хотя наверное не все можно задействовать одновременно из-за конфликтов по пинам.
|
|
|
|
|
Jun 25 2015, 15:12
|
Знающий
   
Группа: Свой
Сообщений: 869
Регистрация: 30-01-08
Из: СПб
Пользователь №: 34 595

|
Цитата(_3m @ Jun 25 2015, 15:23)  Гугление показало что устройств с 7N1 дофига. Как правило эти устройства также поддерживают и 7E1 ... У клиента имеется оборудование, X лет назад все было сконфигурировано на 7N1 и работало с древней 386-й. Теперь 386-я сдохла (или не интегрируется в облако) и поставили мою железку, но ВСЕ устройства переконфигурировать никто не станет, клиенту подавай easy install. - Я говорил о "чистых" 7N1. И ваш ответ это только подтверждает. И по-другому быть не может. Начиная с 80-х, в любой микросхеме, поддерживающей 7N1, будет 7N2 или 8N1. 7E1 - это уже не проблема. Контроль чётности может быть аппаратным и программным. Физически, 7E1 вписывается в 8N1. - Похоже, что Вам сильно повезло. Привет из конца 80-х - начала 90-х? Тогда закупали всё, что ни попади, включая устаревшее западное барахло начала 80-х, а потом лепили как ни попади. А м.б. и не повезло. Если там сетка на RS485/422, то есть сильные подозрения, что это не 7N1, а 7E1 или 7N2(с этим тоже проблем нет). Используемый в этом оборудовании протокол не подскажете? И сразу всё встанет на свои места. Цитата(jcxz @ Jun 25 2015, 15:34)  ...Учитывая что у двух в таблице уже указано 7E1, высока вероятность ... Да и поиск в инете выдаёт множество воплей с проблемой подключения к устройствам менее 8 бит.
На вырост, раз уж просматривается такая проблема, и всё равно - МК только выбирается, выбрать МК с железными 5,6,7 битами. Меньше гемора в будущем... ... Вероятнасть встретить "чистый" 7N1 близка к нулевой. Множество воплей касается преимущественно 7E1. Это действительно актуально. И даже понятно, почему именно (кто не понял, догадываемся). При этом, я не поленился проверить пару устройств из таблички. Нормальный джентельменский набор режимов уарта присутствует. Ну да ладно. Кто считает актуальным 7N1 и менее, пусть делает. 5 бит особенно пригодятся для занесения в табличку ТТХ. А вот на что действительно стоит обратить внимание - это 8E1. Да и аппаратный 7E1/8E1 не помешает. Скорее всего, и 7N1 пойдёт бонусом к такому комплекту.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|