_3m 5 24 июня, 2015 Опубликовано 24 июня, 2015 · Жалоба Вопрос: Кто нибудь встречал использование 7, 6 или 5-битных данных в серийном оборудовании с интерфейсом rs485 (422, 232) ? Вопрос возник потому что uart Stm32 поддерживает только 8 и 9 бит. Сейчас как правило используется 8 бит данных, однако беспокоит что например Ascii ориентированные протоколы запросто могут использовать 7 битный формат а в древних устройствах может быть вообще все что угодно. Если форматы данных менее 8 бит используются придется брать другой процессор с более гибким уарт. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SSerge 4 24 июня, 2015 Опубликовано 24 июня, 2015 · Жалоба Вопрос: Кто нибудь встречал использование 7, 6 или 5-битных данных в серийном оборудовании с интерфейсом rs485 (422, 232) ? Никто не мешает передавать 8-битные данные с одним стоповым у которых старший бит выставлен в "1", получится аналог 7N2. Хотя уже 7N1, передаваемые без пауз такой уарт принять не сможет. Мне, впрочем, не приходилось встречать использование RS485 менее чем с 8 битами. Обычно или жёстко заданный формат 8 бит или возможность настройки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Myron 0 24 июня, 2015 Опубликовано 24 июня, 2015 · Жалоба Никто не мешает передавать 8-битные данные с одним стоповым у которых старший бит выставлен в "1", получится аналог 7N2. Хотя уже 7N1, передаваемые без пауз такой уарт принять не сможет. Мне, впрочем, не приходилось встречать использование RS485 менее чем с 8 битами. Обычно или жёстко заданный формат 8 бит или возможность настройки. RS232 вышел на рынок (принято считать, что был принят де-факто и де-юрэ) в 1964-м. До этого разрабатывался ( не один день) да и применялся в том или ином виде до этого. Поскольку на западе стандарт не закон, а рекомендации, то и использовали его по разному. В старой аппаратуре возможны 5, 6 и 7 бит и даже 1 стоп-, 1,5 стоп- и 2 стоп- бита. (Связано это было также и с желанием привязать электромеханику к электронике). Иногда последний информационный бит (7-й) при 5-битах информации и 2-х стопах использовался как дополнение до четности (нечетности). Стабильными за все годы и фирмы были только полярности старта и стопа (стопов). Погуглите, все это есть. RS422 и 485 появились позднее и более устойчивы были с самого начала. Но и там своего *** хватало. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prig 0 24 июня, 2015 Опубликовано 24 июня, 2015 · Жалоба Вопрос: Кто нибудь встречал использование 7, 6 или 5-битных данных в серийном оборудовании с интерфейсом rs485 (422, 232) ? ... Если форматы данных менее 8 бит используются придется брать другой процессор с более гибким уарт. Приходилось сталкиваться с чем-то подобным в 80-х. Вот ни разу не припомню, что бы хоть раз уткнулись в 7 бит. Самое древнее, на что можно ориентироваться, это устройства, с портом на 8251. Наверное, что-то такое ещё встретить можно. Но даже если такие устройства имеют режим 7 бит, они наверняка поддерживают 2 стопа или переключаются в режим 8 бит (обычно задавалось переключателями). Тут ещё стоит учесть обильное использование с 80-х микроконтроллеров типа 8051 и прочего подобного, которые работать с 7+1 просто не умеют. Массовость применения 8-битных каналов разработчиками оборудования в 80-х безусловно учитывалась. Думаю, что даже при большом желании, сейчас чрезвычайно трудно найти рабочую железяку, которая не поддерживает 8 бит (или 7+2). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexunder 4 24 июня, 2015 Опубликовано 24 июня, 2015 · Жалоба Думаю, что даже при большом желании, сейчас чрезвычайно трудно найти рабочую железяку, которая не поддерживает 8 бит (или 7+2). :bb-offtopic: может автор изобрел машину времени и отправляется в прошлое? :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 166 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба Странный вопрос... А автор не знает с каким оборудованием ему предстоит работать??? Разработка "коня в вакууме", работающего со всем возможным существующим в мире оборудованием? И из отписавшихся кто работал когда-нить со сторонним оборудованием по RS-485? :rolleyes: Например - разного рода счётчиками э-энергии/воды/газа/...? Например нам, когда мы разрабатывали контроллер сбора данных с различных устройств учёта, ставили задачу по поддержке всех стандартных режимов UART. Даже хуже - говорили что есть какие-то счётчики, которые в процессе обмена с ними переключают скорость и формат обмена (вроде насколько помню - заголовок сообщения передают на одной скорости/формате, тело с данными - на другой). Точно не скажу что это за устройства. Но в ТЗ требование было. Чтобы понять насколько актуально всё менее 8N1, достаточно набрать в поиске 7N1 или 7E1 или... Увидите сколько ссылок и многие - совсем свежие даты. Например вот: http://www.tekon.ru/products/oth_equipment/electocounters Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 5 25 июня, 2015 Опубликовано 25 июня, 2015 (изменено) · Жалоба Странный вопрос... А автор не знает с каким оборудованием ему предстоит работать??? Разработка "коня в вакууме", работающего со всем возможным существующим в мире оборудованием? И из отписавшихся кто работал когда-нить со сторонним оборудованием по RS-485? :rolleyes: Например - разного рода счётчиками э-энергии/воды/газа/...? Автор действительно не знает с каким оборудованием предстоит работать. Поставлена задача работать с любыми устройствами имеющими интерфейс Rs485. В первую очередь это счетчики электроэнергии/воды/газа/солярки/бензина/ зарубежных производителей. Формат 7E1 stm32 еще может переварить если четность софтверно считать. Затык с форматом 7N1 - его Stm32 не переварит никак. Изменено 25 июня, 2015 пользователем _3m Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 10 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба Даже хуже - говорили что есть какие-то счётчики, которые в процессе обмена с ними переключают скорость и формат обмена (вроде насколько помню - заголовок сообщения передают на одной скорости/формате, тело с данными - на другой). Точно не скажу что это за устройства. Но в ТЗ требование было. Ну, например у Шлюмберже есть один газовый корректор (за давностью лет тип не помню). Там во время хэндшейка скорость меняется, причем запрос идет на старой скорости, а ответ уже на новой. Да много извратов бывает, всего не предусмотришь, если в ТЗ нет четкого определения. Лично я не сталкивался с малым количеством бит, но в старой телемеханике много чего бывает, особенно если разработано давно. По-моему, если нужна универсальность, то придется 1. или делать прием-передачу ручками побитово (легко решается, если можно выделить аппаратное прерывание и таймер на каждый из каналов), - на современных молотилках вообще не вопрос. Кстати, этот путь также хорош когда аппаратный UART не позволяет получить нужную скорость или количество каналов большое (например, у меня было такое в древнем ПИКе, когда нужно было 50 бод при тактовой 20 мегагерц-делителя не хватало, или однажды понадобилось 8 каналов 9600 в параллель чтобы работали независимо) 2. или предусмотреть установку внешнего приемника, позволяющего больше возможностей для конфигурирования чем интегрированный UART, у Максима много всяких UART-SPI микросхем. Путь хорош "не вырост"- сейчас на плате пустое место и перемычки, а в случае нужды перемычки убираются и запаивается микросхема (или, еще лучше, если на плате есть посадочное место для своего модуля "адаптер связи", тогда конструкция очень универсальная получается- при нужде разрабатывается маленький модулек и пишется его софтовая поддержка) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vadimp61 0 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба Например вот http://www.exar.com/common/content/documen...languageid=1033 все настраивается через регистры 5,6,7,8 бит данных, 1, 1,5 или 2 стопа ну и четности, короче все. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prig 0 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба ... . Но в ТЗ требование было. Чтобы понять насколько актуально всё менее 8N1, достаточно набрать в поиске 7N1 или 7E1 или... Увидите сколько ссылок и многие - совсем свежие даты. Например вот: ... ТЗ - это святое. Даже если там совсем чудные вещи присутствуют. - Реально же, есть вопрос о неперенастраиваемом 7N1 и менее (7E1 - это тоже 8 битов и один стоп). Таких устройств сейчас практически не найти. Ваш пример тому подтверждение. Все устройства поддерживают 8N1. - И есть вопрос о применимости 7N1 в конкретных задачах, если устройства поддерживают оное. В этой части стоит смотреть конкретную практику по конкретным областям. Кто как, а я ни разу не сталкивался с требованием обязательного использования 7N1. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 5 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба ТЗ - это святое. Даже если там совсем чудные вещи присутствуют. - Реально же, есть вопрос о неперенастраиваемом 7N1 и менее (7E1 - это тоже 8 битов и один стоп). Таких устройств сейчас практически не найти. Ваш пример тому подтверждение. Все устройства поддерживают 8N1. Гугление показало что устройств с 7N1 дофига. Как правило эти устройства также поддерживают и 7E1, 7O1, многие (но не 100%) поддерживают 8*1. 7N1 проблема в большей части организационная. У клиента имеется оборудование, X лет назад все было сконфигурировано на 7N1 и работало с древней 386-й. Теперь 386-я сдохла (или не интегрируется в облако) и поставили мою железку, но ВСЕ устройства переконфигурировать никто не станет, клиенту подавай easy install. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 166 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба - Реально же, есть вопрос о неперенастраиваемом 7N1 и менее (7E1 - это тоже 8 битов и один стоп). Таких устройств сейчас практически не найти. Ваш пример тому подтверждение. Все устройства поддерживают 8N1. Там (по моей ссылке) для половины устройств идёт отсыл к документации. Учитывая что у двух в таблице уже указано 7E1, высока вероятность, что среди тех, для кого явно не указано есть и 7N1, а может и другие. Да и поиск в инете выдаёт множество воплей с проблемой подключения к устройствам менее 8 бит. 2. или предусмотреть установку внешнего приемника, позволяющего больше возможностей для конфигурирования чем интегрированный UART, у Максима много всяких UART-SPI микросхем. Путь хорош "не вырост"- На вырост, раз уж просматривается такая проблема, и всё равно - МК только выбирается, выбрать МК с железными 5,6,7 битами. Меньше гемора в будущем... Тем более что и вообще UART у STM плешивенький... Мы недавно, для устройства, которому потребуется много UART-ов, выбрали Tiva. 8 полноценных UART. И с битами и с FIFO всё в порядке. Хотя наверное не все можно задействовать одновременно из-за конфликтов по пинам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
prig 0 25 июня, 2015 Опубликовано 25 июня, 2015 · Жалоба Гугление показало что устройств с 7N1 дофига. Как правило эти устройства также поддерживают и 7E1 ... У клиента имеется оборудование, X лет назад все было сконфигурировано на 7N1 и работало с древней 386-й. Теперь 386-я сдохла (или не интегрируется в облако) и поставили мою железку, но ВСЕ устройства переконфигурировать никто не станет, клиенту подавай easy install. - Я говорил о "чистых" 7N1. И ваш ответ это только подтверждает. И по-другому быть не может. Начиная с 80-х, в любой микросхеме, поддерживающей 7N1, будет 7N2 или 8N1. 7E1 - это уже не проблема. Контроль чётности может быть аппаратным и программным. Физически, 7E1 вписывается в 8N1. - Похоже, что Вам сильно повезло. Привет из конца 80-х - начала 90-х? Тогда закупали всё, что ни попади, включая устаревшее западное барахло начала 80-х, а потом лепили как ни попади. А м.б. и не повезло. Если там сетка на RS485/422, то есть сильные подозрения, что это не 7N1, а 7E1 или 7N2(с этим тоже проблем нет). Используемый в этом оборудовании протокол не подскажете? И сразу всё встанет на свои места. ...Учитывая что у двух в таблице уже указано 7E1, высока вероятность ... Да и поиск в инете выдаёт множество воплей с проблемой подключения к устройствам менее 8 бит. На вырост, раз уж просматривается такая проблема, и всё равно - МК только выбирается, выбрать МК с железными 5,6,7 битами. Меньше гемора в будущем... ... Вероятнасть встретить "чистый" 7N1 близка к нулевой. Множество воплей касается преимущественно 7E1. Это действительно актуально. И даже понятно, почему именно (кто не понял, догадываемся). При этом, я не поленился проверить пару устройств из таблички. Нормальный джентельменский набор режимов уарта присутствует. Ну да ладно. Кто считает актуальным 7N1 и менее, пусть делает. 5 бит особенно пригодятся для занесения в табличку ТТХ. А вот на что действительно стоит обратить внимание - это 8E1. Да и аппаратный 7E1/8E1 не помешает. Скорее всего, и 7N1 пойдёт бонусом к такому комплекту. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться