|
SIM900D - проблемы с рестартом |
|
|
|
Jul 25 2011, 17:20
|

извечный пессимист
    
Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125

|
Возникла такая проблема, пытаюсь сделать перезагрузку модуля, запускаю процедуру выключения модуля - даю сигнал на PWR_KEY - 2с, затем жду пока статус станет в ноль, делаю паузу 2 сек и пытаюсь включить модуль, вижу что статус поднимается на очень короткое время (после процедуры включения), а потом опять падает в ноль и больше модуль не отзывается, только полный рестарт, со снятием питания и помогает. После снятия и подачи питания, все нормально происходит, все стартует, но вот после выключения никак. Уже второй вечер сижу ломаю голову ЗЫ осциллограф показывает, что все времена выдержаны как в документации, очевидно есть какой-то нюанс который я упустил.
--------------------
Slaves are those of this world Given freedom to lay chains upon The Master The wolf is no longer free Release the chains and come for me
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 25)
|
Jul 26 2011, 05:50
|
Группа: Новичок
Сообщений: 9
Регистрация: 9-07-11
Пользователь №: 66 141

|
Похоже на фантомную запитку модуля через другие ноги вашего SIM900D (тх,rx....)
|
|
|
|
|
Jul 26 2011, 09:22
|

извечный пессимист
    
Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125

|
Цитата(CADiLO @ Jul 26 2011, 12:53)  ага - а стабилизатор небось от статуса не управляется и 2.8 там есть и при модуле отключеном поверкеем ?
для формирования Vext которого нет в SIM900D (это ваши 2.8) нужно управляемый от STATUS стабилизатор. иначе имеете фантомную запитку и как следствие непонятки с работой модуля
пример ниже Да именно так, питание никак не управляется и есть всегда, в общем идею понял, буду смотреть как питание выключать, хотя в данной схеме это не просто. Тогда такой вопрос, паразитная запитка может происходить только по входу, или по выходу SIM900D тоже? Я просто схемотехнику модуля незнаю, поэтому и такой вопрос. В принципе я могу, в момент рестарта, все выходы с процессора на модем перевести в ноль. Либо надо все-таки полностью питание выключать?.
--------------------
Slaves are those of this world Given freedom to lay chains upon The Master The wolf is no longer free Release the chains and come for me
|
|
|
|
|
Jul 26 2011, 09:48
|

Гуру
     
Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988

|
Не в ноль. Как вариант можно на вход. При поданном питании на модуль и до появления STATUS на ЦИФРОВЫХ ВХОДАХ модуля не должно быть НИКАКИХ уровней. Ни нуля ни еденицы - именно третье состояние. SIM900D не имеет выхода Vext который есть в SIM900 - там проще. Как согласование можно использовать ключи с общим затвором. Естественно на "высокую" и "низкую" стороны вписываете свои напряжения. http://we.easyelectronics.ru/Shematech/sog...-ustroystv.htmlНо для SIM900D все равно прийдется делать внешний Vext. Вариантом в сторону модуля может быть микросхема с питанием от 2.8 вольта, у которой есть CS - вот на него и подаем STATUS. Ну а самое оптимальное использовать контроллер с 3.0 вольт питания и не заморачиваться с согласованием. Кстати на модуле достаточные пульсации будут - не боитесь питать контроллер и модуль с одного источника? Контроллер может сбоить по питанию.
--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
|
|
|
|
|
Jul 26 2011, 12:12
|

извечный пессимист
    
Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125

|
Цитата(CADiLO @ Jul 26 2011, 13:48)  Кстати на модуле достаточные пульсации будут - не боитесь питать контроллер и модуль с одного источника? Контроллер может сбоить по питанию. Ясно, спасибо, буду пробовать, может получится отбится переводом выходов на ввод, если нет, учту в следующем релизе схемы. С пульсациями вроде все нормально, разводил аккуратно и блокировачных конденсаторов не жалел, и осциллограф ничего криминального не видит и работает нормально без сбоев. Цитата(ArtemKAD @ Jul 26 2011, 16:04)  А модуль часом при этом не ругается - например на низкое питание? Или на высокое питание - если стоит в цепи обратной связи основного стабилизатора лишний кондёр. Нет не ругается, да и осциллографом смотрел переходной режим, выбросов не было.
--------------------
Slaves are those of this world Given freedom to lay chains upon The Master The wolf is no longer free Release the chains and come for me
|
|
|
|
|
Jul 26 2011, 13:03
|

