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

bugish

Участник
  • Постов

    29
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о bugish

  • Звание
    Участник
    Участник

Контакты

  • Сайт
    Array
  • ICQ
    Array

Информация

  • Город
    Array

Посетители профиля

1 041 просмотр профиля
  1. Погугль 1137B15SIM900M64, информация думаю уже не секретная, так как модуль снят с производства, уже как год.
  2. А случаем, у кого нибудь нет опыта согласовывая UART микроконтроллера 1.8В с SIM800C ?
  3. // разрешаем событие eat_SetSMSIndEvent(TRUE); // отрабатываем событие case EVENT_SMS_IND: { Index_SMS = flEventBuffer.eventData.smsInd_evt.index; Encode_SMS(Index_SMS, flcurcmd); } // вычитываем sms командой AT+CMGR void Encode_SMS(u8 Index, t_curcmd *curcmd) { eat_DebugTrace("Incoming SMS Index %d -> ", Index); updatecmd((u8*)"AT+CMGR\r", curcmd, AT_WRITE); sprintf((char *)TMP_AT_CMD,"AT+CMGR=%d\r", Index); eat_SendToModem((u8*)TMP_AT_CMD, sizeof(TMP_AT_CMD)); eat_DebugTrace("%s \r\n",TMP_AT_CMD); } // анализируем ответ на команду AT+CMGR
  4. Надеюсь летний релиз прошивки для SIM900R64 будет работать на SIM900
  5. Я пользуюсь МТС телематика http://corp.mts.com.ua/rus/telematic_tariff.php
  6. Да просто после передачи данных не делай AT+CIPCLOSE оставь открытым сокет, передавай данные раз в пять минут пока оператор тебя сам не отключит. Думаю и пинговать не нужно.
  7. Просто не разрывай сессию. Как показала практика, у меня МТС-Ураина рвет сессию только через 20 митут бездействия, для чего раз 10 минут если параметры датчиков не изменились я посылаю на сервер один "спец байт " который сервер игнорит. Рекорд сессии 23 часа
  8. У меня тоже с моего тестового без проблем (простой комп со статическим IP в интернете и прикрученным FTP сервером под винду), сервер на который пытаюсь переехать точно на линухе. Может тогда для уверенного приема сначала выполнить AT+FTPSIZE, затем контролировать количество принятых байтов после получения +FTPGET:2,0 OK проверить размер и игнорировать +FTPGET:1,64. Просто делать конец приема по +FTPGET:2,0 OK нельзя, так как я наблюдал следующую ситуацию, сначала приходило пару ответов +FTPGET:2,0 OK, а только после этого начинал передаваться файл AT+FTPGET:2,<reqlength>, а затем 5 раз +FTPGET:2,0 OK .
  9. Возникла необходимость переезжать на другой FTP сервер, решили протестировать и тут все пошло не так как планировали: После приема данных с FTP сервера жду ответ +FTPGET:1,0 методично отсреливая AT+FTPGET=2,1024 раз в 3 сек (взято из примера в комплекте SIM900DevIDE),а +FTPGET:1,0 не приходит в течении 30 секунд и модуль рапортует +FTPGET:1,64 - timeout, следовательно программа расценивает это сообщение как неудачный прием данных. Теоретически ответ +FTPGET:2,0 OK приходит после приема всего файла, но не является окончанием сессии, надо ждать +FTPGET:1,0 окончание приема данных. От старого FTP сервера +FTPGET:1,0 ответ приходил через 16 секунд, это вызывало некое непонимание, но не сильно напрягало (так было на версиях 1137B04SIM900M64_ST_EAT, 1137B01SIM900M64_ST_DTMF_JD_EAT, 1137B02V01SIM900M64_ST_DTMF_JD_EAT). При подключении к обоим серверам FTP клиентом с ПК, после передачи чеко видно 226 File sent ok. Стал перечитывать доки по поводу AT+FTPGET: (FTP HTTP AT Commands User Guide AN_SIM900_FTP_HTTP_APP_V1.00) If data transfer finished: +FTPGET:1,0 (FTP HTTP AT Commands User Guide AN_SIM900_FTP_HTTP_APP_V1.00) AT+FTPGET=2,1024 +FTPGET:2,0 OK Request to read 1024 bytes again. 0 bytes are now available, but it is not the end of session (SIM900 AT Commands Manual_V1.06) If data transfer finished: +FTPGET:1,0 (SIM900 AT Commands Manual_V1.06)
  10. Хотел отключить индикацию принятого сообщения командой AT+CNMI=2,0,0,0,0 AT+CNMI=<mode>[,<mt>[,<bm>[,<ds>[,<bfr>]]]] <mt> 0 нет индикации 1 индикация в формате +CMTI: <mem>,<index> 2 индикация в формате +CMT:[<alpha>],<length><CR><LF><pdu> .... но при <mt> = 0 ведет себя также как <mt> = 2 выдает +CMT: "+38050.....
  11. Сообщение пришло без всяких препятствий.
  12. Сегодня целый день потратил на "игры" с EVENT_SMS_IND прерывание отлично срабатывает и выдает ID сообщения, но после отправки AT+CMGR=ID мне в догонку вместо ответа на команду прилетает +CMTI:"SM",.. c ID сообщения, а затем только ответ на команду. Меняя параметры АТ+CNMI избавится от +CMTI:"SM",.. так и не смог. Или может кто подскажет как на время приостановить, а точнее запретить прием SMS ?
  13. Натолкнулся нв следующую проблему. Функция ebdat4_31GetIMEI съедает последнюю цифру, т.е. выдает 14-ти значное значение, команда AT+GSN дает 15 цифр. IMEIValue imei; memset(StringBuffer, 0x00, sizeof(StringBuffer)); imei = ebdat4_31GetIMEI(); sprintf(StringBuffer, "IMEI:%s \r\n",imei.imei); ebdat7_01DebugTrace(StringBuffer);
×
×
  • Создать...