Полная версия этой страницы:
Sim900 uart
Mad-man
Apr 5 2011, 22:44
Что-то у меня фигня лезет в терминал, когда дергаю PWRKEY. перепробовал все скорости 1200/4800/9600/19200/38400/57600/115200 при 8n1. По-умолчанию автобауд же, должен работать на любой. UART-usb конвертер замечательно работал с 300cz
Запаяно питание, земля, PWRKEY антенна, TXD, ноги с flow control болтаются в воздухе
что-то не хватает или я что-то не так делаю
хелп
1. >>>>Что-то у меня фигня лезет в терминал, когда дергаю PWRKEY. - что именно, что-то конкретное или разное???
2. UART-usb - какое питание буфера со стороны UART?
3. PWRKEY - на кнопку или как ?
Mad-man
Apr 6 2011, 07:30
Цитата(CADiLO @ Apr 6 2011, 09:05)

1. >>>>Что-то у меня фигня лезет в терминал, когда дергаю PWRKEY. - что именно, что-то конкретное или разное???
2. UART-usb - какое питание буфера со стороны UART?
3. PWRKEY - на кнопку или как ?
1. Нет! Каждый раз одно и тоже. На больших скоростях какие-то последовательности букв (одинаковых).
На низких вообще ничего нет. Осциллографа нету (((
2. Питание со стороны UART 2.9в. C sim300cz не было проблем
3. PWRKEY соединяю руками, но модуль точно включается и выключается. В момент включения модуля по PWRKEY появляется с десяток букв непонятных в терминале (одних и тех же).
Подпаял SIM. Регистрируется в сети. На звонок в терминале вообще тишина (RING???)
Ясно.
команды подаете большими буквами или маленькими ?

а по поводу одних и тех же букв написано в документации:
Note: A HEX string such as "00 49 49 49 49 FF FF FF FF" will be sent out through serial port at the baud rate of 115200 immediately after SIM900 is powered on. The string shall be ignored since it is used for synchronization with PC tool.
В SIM900 при включеном автободинге первая команда должна быть AT - и ОБЯЗАТЕЛЬНО БОЛЬШИМИ символами.
Потом можете переключиться на фиксированую скорость и давать команды маленькими буквами.
Но рекомендую работать только большими - некоторые параметры требуют набор именно большими символами ( например "IRA" или "GSM") и тогда не будет путаницы.
Ну и CR/LF (0D 0A) в конце ввода не забывайте
Mad-man
Apr 6 2011, 07:50
дадада!!!
Что-то вроде этого 3 или 4 одного иероглифа, 3 или 4 другого )
Спасибо, буду курить доки. Я бегло просмотрел sim300/sim900 compatible и существенных отличий не нашел )
Aqualion
Apr 6 2011, 08:09
Цитата(CADiLO @ Apr 6 2011, 10:40)

Ну и CR/LF (0D 0A) в конце ввода не забывайте
Обязательно пару или достаточно 0D?
Написать в форум и ждать ответа уже стало быстрее чем открыть документацию и прочитать.
.......... To terminate a Command line enter <CR>.
Commands are usually followed by a response that includes. "<CR><LF><response><CR><LF>"
Throughout this document, only the responses are presented, <CR><LF> are omitted intentionally.
Aqualion
Apr 6 2011, 09:48
Так ведь потому и вопрос, что в доке написано, что команды заканчивать CR (0D), а уже сим отвечает заканчивая парой CR LF.
Значит так и надо делать.
Просто иногда встречаются терминалы которые вообще не выдают 0D, а есть которые автоматом выдают сразу 0D 0A.
Вот на это и нужно обратить внимание, чтобы было правильно
Еще вопрос, чтобы не размножаться.
А как из встроенной программы поменять скорость UART и DEBUG?
Теоретически, нужно послать команду на смену параметров в ядро - типа SendToModem("AT+IPR=9600",size), но непонятно, для какого порта при этом изменится скорость, а может для обоих одновременно?
Требуется установить разные скорости для (UART, DEBUG), возможно ли это?
Можно еще отправить эту команду в нужный порт, но наверно, при этом строка будет просто выведена "наружу"...
Тоже парился с УАРТ. Сперва надо проверить, есть ли питание на конвертере. потом - не перепутал ли ноги (ТХ соединить РХ и наоборот соответственно). дальше надо выставить в терминалке все по умолчанию. Команды, как сказал CADILO, надо подавать только с заглавных букв. насчет питания конвертера, у меня все работает и на пяти вольтах. Еще у меня команды не отправлялись из-за того, что был запитан пин VCHG модуля 5 вольтами. и из-за этого постоянно горел светодиод НЕТЛАЙТ.
Цитата(ap77 @ Jul 2 2011, 16:41)

А как из встроенной программы поменять скорость UART и DEBUG?
Теоретически, нужно послать команду на смену параметров в ядро - типа SendToModem("AT+IPR=9600",size), но непонятно, для какого порта при этом изменится скорость, а может для обоих одновременно?
Требуется установить разные скорости для (UART, DEBUG), возможно ли это?
Можно еще отправить эту команду в нужный порт, но наверно, при этом строка будет просто выведена "наружу"...
Ответ:
перед переключением ebdat9_03SetModemdataToFL(TRUE); инициализировать скорости портов, например так
ebdat7_01DebugTrace("AT+IPR=115200\r\n");
ebdat9_02SendToSerialPort("AT+IPR=9600\r\n", sizeof("AT+IPR=9600\r\n"));
Цитата(ap77 @ Jul 9 2011, 15:45)

Ответ:
перед переключением ebdat9_03SetModemdataToFL(TRUE); инициализировать скорости портов, например так
ebdat7_01DebugTrace("AT+IPR=115200\r\n");
ebdat9_02SendToSerialPort("AT+IPR=9600\r\n", sizeof("AT+IPR=9600\r\n"));
Поправка.
И все-же скорость порта меняется только для UART (порт1), командой отправки в модем AT+IPR.
Приведенная выше последовательность тоже работает, но только для SerialPort.
Скорость DebugPort мне изменить не удалось. Работает на 115200.
Осталось неясно, как можно изменить скорость порта Debug из "встроенной программы". ((
CADiLO
Jul 11 2011, 05:55
Нельзя - пользователю он доступен только на 115200.
Исключение составляет ТАТ-моде при перепрошивке или работе с сервисной программой.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.