извечный пессимист
    
Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125

|
Цитата(CADiLO @ Jul 26 2011, 16:37)  >>>>может получится отбится переводом выходов на ввод
тут точно надо убирать постоянную запитку 2.8в. если вместо TL431 паять стабилизатор управляемый и один проводок со STATUS пустить, то как раз должно излечиться. кстати вы же сосед по городу - заедьте к нам возьмите TC1055-3.0 можем сразу и запаять - проверить Если не получится так и сделаю, благо ехать недалеко, единственное все-таки не могу понять, ведь при первоночальном старте (после снятия питания), все работает и модем стартует, а вот при рестарте нет, это мне так "везет" или это именно особенность модема? На будущее, дабы потом глупых вопросов не задавать.
--------------------
Slaves are those of this world Given freedom to lay chains upon The Master The wolf is no longer free Release the chains and come for me
|
|
|
|
|
Jul 27 2011, 08:30
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 25-01-05
Из: Мск регион.
Пользователь №: 2 161

|
Цитата(Stanislav_S @ Jul 26 2011, 20:29)  Отрезал DTR от модема, рестарт заработал. Пока временно пойдет, но на будущее урок усвоил  Всем спасибо за обсуждение. Добавлю, короче тут тоже решили заморочиться с честным согласованием 3.3в микроконтроллера и sim900d. наворотил схему на SN74LVC07AD с управлении VDD_EXT от STATUS - и закопался в ловле такого же нестабильного включения... , получил похожие симптомы - модуль то включается то нет., все вылечил переходом с древней прошивки 1137B03SIM900D64_ST на прошивку 1137B08SIM900D64_ST. на прошивке 08, модуль нормально стартует даже при присутствии VDD_EXT до появления сигнала status. но остались еще вопросы: даже если VDD_EXT я формирую по появлению STATUS, то засчет того что RXD, и RTS и DTR которые входят в модем объединены через резисторы подтяжки то ловим следующий финт: до появления STATUS модем сам пуллапит DTR к внутреним 2.8(это осциллограф показал =) ) далее через резисторы подтяжки (если смотреть схему это R82. R94. R94) мы получаем на RXD RTS модема не третие состояние а хз что. А уж потом при появлении STATUSa и соотв. появлении VDD_EXT мы получаем рабочие уровни. Объясните мне дураку почему на RXD модема нельзя держать лог 0 до появления status через резистор в 10К допустим? что там UART break словит или что? Почему именно Высокоимпедансное состояние и еще вопросы какое фантомное питание может быть через резисторы в 10к если будет VDD_EXT постоянно присутствовать а не формироваться по сигналу STATUS. Что это вообще за фантомное питание =) ну присутствует у меня на входе порядка 1в через резисторы 10к, что там от него может запитаться? при попытке потребления все напряжение на резисторе и останется. Бест Регардз МТ. upd: еще сюда в кучу вопрос в мануале HD вер 1.02 написано DTR pin has been pulled up. в мануале HD 2.0. об этом тишина. вопрос нада ли пулапить DTR внешним резистором.
Эскизы прикрепленных изображений
|
|
|
|
|
Jul 27 2011, 10:26
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 25-01-05
Из: Мск регион.
Пользователь №: 2 161

|
Цитата(CADiLO @ Jul 27 2011, 13:08)  Еще один полез в дебри вместо выполнения рекомендаций.....
Уже неоднократно на форуме все разжевывалось зачем да почему. Нежелающие поступать так как рекомендовано, гарантировано в будущем получают глюки модуля с вероятностью 100%. А потом начинают кричать что модули дерьмовые... Надоело - чесное слово....
По пину DTR - читаем здесь. SIM900_Serial Port_Application Note_V1.02.pdf Обясни как формировать VDD_EXT для sim900D тогда? если через внешнии LDO и по появлению статуса, то я расписал что происходит - никакого высокоимедансного состояния таким макаром до выставления сигнала статус на входах RTS RXD не получается. Тока не нада опять говорить возьми 3 вольт микроконтроллер и держи пины Z пока статус не появиться. Инетересно посмотреть бы диаграмку формирования VDD_EXT от модема sim900, когда статус появляется относительно появления VDD_EXT, насколько поже или одновременно?
|
|
|
|
|
Jul 27 2011, 10:46
|

