Автоопределение скорости в преобразователях RS232->RS485

Hello Sergey!

27 Jun 03 09:53, Sergey G. Shipilov wrote to Tadas: [...]

SS> Обычно в примерах применения процессора производитель SS> любит давать реализацию последовательного протокола. SS> Чаще всего - с автоопределением скорости... SS> Метод простой - мастер передает заранее определенную SS> серию кодов до тех пор, пока не получит отклика от ведомого. SS> А тот, в свою очередь, пытается, меняя частоты, настроиться на SS> прием известного кода. Как поймал - так ответил. SS> Обычно в качестве тестового байта посылают что-то типа 0x55 или 0xAA.

Вредности ради :-) Возьми любую терминальную программу, состыкуйся с произвольным модемом и попробуй обнаружить тот самый тестовый байт ;-)

Автоопределение скорости - исключительно задача софта оконечного устройства, без участия "особенностей" писюкового софта. Hint: преамбула AT (at) для модемов - не просто так, при этом налагаются требования одинакового регистра для обоих символов...

73 & Cheerio! Andy.
Reply to
Andy Chernyshenko
Loading thread data ...

Hello, Sergey!

27 Июн 03 09:53, Sergey G. Shipilov -> Tadas: >>
Reply to
Dmitry Starkov

"Andy Chernyshenko" snipped-for-privacy@p326.f.n5020.z2.fidonet.org>

сообщил/сообщила в новостях следующее: news: snipped-for-privacy@p326.f.n5020.z2.ftn...

устройства,

регистра

Человек спросил - как можно сделать... Для простейших случаев, когда есть аппаратно реализованный UART, удобнее самопальный протокол с синхропоследовательностью и раскланиванием. А если стоит DSP - конечно, можно напрямую измерять интервалы и декодировать с первого знака...

Сергей.

Reply to
Sergey G. Shipilov

Hello, Vyacheslav! You wrote to Konstantin Morozov on Fri, 27 Jun 2003 08:46:39 +0000 (UTC):

VO> Что касательно сабжа - после "разборок" выяснилось - нету там VO> никакого автоопределения скорости. Просто когда на входе RS-232 VO> преобразователь видит лог "0" (+3..+12V), он включает передатчик VO> RS-485 на выдачу лог "0" VO> (дифференциальное отрицательное напряжение), когда на входе RS-232 VO> обнаруживается переход 0->1 передатчик RS-485 переводится на VO> некоторое время (обычно равное длительности бита на максимальной VO> скорости - типа 10 мкс для 115200) на выдачу лог "1", затем VO> отключается. VO> Затем лог "1" на линии удерживается слабенькими резисторами. VO> Все гениальное - просто :-) (C) - не мой :-)

Смотрел я ICP CON i-7520, кидал ему на передачу фиксированные байты на разных скоростях, все выглядит действительно так. Однако, наверное не все так просто. Внутри стоит self tune asic (как они его называют), для чего то же они его ставят. То что описано выше можно сделать на тривиальном одновибраторе. К тому же, зачем делать преобразователь с заведомо пониженной помехоустойчивостью, если того же самого можно добиться на обычном преобразователе, при установке максимальной скорости и работе на пониженных скоростях (в случае с преобразователями ADAM у меня на столе прекрасно работало). Вероятно такой способ применяется только в начале работы преобразователя, а дальше накапливается какая то статистика происходит постепенный переход в нормальный режим, в котором передается твердая единица, а не на растяжке. Еще хочется сказать, что преобразователи i-7520 успешно применяются в производственных условиях, и если бы все обстояло действительно так просто, то такого успеха не было бы.

With best regards, Serge.

Reply to
Serge Eremenko

Hello Sergey!

01 Jul 03 11:03, Sergey G. Shipilov wrote to Andy Chernyshenko: [...] SS> Человек спросил - как можно сделать...

Все есть в апликухах на кучу контроллеров общего применения.

SS> Для простейших случаев, когда есть аппаратно реализованный UART, SS> удобнее самопальный протокол с синхропоследовательностью и SS> раскланиванием. А если стоит DSP - конечно, можно напрямую измерять SS> интервалы и декодировать с первого знака...

Вообще-то, DSP в модемах занимается несколько другими (более серьезными) задачами. Связью с ПК заведует контроллер общего применения, который и определяет скорость обмена, в том числе. Посмотри, если найдешь, самые старые модемы протоколов V.22(bis) - там как правило в качестве Host Processor использовался классический mcs-51. И его вполне хватало для прямых измерений интервалов, что характерно ;-)

73 & Cheerio! Andy.
Reply to
Andy Chernyshenko

"Andy Chernyshenko" snipped-for-privacy@p326.f.n5020.z2.fidonet.org>

сообщил/сообщила в новостях следующее: news: snipped-for-privacy@p326.f.n5020.z2.ftn...

О чем я и написал :-)

старые

измерений

Так, почему же не хватит-то? Речь шла об АППАРАТНОМ USART. А на программном уровне анализа - нет проблем. Хоть на MCS-51, хоть на PIC'е (как правильно заметил - аппликухи имеются...) ;-)

Но вот что интересно - не верится как-то, что разработчики модема не стали использовать последователный порт MCS-51. Очень уж неудобно программно работать с последовательным каналом. Скорее, задействованы дополнительные ноги для начального программного анализа, а потом все-таки настраивается скорость передатчика... Отсюда вопрос - а ты сам знаешь, как это работает в модеме? Или только констатируешь факт применения?

Сергей

Reply to
Sergey G. Shipilov

Hello Andy!

Tuesday July 01 2003 22:51, Andy Chernyshenko sent a message to Sergey G. Shipilov:

AC> Вообще-то, DSP в модемах занимается несколько другими (более серьезными) AC> задачами. Связью с ПК заведует контроллер общего применения, который и AC> определяет скорость обмена, в том числе. Посмотри, если найдешь, самые AC> старые модемы протоколов V.22(bis) - там как правило в качестве Host AC> Processor использовался классический mcs-51. И его вполне хватало для AC> прямых измерений интервалов, что характерно ;-)

Hе только в самых стаpых. Вон у меня лежит GVC 14400 v.32/v.42bis, по поpту до

115200, внутpи (кpоме RC144DPI) - клон 8031 от Winbond с тактовой 22.118МГц.

■ Exit light, Enter night... See you, Сергей.

Reply to
Sergey Kosaretskiy

"Andy Chernyshenko" snipped-for-privacy@p326.f.n5020.z2.fidonet.org>

сообщил/сообщила в новостях следующее: news: snipped-for-privacy@p326.f.n5020.z2.ftn...

анализировать

последний

Но тогда первый байт все равно пропадает для UART 'а. Или первый байт надо весь принять программно?

Сергей

Reply to
Sergey G. Shipilov

Hello Sergey!

08 Jul 03 09:15, Sergey G. Shipilov wrote to Andy Chernyshenko:

SS> Hо тогда первый байт все равно пропадает для UART 'а. SS> Или первый байт надо весь принять программно?

Программно, естественно.

73 & Cheerio! Andy.
Reply to
Andy Chernyshenko

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.