Есть SIM900D, подключен после детального изучения этого форума, по даташиту. Т.е. до появления статуса на цифровых ногах нету никаких сигналов. На выводах 3В через управляющий стабилизатор. У контроллера инициализирована всего 1 нога - на подачу питания, остальные не инициализированы (в 3-м состоянии).
Проблема в том, что при подаче питания модулю через P-channel он не выдает стандартных своих фраз:
RDY
+CFUN: 1
+CPIN: READY
Call ready
Отвечает на команды нормально, сеть ловит, симку определяет, через 20-30 секунд можно считывать номера и т.д., включается и выключается через PWR_KEY нормально. При выключении кстати выдает "NORMAL POWER DOWN", все по фен-шую.
Почему отказывается выдавать стартовые посылки? Я его как-то раньше мучал, не помню как, но мало ли отключил сообщение этих сообщений (если такое вообще возможно). Но обнулил настройки командой AT&F0.
Все равно молчит как партизан.
Рядом лежит второй, мой самый первый, подключен неправильно, от балды, до включения на ногах разные состояния. Но он все выдает. Да, где-то есть много глюков (не отключается PWR_KEY-м, и вроде даже им не включался), но при старте отвечает отлично.
Это нормально?
rx3apf
Dec 15 2011, 08:27
Цитата(Apik @ Dec 15 2011, 12:22)

Почему отказывается выдавать стартовые посылки? Я его как-то раньше мучал, не помню как, но мало ли отключил сообщение этих сообщений (если такое вообще возможно). Но обнулил настройки командой AT&F0.
Все равно молчит как партизан.
Hint: а на какой скорости Вы ожидаете увидеть эти посылки ?
Отключите autobaud и будет счастье....
Цитата(rx3apf @ Dec 15 2011, 11:27)

Hint: а на какой скорости Вы ожидаете увидеть эти посылки ?
Отключите autobaud и будет счастье....
А разве я не должен увидеть хотя бы какой-нибудь мусор, если скорость не та?
Цитата(Apik @ Dec 15 2011, 11:30)

А разве я не должен увидеть хотя бы какой-нибудь мусор, если скорость не та?
Признаю свою ошибку. Хоть мусора и не было, но установка фиксированной скорости помогла. Видимо когда я мучил первый модуль, когда-то я ввел 1 раз эту настройку, она сохранилась в памяти, и я успешно забыл. Этот же модуль абсолютно новый.
Огромное спасибо.
rx3apf
Dec 15 2011, 08:42
Цитата(Apik @ Dec 15 2011, 12:36)

А разве я не должен увидеть хотя бы какой-нибудь мусор, если скорость не та?
Но на _какой_ скорости ? Модуль ведь не знает... Вот самые первые байты (от загрузчика) идут на 115200, а потом, если скорость неизвестна, то ничего не будет. Скорость не установлена.
Цитата(rx3apf @ Dec 15 2011, 11:42)

Но на _какой_ скорости ? Модуль ведь не знает... Вот самые первые байты (от загрузчика) идут на 115200, а потом, если скорость неизвестна, то ничего не будет. Скорость не установлена.
Ясно. Когда он мне отвечает на мои команды - он сам определяет скорость - первая команда-то AT - по ней ориентируется.
Я думал SIM900D все равно шлет мне ответы, даже не зная на какой скорости они мне нужны. Пусть хотя бы даже на 115200, когда мне надо 9600 - я и ждал хоть чего-то, пусть это будет хотя бы "bcA@# #Có"
Urbas81
Jan 3 2012, 06:49
Добрый день! Подскажите в чем может быть проблема, модуль SIM900D не связывается с компьютером ни на какой скорости, питание собрано на LM2576, но подключал и от батарейки Li-ion разницы никакой, согласование уровней делал на MAX3232 и 74LVC125 результат один и тот же, проверяю дозвоном на модуль, при этом на разных скоростях приходят крякозябры, и ни на одной из скоростей не удалось увидеть RING, подача команд AT+IPR=19200 и AT&W ни к чему не приводит, подключаю вместо SIM900D телефон все работает, еще подскажите сигнал статус обычно через сколько должен выставляться, у меня включается практически через секунду, это нормально? Питание на модуль 4,2 вольта, netlight моргает при включении и при регистрации через секунд 8, выход RI изменяется при входящем зонке, т.е модуль вроде живой, но ничего сделать с ним не могу уже вторая неделя пошла, помогите!
Aurochs
Jan 3 2012, 10:38
Очень похоже, что в модуле не скрабатывает автоопределитель скорости.
Чтобы он сработал нужно после включения модуля и установки статуса выждать не менее 2 сек. А потом посылать ему AT\r пока в ответ не придет OK.
Для получения подробной информации ищем по ключевому слову autobauding в документации на модем или в этом форуме.
Или в самом компе порт неправильно настроен.
Urbas81
Jan 3 2012, 13:45
Цитата(Aurochs @ Jan 3 2012, 12:38)

Очень похоже, что в модуле не скрабатывает автоопределитель скорости.
Чтобы он сработал нужно после включения модуля и установки статуса выждать не менее 2 сек. А потом посылать ему AT\r пока в ответ не придет OK.
Для получения подробной информации ищем по ключевому слову autobauding в документации на модем или в этом форуме.
Бомбил ему AT\r в цикле, на всех скоростях, ничего кроме крякозябров не приходило, по поводу автоопределения скорости нашел инфу насчет поманипулировать ножкой DTR на модуле, вечером попробую. А на сколько долго он может определять скорость? Я так понимаю, когда прийдет ОК, то нужно выдать AT+IPR=19200\r AT&W\r и при следующем включении таких проблем не будет уже?
Цитата(V125 @ Jan 3 2012, 14:29)

Или в самом компе порт неправильно настроен.
А что там какие-то особенности могут быть, работаю пока в COM Port Toolkit, с процессора еще не выдавал команды, пробовал другую терминальную программу, результат не поменялся, перебирал все доступные скорости.
_Артём_
Jan 3 2012, 14:31
Цитата(Urbas81 @ Jan 3 2012, 15:45)

А на сколько долго он может определять скорость?
Определяет мгновенно.
Цитата(Urbas81 @ Jan 3 2012, 15:45)

Я так понимаю, когда прийдет ОК, то нужно выдать AT+IPR=19200\r AT&W\r и при следующем включении таких проблем не будет уже?
Можно и не подавать, тогда скорость не запомнится - делать можно как удобнее, в зависимости от ситуации.
Цитата
AT+IPR=
AT&W
Да, верно - последовательность правильная.
Цитата(Urbas81 @ Jan 3 2012, 15:45)

А что там какие-то особенности могут быть, работаю пока в COM Port Toolkit, с процессора еще не выдавал команды, пробовал другую терминальную программу, результат не поменялся, перебирал все доступные скорости.
Наверное как всегда: либо есть контакт где не надо или наоборот.
Цитата(Urbas81 @ Jan 3 2012, 17:45)

А что там какие-то особенности могут быть, работаю пока в COM Port Toolkit, с процессора еще не выдавал команды, пробовал другую терминальную программу, результат не поменялся, перебирал все доступные скорости.
Накалывался. Включил контроль потока в СОМ1 на компе и забыл, хорошо так продрючился. Порт зависал, косячил. Проверьте установки в диспетчере устройств, мало ли.
Urbas81
Jan 3 2012, 19:09
Цитата(V125 @ Jan 3 2012, 17:37)

Накалывался. Включил контроль потока в СОМ1 на компе и забыл, хорошо так продрючился. Порт зависал, косячил. Проверьте установки в диспетчере устройств, мало ли.
Дело в том что, для связи сейчас используется переходник USB-COM на Attiny2313, у него на плате стоит кварц 12MHz, может ему точности не хватает? До много раз им пользовался, никогда проблем небыло, да и если закоротить его RX и TX данные возвращаются на любой скорости. Попробую с процессора ему команды выдать.
Urbas81
Jan 4 2012, 06:42
Соединил вчера Atmega16 на которой стоит кварц 11 059200 посылал AT команду на скорости 19200, так ничего и не дождался, сегодня попробую еще через один преобразователь, если не заведется, уже не знаю что и делать
Цитата(Urbas81 @ Jan 4 2012, 10:42)

Соединил вчера Atmega16 на которой стоит кварц 11 059200 посылал AT команду на скорости 19200, так ничего и не дождался, сегодня попробую еще через один преобразователь, если не заведется, уже не знаю что и делать

Нужна схема. Наверняка неправильное включение модуля.
Urbas81
Jan 6 2012, 10:06
Цитата(kan35 @ Jan 5 2012, 18:49)

Нужна схема. Наверняка неправильное включение модуля.
В понедельник вечером, после долгих попыток связаться при помощи натурального ком порта и МAХ3232 я увидел заветное "OK" еще б 10 секунд и я б сдался. Что на данный момент я выяснил, модуль связывается на всех скоростях с компьютером через настоящий ком порт и MAX3232 которая распаяна у меня на плате и запитана от 3 вольтоого cтабилизатора lp2980_im5-3 с управлением от Status, модуль связывается с компьютером через преобразователь USB-RS232 на микросхеме FTDI тоже на всех скоростях, когда подключаю самодельный переходник USB-RS232 ошибки, один раз удалось наладить связь на 9600, с Atmega через этот же MAX3232 связи нет ни на 19200 на на 9600, 2400. Теперь проблема как наладить связь через MAX3232 и Atmega. MAX3232 в обвязке сначала были электролиты 0.1 потом танталы 0.1 вчера поставил самые обычные неполярные, разницы нет. Кварц стоит уартовский, обмен по TX, RX без управления. Не могу пока понять, причина в уровнях сигналов, или в точности уарта?
Цитата
Не могу пока понять, причина в уровнях сигналов, или в точности уарта?
В драйвере hands.sys Ну вот нафига связывать модуль с мегой через мах??????????
Urbas81
Jan 6 2012, 11:30
Цитата(=F8= @ Jan 6 2012, 13:10)