Гуру
     
Группа: Свой
Сообщений: 6 023
Регистрация: 26-08-05
Из: Днепр
Пользователь №: 7 988

|
>>>Обясни как формировать VDD_EXT для sim900D тогда? если через внешнии LDO и по появлению статуса, то я расписал что происходит - никакого высокоимедансного состояния таким макаром до выставления сигнала статус на входах RTS RXD не получается.
Вы смешали два варианта стыковки
1. Vext не нужен.
Мы стыкуем 3.0 вольта контроллер и модуль. Ноги порта соединяем напрямую, поверкей через ключ с ОК.
Включили общее питание, у контроллера по умолчанию ноги на ввод (или в третье состояние). Вот так пусть и остаются до появления STATUS. Включили модуль импульсом на поверкей и ждем STATUS. После его появления инициализируем порт чего надо на вывод - и работаем
При выключении обратная процедура - убрали сигналы с порта и отключили модуль.
2. Vext нужен.
Мы стыкуем 3.3 или 5.0 вольта контроллер и модуль.
Ноги порта соединяем через элементы с OK или полевики с общим затвором. Для 3.3в преобразователи только в сторону модуля, для 5.0 в обе, поверкей через ключ с ОК.
Резисторы подтяжки со стороны модуля цепляем на сформированый Vext - рисунок с TC1055 на предыдущей странице. Тогда до появления STATUS опять же на модуле гарантировано не будет уровней.
Включили, у контроллера по умолчанию ноги пофигу как. Включили модуль импульсом на поверкей и ждем STATUS. После его появления порт готов, так как появится напряжение делающее еденицу.
>>>Тока не нада опять говорить возьми 3 вольт микроконтроллер и держи пины Z пока статус не появиться.
это кстати самое правильное решение. вы забываете что до появления STATUS на цифровых портах модуля не должно быть НИКАКИХ уровней. нарушение этого требования ведет к неправильной работе модуля вплоть до выхода из строя.
>>>Инетересно посмотреть бы диаграмку формирования VDD_EXT от модема sim900, когда статус появляется относительно появления VDD_EXT, насколько поже или одновременно?
Абсолютно синхронно, что позволяет не анализировать STATUS для согласований с применением ОК, как это было у SIM300C (асинхронно) .
--------------------
Не можна втрачати надію. Не можна здаватися до останньої миті. Можливо саме вона, остання мить, принесе весну, яка стане початком нового життя.
|
|
|
|
|
Jul 27 2011, 11:16
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 25-01-05
Из: Мск регион.
Пользователь №: 2 161

|
Цитата(CADiLO @ Jul 27 2011, 14:46)  >>>Обясни как формировать VDD_EXT для sim900D тогда? если через внешнии LDO и по появлению статуса, то я расписал что происходит - никакого высокоимедансного состояния таким макаром до выставления сигнала статус на входах RTS RXD не получается.
Вы смешали два варианта стыковки
1. Vext не нужен.
Мы стыкуем 3.0 вольта контроллер и модуль. Ноги порта соединяем напрямую, поверкей через ключ с ОК.
Включили общее питание, у контроллера по умолчанию ноги на ввод (или в третье состояние). Вот так пусть и остаются до появления STATUS. Включили модуль импульсом на поверкей и ждем STATUS. После его появления инициализируем порт чего надо на вывод - и работаем
При выключении обратная процедура - убрали сигналы с порта и отключили модуль.
2. Vext нужен.
Мы стыкуем 3.3 или 5.0 вольта контроллер и модуль.
Ноги порта соединяем через элементы с OK или полевики с общим затвором. Для 3.3в преобразователи только в сторону модуля, для 5.0 в обе, поверкей через ключ с ОК.
Резисторы подтяжки со стороны модуля цепляем на сформированый Vext - рисунок с TC1055 на предыдущей странице. Тогда до появления STATUS опять же на модуле гарантировано не будет уровней.
Включили, у контроллера по умолчанию ноги пофигу как. Включили модуль импульсом на поверкей и ждем STATUS. После его появления порт готов, так как появится напряжение делающее еденицу.
>>>Тока не нада опять говорить возьми 3 вольт микроконтроллер и держи пины Z пока статус не появиться.
это кстати самое правильное решение. вы забываете что до появления STATUS на цифровых портах модуля не должно быть НИКАКИХ уровней. нарушение этого требования ведет к неправильной работе модуля вплоть до выхода из строя.
>>>Инетересно посмотреть бы диаграмку формирования VDD_EXT от модема sim900, когда статус появляется относительно появления VDD_EXT, насколько поже или одновременно?
Абсолютно синхронно, что позволяет не анализировать STATUS для согласований с применением ОК, как это было у SIM300C (асинхронно) . Ок спасибо Вам за ответ, в принципе я отзвонился в суппорт МТ-Систем, там сказали, что в момент когда модуль уже начинает сам пуллапит DTR к внутренним 2.8в (а это он начинает делать где то за секунду-полторы перед выставлением STATUS), а VDD_EXT еще не включен из-за отсутствия STATUS, на входах RXD и RTS не страшно присутствие сигналов(DTR на них влияет через резисторы поддяжки), за счет того что уже включен внутренний LDO.
|
|
|
|
|
Jul 27 2011, 11:31
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 25-01-05
Из: Мск регион.
Пользователь №: 2 161

