artemkad 88 29 марта, 2018 Опубликовано 29 марта, 2018 · Жалоба Копаясь по переводу одного изделия с Sim900 на Sim800 я тут обнаружил один ма-а-а-а-ленький косяк с большими последствиями. Как я вижу у Sim800 сильно выше требования по точности установки скорости UART-а - явно допуска +/-1% недостаточно. Наблюдаю на: Revision:1308B09SIM800M32 Revision:1418B05SIM800F32 Так и должно быть или как? Каковы требования на точность UART-а? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 29 марта, 2018 Опубликовано 29 марта, 2018 (изменено) · Жалоба А из чего сделан такой вывод и почему даже 1% недостаточен (учитывая, что и при 2% общего разбега ошибка на стопбите вполне приемлема) ? Можно ожидать, что автодетект скорости будет промахиваться, но его вообще лучше не использовать без крайней необходимости. Каких-то особых требований на допуск скорости что-то не наблюдаю ни для 300, ни для 900, ни для 800. Изменено 29 марта, 2018 пользователем rx3apf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 88 29 марта, 2018 Опубликовано 29 марта, 2018 · Жалоба А из чего сделан такой вывод и почему даже 1% недостаточен (учитывая, что и при 2% общего разбега ошибка на стопбите вполне приемлема) ? Можно ожидать, что автодетект скорости будет промахиваться, но его вообще лучше не использовать без крайней необходимости. Каких-то особых требований на допуск скорости что-то не наблюдаю ни для 300, ни для 900, ни для 800. Модуль начинает в диапазоне температур видеть ошибки(вплоть до потери связи) от контроллера без кварца с тактовым RC-генератором(уход оценочно не более 1%). Даже пришлось включить ATE1 что-бы точно убедиться чего там модуль принимает. При этом все сообщения от модуля контроллер видит корректно, в отладочный UART тот-же контроллер кидает без ошибок и терминал подключенный на шину обмена ошибок от контроллера не замечает. Автодетект, естественно, выключен. Скорость 9600. ЗЫ. Плата и зимой и летом в автомобилях тысячами много лет работала с Sim900 без вопросов. ЗЗЫ.В принципе откаллиброваться по принятым символам проблем особых не составляет, но грабли, однако, неожиданные... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sobr 0 29 марта, 2018 Опубликовано 29 марта, 2018 · Жалоба ...от контроллера без кварца с тактовым RC-генератором(уход оценочно не более 1%)...А что это за контроллер? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 88 30 марта, 2018 Опубликовано 30 марта, 2018 · Жалоба А что это за контроллер? xmega128a3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
CADiLO 12 30 марта, 2018 Опубликовано 30 марта, 2018 · Жалоба Как и в SIM900 рекомендован общий разбег не более 2% при фиксированной скорости. На атмелах наблюдалась фигня при кварце 20 мгц и скорости 115200, приходилось ставить 18.432 мгц. У нувотоновского N76E003 без кварца как раз +/- 2% во всем диапазоне температур. Гоняли его в термокамере с SIM800C от -25 до +60, сбоев в обмене не было. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 30 марта, 2018 Опубликовано 30 марта, 2018 · Жалоба А сам температурный дрейф частоты встроенного RC-генератора не меряли, просто ради интереса? Экспериментировал в своё время с LPC900 и некоторыми силабсами, вписались с хорошим запасом. У первых при заявленных +/- 2,5% (в другой модели - 1%) отклонение не превышало 0,15% от -40 до +85, у вторых - 0,4% при заявленных 2%. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 30 марта, 2018 Опубликовано 30 марта, 2018 (изменено) · Жалоба Я бы начал с детального измерения времянок. В свое время, когда был спор о скорости для SIM900, таким измерением я удостоверился, что реальные скорости у модуля несколько отличаются от "эталонного" ряда (что было вполне ожидаемо, поскольку давно уже практикуется в качестве опорного номинала 27 MHz/13, т.е. на -0.16%). И припоминается, что у AVR (XMEGA не щупал, работаю с MEGA) "в диапазоне" опорник все ж гуляет больше. В любом случае, все проверяется любым цифровым скопом буквально за несколько минут. В особо тяжелых случаях можно и какой-то отдельный измеритель смастерить, чтобы закрыть вопрос. И при желании вполне можно попробовать создать такую ситуацию, перестроив тактовую или использовав внешнюю (что более предсказуемо) достичь такого же эффекта (пропуски, ошибки) - будем знать границы устойчивой работы UART. Изменено 30 марта, 2018 пользователем rx3apf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Harbinger 10 30 марта, 2018 Опубликовано 30 марта, 2018 · Жалоба В особо тяжелых случаях можно и какой-то отдельный измеритель смастерить, чтобы закрыть вопрос. Касательно МК - выводил наружу выход таймера и мерял его частоту, гоняя по температуре. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 30 марта, 2018 Опубликовано 30 марта, 2018 · Жалоба Измерить частоту и ее девиацию от температуры и напряжения - это, на самом деле, еще полдела. Там, где внутри еще и PLL, надо смотреть и на времянки разгона-установления (я так хорошо нарвался на новых PIC16 - привык, что IntRC стартует сразу с нужной частотой, а с PLL все совсем иначе). Если, конечно, хост в сон не уходит, этим можно пренебречь. Еще возможные модулезависимые факторы - радиочастотные наводки, сбивающие тот же PLL, к примеру. Или дергающие питание. Да и на стык UARTов, если там есть переход уровней, надо бы глянуть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться