Jump to content

    

ДЕЙЛ

Участник
  • Content Count

    282
  • Joined

  • Last visited

Everything posted by ДЕЙЛ


  1. Изучаю возможности интернета применительно к электронике. Имеются два модуля GSM, которые могут отправлять данные на любой сервер с белым айпишником по TCP. Этот любой сервер присылает ответ о некорректности запроса. Хочу сделать свой сервер, который точно так же сможет принимать данные, отправлять ответ и быть доступным в интернете. Насчёт белого айпишника ничего сложного нет . Понятное дело, что нужно почитать про компьютерные сети, а что ещё нужно для создания сервера? Если освоить PHP, то этого будет достаточно?
  2. там нет такого описания, только в общих чертах сказано, какими командами отпралять данные по какому-либо адресу, щас просто интересуюсь, попробовать руки пока не дошли погуглил. Но ведь я отправляю в интернет байты, в ответ ругательства, но тоже с какого-то сервера приходят. Значит этот сервер может мои байты переслать другому такому же модулю. Т.е. для передачи данных между GSM-модулями с серыми адресами обязательно нужен промежуточный сервер? А если у меня серый адрес, то в пределах одной соты можно общаться?
  3. дошло вчера :rolleyes: Вечером получалось соединиться с интернетом. Писал что-то вроде AT+CIPSTART="TCP","ya.ru",80 затем указал число передаваемых байт и от балды набранные с клавиатуры символы. В ответ пришёл текст в HTML-тегах, где было написано, что запрос некорректный. Т.е. получается, что связь с интернетом настроена, данные от меня доходят до удалённого сервера. Теперь крутится вопрос - а нельзя ли вместо "ya.ru" указать айпишник второго GSM-модуля и точно так же отправить данные? Проверить пока руки не дошли.
  4. Читаю вот тут: http://habrahabr.ru/post/119030/ не совсем понятна строка в мануале пишут, что это первый и второй домен. Т.е. айпишник первого модуля и второго?
  5. пока вроде соединился с интернетом, увидел свой айпишник. Каков сам принцип передачи файла с одного модуля на другой? Кто и как учавствует в этой передаче? Какую теорию почитать надо? Скачал книгу Попова про GSM - там всякие ячейки интерференции, скачал про GPRS - там услуги связи и перспективы роста скорости мобильного интернета. на что это может повлиять? Для чего его можно применить?
  6. есть как минимум два простых способа измерения индуктивности - индуктивное сопротивление на определённой частоте и метод замены в колебательной контуре генератора с последующим пересчётом, что будет поточнее.
  7. а с метрологией как? Я всётки датчик давления на дно поставил бы и всё. Для точности ещё вверху для измерения атмосферного давления. С ультразвуковым имел дело - даже у импортного за 25 тыщ с токовым выходом наблюдались пропадания отражённого сигнала на ёмкости 2 метра глубиной. Можно сделать вот так ещё:
  8. можно и так, но всё же лучше, чем с ультразвуковым изобретать способы фильтрации кучи ложных отражений
  9. А нельзя ли в колодец на дно опустить герметичный датчик давления с помощью той же трубы или тупо привязать к гире 16 кг? Из физики помню формулу P=pgh. Отклонения плотности и температуры мало скажутся на таком способе измерения урорвня. UP: если так уж нужно именно ультразвуковой датчик, то нормальный заводской на такую глубину стоит от 30 тыщ рублей.
  10. Проще у китайцев всё покупать, а самим лес валить японскими бензопилам ;) Так ведь надо когда-то начинать :smile3046: Вот я и хочу понять, насколько это сложно, что нужно освоить и как в общих чертах организовать передачу данных с мопеда на комп.
  11. Хочу применить его для трекера. Один модуль будет в движущемся объекте, второй на столе подключен к компу. На компе будет рисоваться маршрут движения. Вторая функция - удалённая смена прошивки.
  12. На терраэлектронике есть в продаже SIM900R, но там написано, что модуль не поддерживает FTP и HTTP. http://www.terraelectronica.ru/catalog_info.php?CODE=1048498 Можно ли этот модуль применять для передачи данных? Как в общих чертах реализуется передача данных между двумя GSM модулями? Не смсками же передавать.
  13. думаю, что принцип работы загрузчика одинаков, но а AVR его не реализовывал
  14. Недавно делал загрузчик для LPC1778. Основные положения из своего опыта могу написать такие: 1. Бутлоадер и пользовательская программа пишутся независимо и расположены в разных местах флеш-памяти. Начало программы бутлоадера должно располагаться по адресу 0x0000, т.к. после рестарта контроллер начинает свою работу именно с этого адреса. Пользовательская программа может находиться по любому адресу, но не должна затирать код бутлоадера. Если бутлоадер не выходит за пределы области 0x0000 - 0x1000, то пользовательская программа должна начинаться с адреса 0x1000. 2. Компилятор не может знать, что в памяти есть ещё и загрузчик, но в его силах скомпилировать HEX для записи по конкретному адресу, например 0x1000 вместо 0x0000, используемого по умолчанию. Адрес для компиляции где-то в настройках указывается. 3. После аппаратного рестарта контроллер начинает выполнять программу с адреса 0x0000, но у нас начало программы сидит в адресе 0x1000, поэтому контроллер будет в недоумении и дальнейшее его поведение будет непредсказуемым. 4. Запускать пользовательский HEX должен именно бутлоадер (в общем случае командой JMP 0x1000, в моём случае пришлось помнить про указатель на таблицу векторов и про указатель стека) 5. Один из возможных алгоритмов работы бутлоадера: - проверка некоего условия при включении питания (уровень на одной из ног МК или условие таймаута - если в течение какого-то времени после включения данные не начали поступать, то запустить пользовательскую программу; можно предварительно проверить наличие пользовательской программы в памяти по какому-либо критерию) - приём данных по любому доступному интерфейсу с использованием любого алгоритма - проверка правильности принятых данных с помощью пересчёта всяких контрольных сумм - запись полученных данных во флеш - запуск записанной программы с адреса 0x1000. Запись пользовательской программы посредством бутлоадера выполняется с помощью такой же самопальной программы, которая имеет с ним общий язык, т.е. стандартная скачанная заливалка с самопальным загрузчиком работать не будет.
  15. Нашёл удобную программу для общения с GSM-модулем. Мошть ещё кому пригодится. RSTermPlus.rar
  16. Не совсем понятно насчёт задания. Исходные данные ясны, что именно нужно рассчитать? В момент замыкания ключа на катушке будет то же напряжение, что и до замыкания. Конденсатор при подаче на него напряжения в первый момент будет как перемычка.
  17. По молодости-глупости на днях купил пару вот этих плат. http://www.ebay.com/itm/SIM900A-V4-0-Wirel...=item4adb04cfb7 Терзают смутные сомнения, что в России она не совсем праильно будет работать, но эффективные менеджеры всё равно на других сайтах барыжат их за 3-4 цены. Полагаю, что изучать её нужно начинать с перепрошивки. На плате есть вход RX-TX. К нему и нужно подключать провода для смены прошивки? Есть две перемычки, каково их назначение? Сколько вольт питание? Раньше с этим всем дело не имел. Где можно найти схему? UP1: Можно ли на моей плате заменить SIM900A на SIM900R? Распиновка совпадает за исключением нескольких выводов, которые никуда не заведены.
  18. пока ищу, с какой стороны подойти. Как будет выглядеть в терминале такая команда AT+CGDCONT=1,"IP","internet" ?
  19. Хочу освоить работу с данным модулем. Заказал две демо-платы, на них есть разъём питания и разъём RS232, который можно подключить напрямую к COM-порту без переходников и преобразователей. Т.е. хочу перед подключением к МК погонять данный модуль командами с ПК. Есть ли уже готовая программа для работы с этим модулем? Такая, на которой есть отдельные кнопки для отправки заранее заготовленных символьных строк АТ-команд. UP1: накопал вот это: http://www.seeedstudio.com/wiki/GPRS_Shield_V2.0 и сама программа: http://www.seeedstudio.com/wiki/images/b/b2/Sscom32E.zip есть ли что-то подобное, но на русском языке?
  20. Железно заработало :yeah: дело было ещё и в указателе стека. В этом прикреплённом проекте в тестовой программе для вызова главной нужно написать такой код: unsigned int *VTOR; int main() { VTOR = (unsigned int*)0xE000ED08; //адрес данного регистра из хидера *VTOR = 0x7000; //смещение таблицы векторов - из настроек линкера asm ("mov r13, #0x2448"); //запись в регистр стека младших байтов значения указателя стека основной программы, взятого из ячейки с адресом 0x7000; asm ("movt r13, #0x1000"); //запись в регистр стека старших байтов значения указателя стека основной программы, взятого из ячейки с адресом 0x7000; asm ("B 0x8105"); //Безусловный переход по адресу обработчика прерывания сброса, прочитанного из ячейки 0x7002; } Можно было бы поумнее и правильнее код сделать, но для понимания принципа этого хватит. теперь попробую назад в загрузчик из главной программы зайти :bb-offtopic: Зато оперативка экономится, отключил всё ненужное. Ноуту лет 15, в нём есть привод дискет, два разъёма усб, всамделишный LPT и COM-порты ;) Но зато экран большой и нет отвлекающего выхода в тырнет.
  21. Под отладчиком после ассемблерной инструкции перехода программа работает в реальном режиме времени, но её можно остановить и увидеть, что всё крутится в адресах после 7000. Мошть ещё нужно указатель стека на нужное место поставить, как мне посоветовали на другом форуме?
  22. насчёт перескока на 2кб на какой странице мануала написано? Надо попробовать, а симулирование и реальность не всегда совпадают, как я заметил. пробовал разные варианты - записывал 0x380000 и 0x7000, в отладчике наблюдалось число 0xE0. Имею ввиду, что программа из флеши запускается в следующем шаге после строки B 0x8105 при нажатии кнопки F10 в пошаговом режиме отладки, т.е. переходит в то место и запускает программу, а когда отключаю JTAG и нажимаю на сброс, то никаких переходов нет, контроллер не шевелится.
  23. Согласен с перечисленным и у меня это всё предусмотрено, а на схеме показал принцип переноса синусоиды в положительную область для оцифровки. В расходомере питание прецизионное, имеется двойная гальваническая развязка от питающей сети, в металлоискателе реализован динамический режим, т.е. значение нуля постоянно вычисляется по скользящему среднему в течение нескольких секунд, а фиксируются быстрые изменения сигнала. Проблем пока нет.
  24. Почему-то в пашаговом режиме после перехода по адресу программа в другом конце памяти запускается иногда после команды перехода, а после нажатия кнопки сброса никаких движений.