|
Цитата(ArtemKAD @ Jul 27 2011, 15:11)  Для тех, кто любит экономить ноги - можно ждать активности модуля на его RxD Никто ведь не мешает включить приемник USART-а и ожидать служебную последовательность в качестве признака успешного включения модуля... наверное Вы хотели написать ждать активности на ноге TXD модуля =). Там эта активность начианает проявляться до появления STATUS +) и если ответить этой активности(определенным образом) - модем уходит в доунлоад моде. У sim900d RXD не запуллапен к 3В внутри модуля, поэтопу его нада пуллапить к 3в (ака VDD_EXT) которые должны появиться по сигналу STATUS. Цитата(CADiLO @ Jul 27 2011, 15:18)  Тоже вариант. Но если люди ленятся проанализировать уровень, то еще больше поленятся разбирать символы из порта.  >>>на входах RXD и RTS не страшно присутствие сигналов(DTR на них влияет через резисторы поддяжки), за счет того что уже включен внутренний LDO. внутренний LDO (на котором висят резисторы подтяжки в самом модуле) включится синхронно со статусом - можете проверить как проверить? я вижу осциллографом, что что DTR пуллапиться к 2.8вольтам за 2 секунды перед выставлением STATUS модемом. SIM900D. Это говорит оо том что STATUS имхо формируется программно процом уже после того как все стартанет, а пуллап включается в момент инициализации уарта. еще уж вопросы раз начали=) В sim900d_hd_v1.02.pdf на sim_data не было конденсатора в 22пф в sim900d_hardware design_v2.00.pdf sim_data он уже появился =) ставить? и насчет прошивок: где можно посмотреть изменения 1137B03SIM900D64_ST от 1137B08SIM900D64_ST.
|
|
|
|
|
Jul 27 2011, 12:42
|
Профессионал
    
Группа: Свой
Сообщений: 1 508
Регистрация: 26-06-06
Из: Киев
Пользователь №: 18 364

|
Цитата наверное Вы хотели написать ждать активности на ноге TXD модуля =).  ... угу... Цитата Там эта активность начианает проявляться до появления STATUS и если ответить этой активности(определенным образом) - модем уходит в доунлоад моде. Не начинается. Для перехода в режим программирования обмен в первые 50мс после подачи питания на модуль начинает внешнее устройство байтом синхронизации. Если байта нет, то модуль и не дергается... Служебная последовательность “00 49 49 49 49 FF FF FF FF” проходит уже после Status-a. А если выключить автоопределение скорости, то можно ловить вполне вменяемый RDY ...
|
|
|
|
|
Jul 27 2011, 13:17
|
Участник

Группа: Свой
Сообщений: 65
Регистрация: 25-01-05
Из: Мск регион.
Пользователь №: 2 161

|
Цитата(ArtemKAD @ Jul 27 2011, 16:42)   ... угу... Не начинается. Для перехода в режим программирования обмен в первые 50мс после подачи питания на модуль начинает внешнее устройство байтом синхронизации. Если байта нет, то модуль и не дергается... Служебная последовательность “00 49 49 49 49 FF FF FF FF” проходит уже после Status-a. А если выключить автоопределение скорости, то можно ловить вполне вменяемый RDY ... аа оки, а то я смотрю flashloader после нажатия кнопки старт, постоянно шлет в порт байты=) видать хочет успеть перевести модуль в режим доунлоад =)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|