В драйвере hands.sys Ну вот нафига связывать модуль с мегой через мах??????????
Для возможности сначала поработать с компьютером, посмотреть что к чему, да и проще запаять одну МС, чем городить на транзисторах.
Цитата(Urbas81 @ Jan 6 2012, 14:06)

В понедельник вечером, после долгих попыток связаться при помощи натурального ком порта и МAХ3232 я увидел заветное "OK" еще б 10 секунд и я б сдался. Что на данный момент я выяснил, модуль связывается на всех скоростях с компьютером через настоящий ком порт и MAX3232 которая распаяна у меня на плате и запитана от 3 вольтоого cтабилизатора lp2980_im5-3 с управлением от Status, модуль связывается с компьютером через преобразователь USB-RS232 на микросхеме FTDI тоже на всех скоростях, когда подключаю самодельный переходник USB-RS232 ошибки,
......
Не могу пока понять, причина в уровнях сигналов, или в точности уарта?
Сомнения в уровнях ? Скоп в помощь. Сомнения в скорости ? Телепаты, ау ? Ну кто ж может заочно сказать, как работает UART в самодельном программнореализованном мосте usb-uart ? Тактовой 12 MHz вполне достаточно для работы avrовского UART во всем ряде скоростей до 115200 включительно с достаточно высокой точностью (лучше 0.2%), если, конечно, U2X=1 (мост на FTDIшном чипе дает точно такую же точность, не больше и не меньше).
Если есть цифровой скоп, то длительность посылок тоже можно уточнить, до долей процента.
Urbas81
Jan 6 2012, 16:28
Нет осцила к сожалению, а что за U2X=1?
Цитата(Urbas81 @ Jan 6 2012, 20:28)

Нет осцила к сожалению, а что за U2X=1?
Режим повышенной скорости у UART в AVR. Если этот бит равен нулю, то скорость определяется как Fclk/(16*(N-1)), а если U2C=1, то вместо 16 подставить 8.
Urbas81
Jan 6 2012, 16:59
Цитата(rx3apf @ Jan 6 2012, 18:33)

Режим повышенной скорости у UART в AVR. Если этот бит равен нулю, то скорость определяется как Fclk/(16*(N-1)), а если U2C=1, то вместо 16 подставить 8.
попробовал, пока без изменений, спасибо за наводку.
Цитата(Urbas81 @ Jan 6 2012, 12:06)

Теперь проблема как наладить связь через MAX3232 и Atmega.
Никак.
Для связи SIM900 и контроллера микросхема преобразователя уровня RS232 не нужна, соответственно и работать не будет.
Urbas81
Jan 6 2012, 20:20
Цитата(SergOv @ Jan 6 2012, 20:58)

Никак.
Для связи SIM900 и контроллера микросхема преобразователя уровня RS232 не нужна, соответственно и работать не будет.
воткнул в качестве преобразователя уровней 74LVC125P, AVR отрабатывает команды с SIM900D, в обратную сторону тишина
Urbas81, ты бы показал , что там напаял. А то трудно понять. Я вот тоже люблю PC подключать через USB-UART к модулю, через развязку на диодах, одновременно с контроллером. Все работает.
alexdos
Jan 7 2012, 08:53
Urbas81, Вы бы выложили схему. А то разговоры неочём.
Urbas81
Jan 7 2012, 10:15
Цитата(alexdos @ Jan 7 2012, 10:53)

Urbas81, Вы бы выложили схему. А то разговоры неочём.
Та схемы как таковой нет, плата делалась на лету, составные части взяты с этого форума, будет время, попробую нарисовать.
Urbas81
Jan 9 2012, 18:32
Нашел причину, дело было не в скорости и уровнях, а в выдаче команд, попробовал по другому выдавать команды, все заработало, уровни согласовал с поощью 74LVC125.
Цитата(Urbas81 @ Jan 9 2012, 20:32)

Нашел причину, дело было не в скорости и уровнях, а в выдаче команд, попробовал по другому выдавать команды, все заработало, уровни согласовал с поощью 74LVC125.
Терминология, однако ...
Задом наперед выдавать, что ли ??
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.