Перейти к содержанию
    

Требования UART Sim800

Копаясь по переводу одного изделия с Sim900 на Sim800 я тут обнаружил один ма-а-а-а-ленький косяк с большими последствиями.

Как я вижу у Sim800 сильно выше требования по точности установки скорости UART-а - явно допуска +/-1% недостаточно.

Наблюдаю на:

Revision:1308B09SIM800M32

Revision:1418B05SIM800F32

Так и должно быть или как? Каковы требования на точность UART-а?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А из чего сделан такой вывод и почему даже 1% недостаточен (учитывая, что и при 2% общего разбега ошибка на стопбите вполне приемлема) ? Можно ожидать, что автодетект скорости будет промахиваться, но его вообще лучше не использовать без крайней необходимости. Каких-то особых требований на допуск скорости что-то не наблюдаю ни для 300, ни для 900, ни для 800.

Изменено пользователем rx3apf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А из чего сделан такой вывод и почему даже 1% недостаточен (учитывая, что и при 2% общего разбега ошибка на стопбите вполне приемлема) ? Можно ожидать, что автодетект скорости будет промахиваться, но его вообще лучше не использовать без крайней необходимости. Каких-то особых требований на допуск скорости что-то не наблюдаю ни для 300, ни для 900, ни для 800.

Модуль начинает в диапазоне температур видеть ошибки(вплоть до потери связи) от контроллера без кварца с тактовым RC-генератором(уход оценочно не более 1%). Даже пришлось включить ATE1 что-бы точно убедиться чего там модуль принимает. При этом все сообщения от модуля контроллер видит корректно, в отладочный UART тот-же контроллер кидает без ошибок и терминал подключенный на шину обмена ошибок от контроллера не замечает.

Автодетект, естественно, выключен. Скорость 9600.

ЗЫ. Плата и зимой и летом в автомобилях тысячами много лет работала с Sim900 без вопросов.

ЗЗЫ.В принципе откаллиброваться по принятым символам проблем особых не составляет, но грабли, однако, неожиданные...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...от контроллера без кварца с тактовым RC-генератором(уход оценочно не более 1%)...
А что это за контроллер?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как и в SIM900 рекомендован общий разбег не более 2% при фиксированной скорости.

На атмелах наблюдалась фигня при кварце 20 мгц и скорости 115200, приходилось ставить 18.432 мгц.

 

У нувотоновского N76E003 без кварца как раз +/- 2% во всем диапазоне температур.

Гоняли его в термокамере с SIM800C от -25 до +60, сбоев в обмене не было.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А сам температурный дрейф частоты встроенного RC-генератора не меряли, просто ради интереса?

Экспериментировал в своё время с LPC900 и некоторыми силабсами, вписались с хорошим запасом. У первых при заявленных +/- 2,5% (в другой модели - 1%) отклонение не превышало 0,15% от -40 до +85, у вторых - 0,4% при заявленных 2%.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я бы начал с детального измерения времянок. В свое время, когда был спор о скорости для SIM900, таким измерением я удостоверился, что реальные скорости у модуля несколько отличаются от "эталонного" ряда (что было вполне ожидаемо, поскольку давно уже практикуется в качестве опорного номинала 27 MHz/13, т.е. на -0.16%).

 

И припоминается, что у AVR (XMEGA не щупал, работаю с MEGA) "в диапазоне" опорник все ж гуляет больше. В любом случае, все проверяется любым цифровым скопом буквально за несколько минут. В особо тяжелых случаях можно и какой-то отдельный измеритель смастерить, чтобы закрыть вопрос.

 

И при желании вполне можно попробовать создать такую ситуацию, перестроив тактовую или использовав внешнюю (что более предсказуемо) достичь такого же эффекта (пропуски, ошибки) - будем знать границы устойчивой работы UART.

Изменено пользователем rx3apf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В особо тяжелых случаях можно и какой-то отдельный измеритель смастерить, чтобы закрыть вопрос.

Касательно МК - выводил наружу выход таймера и мерял его частоту, гоняя по температуре.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Измерить частоту и ее девиацию от температуры и напряжения - это, на самом деле, еще полдела. Там, где внутри еще и PLL, надо смотреть и на времянки разгона-установления (я так хорошо нарвался на новых PIC16 - привык, что IntRC стартует сразу с нужной частотой, а с PLL все совсем иначе). Если, конечно, хост в сон не уходит, этим можно пренебречь.

 

Еще возможные модулезависимые факторы - радиочастотные наводки, сбивающие тот же PLL, к примеру. Или дергающие питание. Да и на стык UARTов, если там есть переход уровней, надо бы глянуть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...