Jump to content

    

Radmir

Участник
  • Content Count

    10
  • Joined

  • Last visited

Community Reputation

0 Обычный

About Radmir

  • Birthday 09/21/1989

Контакты

  • Сайт
    http://
  • ICQ
    267244794

Информация

  • Город
    Уфа
  1. Команда из двух человек с семилетним опытом работы в данной области, разработает электронные устройства на базе микроконтроллеров STM32, AVR, ESP8266 и других. Мы предлагаем следующие услуги: – выбор элементной базы, – разработка электронных схем, – трассировка печатных плат и подготовка их к производству(Kicad, Eagle, P-Cad), – сборка опытных образцов, – разработка ПО для микроконтроллеров на языке C, – доводка опытных образцов аппаратного обеспечения до работоспособного состояния, – разработка документации на разрабатываемые устройства, – разработка управляющих приложений для ПК и Android-смартфонов. Наш офис находится в Уфе по адресу: ул. Ибрагимова, дом 57; почта - radmir1989(dog)gmail.com.
  2. Есть ли способ добавлять файлы в tasks.json/makefile/cmakelists.txt через GUI?
  3. наверно забыл добавить что-то типа " --specs=nosys.specs"
  4. Пытаюсь заменить eclipse на "Qt creator". Использую связку "Qt creator 3.4.1" + "bleeding-edge-toolchain-150324 4.9.3 20150303 (prerelease)" + "openocd-0.8.0" + "stlink-v2". Сборка и прошивка работают. Отладка: брейкпоинты ставятся/удаляются, но если во время исполнения программы поставить/удалить брейкпоинт в неактивной части программы, получаю следующую картину: брейкпоинт ставится/удаляется, курсор отладчика перемещается на строку, исполняемую в данный момент времени, а мне это не нужно. Т.е., предположим, есть такой кусок кода: Кодint main() {   doNothing();   while(1)   {   }   return 0; } Если запустить программу на исполнение, поставить или удалить брейкпоинт на "doNothing();", отладчик перемещает курсор на цикл "while(1){}" (текущая исполняемая строка). Когда в программе имеется больше одного модуля, отладка сильно затрудняется: при снятии/удалении брейкпоинта в неактивном модуле, отладчик прыгает в активный и продолжает исполнение. При использовании "eclipse Luna Service Release 2 (4.4.2)" + "bleeding-edge-toolchain-150324 4.9.3 20150303 (prerelease)" + "GNU Arm eclipse plugin" + openocd-0.8.0 + st-link-v2 такой проблемы с отладкой не возникает. В настройках gdb (через меню qt creator'a) включен асинхронный режим, дана команда openocd "monitor poll". Скорее всего проблема как-то связана с асинхронным режимом работы отладчика, но ответ пока не нашел. Интересует следующее: был ли у кого-то успешный опыт настройки отладки в Qt creator и как можно победить данную проблему?
  5. Проблема решена. Инженеры SIMCom по нашему запросу внесли исправления в прошивку B11. Файл прикрепляю.
  6. До этого стояла прошивка B09 (заводская). Команды "AT+FTPSIZE" не было вообще. Насколько мне известно, эта команда появилась в прошивке B10.
  7. ЦитатаРаботаем с модулем sim900 (прошивка версии 1137B11SIM900M64_ST).
  8. Клиенты (Filezilla, Totalcmd) успешно меняют тип передачи данных. Проблема именно с модулем - он даже не отсылает серверу команду "TYPE I".
  9. Добрый день. Работаем с модулем sim900 (прошивка версии 1137B11SIM900M64_ST). Стоит задача в получении размера файла, находящегося на ftp-сервере. Выполняем следующие команды: КодAT+SAPBR=3,1,"CONTYPE","GPRS" AT+SAPBR=3,1,"APN","internet***" AT+SAPBR=3,1,"USER","***" AT+SAPBR=3,1,"PWD","***" AT+SAPBR=1,1 AT+FTPSERV="ftp.***.ru" AT+FTPUN="***" AT+FTPPW="***" AT+FTPGETPATH="/" AT+FTPGETNAME="test.txt" AT+FTPSIZE В ответ получаем "+FTPSIZE:1,77,0" С запросом содержимого файла проблем не возникает. Для выяснения причин на ftp-сервере было включено логирование ftp-команд. После чего выяснилось, что ftp-сервер на запрос SIZE в режиме передачи ASCII отвечает ошибкой 550(SIZE not allowed in ASCII mode). Следуя рекомендациям ftp-сервера, перед выполнением команды "AT+FTPSIZE" была добавлена строка "AT+FTPTYPE="I": КодAT+SAPBR=3,1,"CONTYPE","GPRS" AT+SAPBR=3,1,"APN","internet***" AT+SAPBR=3,1,"USER","***" AT+SAPBR=3,1,"PWD","***" AT+SAPBR=1,1 AT+FTPSERV="ftp.***.ru" AT+FTPUN="***" AT+FTPPW="***" AT+FTPGETPATH="/" AT+FTPGETNAME="test.txt" AT+FTPTYPE="I" AT+FTPSIZE В результате получаем ту же самую ошибку. После просмотра логов было обнаружено, что после выполнения команды смены режима передачи данных (AT+FTPTYPE="I") ftp-сервер не переходит в режим binary(в логах ftp-сервера нет команды TYPE I). Т.е. sim900 не меняет режим передачи. Далее на ftp-сервере по умолчанию был задан двоичный режим передачи данных, после чего команда AT+FTPSIZE стала возвращать корректный результат. Были протестированы 2 ftp-сервера (vsftpd, proftpd) - результат одинаковый. Вопрос заключается в следующем: есть ли это недоработка программного обеспечения модуля или что-то было упущено? Если это недоработка ПО, есть ли варианты решения данной проблемы (например, с помощью Embedded AT, java)?