либо невыспался ...
проблемы с GPS модулем ZX4125P
Понимаю, что врядли кто работал с этой штукой но чем чётр не шутит. Проблема вот в чём шлёт он мне координаты, курс и скорость всё по нулям, дату 22.08.99. Посылаю холодный старт $PNMRX101,4,*5D жду ни через 60сек как по дату ни через 5 минут ничего не меняется
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
- Реклама
В рабочие дни спроси там: http://telesys.ru/wwwboards/mcontrol/index.shtml
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
А можно поподробнее? У меня например, один из телефонных аппаратов стандарта 3G, GPS тоже имеется, НО!
Оказывается, этот GPS работает не напрямую, а через оператора связи!
И пытаясь зайти в этот режим, он пытается связаться с какой-то станцией в Корее
Я спрашивал в техцентре про это, они даже удивились
: "А разве такой режим есть?"
Память очень интересная штука: бывает так, что запомнишь одно, а вспомнишь другое...
Что именно поподробнее??? GPS модуль обрабатывает инфу со спутника и выдаёт координаты.
Частично описание есть здесь
http://www.compel.ru/catalog/wireless/gps/zx_4125
Зделал reset программный
$PNMRX101,,,,,,,,8,*7D
тепереча дата 310733
Частично описание есть здесь
http://www.compel.ru/catalog/wireless/gps/zx_4125
Зделал reset программный
$PNMRX101,,,,,,,,8,*7D
тепереча дата 310733
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Дык я описал случай, когда не непосредственно со спутника...moLCHec писал(а):Что именно поподробнее??? GPS модуль обрабатывает инфу со спутника и выдаёт координаты.
Так что шуметь не нужно, а нужно потихоньку докапываться до причин, для чего и нужны подробности.
Память очень интересная штука: бывает так, что запомнишь одно, а вспомнишь другое...
- Реклама
Да я и так тихий вроде, спутники обычные наверно. Система координат WGS-84. Пробовал ходить по разным комнатам не помогло.
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Так в помещении испытывали? Обычные помещения ослабляют сигнал на 10-20 дБ, ж/б - глушат практически полностью. Может в этом дело?
Память очень интересная штука: бывает так, что запомнишь одно, а вспомнишь другое...
Попробую выйти на балкон. Тока завтра у меня за день батарейки сели. Другого источника на 3-3,3В я не нашёл.
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Балкон тоже штука непонятная. Насколько я понимаю в сметане
, приёмнику GPS для работы необходимо получить сигналы с 4-х спутников.
Память очень интересная штука: бывает так, что запомнишь одно, а вспомнишь другое...
Докладываю о результатах предварительных испытаний на полуоткрытой местности. т.е. на балконе
Первые 5 минут всё шло вроде нормально GPS отпределил корректно дату 060507 вроде даже какие-то спутники нашёл потом отвалился провод и всё сбросилось
повторный коннект ничего не дал.
Дело осложняется тем что GPS просто шлёт подряд NMEA команды в которых собственно и содержится информация, шлёт он это всё петрерывным потоком я пока просто всё это вывожу на экран поэтому выглядеть сразу нужную строку с командой не удаётся.
Попытаюсь щас написать простенькие функции обработки и пойду на улицу.
Первые 5 минут всё шло вроде нормально GPS отпределил корректно дату 060507 вроде даже какие-то спутники нашёл потом отвалился провод и всё сбросилось
Дело осложняется тем что GPS просто шлёт подряд NMEA команды в которых собственно и содержится информация, шлёт он это всё петрерывным потоком я пока просто всё это вывожу на экран поэтому выглядеть сразу нужную строку с командой не удаётся.
Попытаюсь щас написать простенькие функции обработки и пойду на улицу.
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Большое спасибо мышонку за поддержку и верные советы оказалось достаточным просто открыть настеж окно и высунутся. Кому интересно координаты моей квартиры широта С-57.5 16'' долгота В-60,05 56''
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Пожалуйста!
Я и не подозревал, что мои скромные намёки приведут к истине 
Память очень интересная штука: бывает так, что запомнишь одно, а вспомнишь другое...
Мне сверху видно ВСЁ !moLCHec писал(а):Кому интересно координаты моей квартиры широта С-57.5 16'' долгота В-60,05 56''
http://maps.google.com/maps?f=q&hl=en&q ... =addr&om=1
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Набрел тут на интересную для меня тему.
Тоже мучаю эту микросхему. Конечно, для получения скорости и азимута хождения по квартире недостаточно. Цепяюсь вот к КПК...
Тоже мучаю эту микросхему. Конечно, для получения скорости и азимута хождения по квартире недостаточно. Цепяюсь вот к КПК...
Эээ, чьи сапоги?
А если серьезно, то чем Вы ловите сигнал? Что за модуль? А главное сколько стоит? Я бы тоже с радостью поковырял бы.
Кстати мой гпс в квартире тоже сигнал не ловит.
А если серьезно, то чем Вы ловите сигнал? Что за модуль? А главное сколько стоит? Я бы тоже с радостью поковырял бы.
Кстати мой гпс в квартире тоже сигнал не ловит.
2kb of eeprom should be enought for everybody (C) Bill Gates` cat 
Упомянутый в заглавии темы ZX4125 брал где-то тыщи за две. Вот не оставляю надежд прицепить его к наладоннику и написать кой-какой специализированный софт.
- Сообщения: 14
- Зарегистрирован: Вс авг 31, 2008 11:24:47
Всем привет, нужна помощь с кодом. Купил модуль GPS LR9552 Leadtek, прицепил SD карту памяти через ATmega32 и пишу в файлы поток символов с модуля. Логгер функционирует, хочу прицепить индикатор, но не могу сообразить как обрабатывать поток данных.
Повторяются следующие строки:
$GPRMC,065025.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*53
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065026.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*64
$GPRMC,065026.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*50
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065027.000,5124.8094,N,04545.3201,E,1,06,1.7,157.0,M,-0.9,M,0.0,0000*64
$GPRMC,065027.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*51
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065028.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*6A
$GPRMC,065028.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*5E
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065029.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*6B
$GPRMC,065029.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*5F
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065030.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*63
$GPGSA,A,3,31,20,14,17,32,,,,,,,,4.0,2.6,3.0*33
$GPGSV,3,1,09,32,76,296,28,31,49,114,29,11,48,235,17,20,45,288,29*71
$GPGSV,3,2,09,14,30,058,27,17,17,309,27,23,16,236,,30,09,058,*76
$GPGSV,3,3,09,12,07,026,*40
интересует строка $GPRMC через запятую перечисляются параметры их нужно присвоить переменным например первый параметр время далее его достоверность потом координаты, скорость курс и т.д.
Пока через кольцевой буфер принимаю символы и отправляю обратно в UART считая строки опираясь на символ $ (типа эхо).
while (1) // бесконечный цикл
{
if (USART_GetRxCount() > 0) // если в приемный буфере не пустой
{
simvol=USART_GetChar(); // считать из буфера UART символ
if (simvol=='$') // если simvol = $
{
i++; // увеличить счетчик на 1
printf("строка %u\r",i); // отправить сообщение в UART
}
putchar(simvol); // отправить символ в UART
}
}
Помогите разложить строку $GPRMC по своим переменным
Повторяются следующие строки:
$GPRMC,065025.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*53
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065026.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*64
$GPRMC,065026.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*50
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065027.000,5124.8094,N,04545.3201,E,1,06,1.7,157.0,M,-0.9,M,0.0,0000*64
$GPRMC,065027.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*51
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065028.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*6A
$GPRMC,065028.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*5E
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065029.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*6B
$GPRMC,065029.000,A,5124.8094,N,04545.3201,E,0.00,61.26,090510,,,A*5F
$GPVTG,61.26,T,,M,0.00,N,0.0,K,A*3E
$GPGGA,065030.000,5124.8094,N,04545.3201,E,1,05,2.6,157.0,M,-0.9,M,0.0,0000*63
$GPGSA,A,3,31,20,14,17,32,,,,,,,,4.0,2.6,3.0*33
$GPGSV,3,1,09,32,76,296,28,31,49,114,29,11,48,235,17,20,45,288,29*71
$GPGSV,3,2,09,14,30,058,27,17,17,309,27,23,16,236,,30,09,058,*76
$GPGSV,3,3,09,12,07,026,*40
интересует строка $GPRMC через запятую перечисляются параметры их нужно присвоить переменным например первый параметр время далее его достоверность потом координаты, скорость курс и т.д.
Пока через кольцевой буфер принимаю символы и отправляю обратно в UART считая строки опираясь на символ $ (типа эхо).
while (1) // бесконечный цикл
{
if (USART_GetRxCount() > 0) // если в приемный буфере не пустой
{
simvol=USART_GetChar(); // считать из буфера UART символ
if (simvol=='$') // если simvol = $
{
i++; // увеличить счетчик на 1
printf("строка %u\r",i); // отправить сообщение в UART
}
putchar(simvol); // отправить символ в UART
}
}
Помогите разложить строку $GPRMC по своим переменным
Что-то непонятное вы написали, По стандарту NMEA ваш приемник выдает вам в терминал сообщение раз в секунду, ну парсите RMC строку или GGA в зависимости что вам нужно, присваиваете значение переменной и ее выводите на LCD, раз в сек у вас будет обновляться дисплей, что очень удобно, если даже его надо полностью перерисовать..
По коду покапайте в сторону
int num;
char *str;
scanf ("+%*[A-Z]:%*d,\"%*d\",%d,\"%a[^\"]\"\n", &num, &str);
Или парсите от запятой до запятой...
Посмотрите вот тут http://otvety.google.ru/otvety/thread?t ... Fotvety%2F
У меня немного проще, у меня ARM из под линукса работает, есть такая программа как gpsd, она в сокет шлет все эти значения, остается их перехватить и записать в файл, что делает моя программа...
По коду покапайте в сторону
int num;
char *str;
scanf ("+%*[A-Z]:%*d,\"%*d\",%d,\"%a[^\"]\"\n", &num, &str);
Или парсите от запятой до запятой...
Посмотрите вот тут http://otvety.google.ru/otvety/thread?t ... Fotvety%2F
У меня немного проще, у меня ARM из под линукса работает, есть такая программа как gpsd, она в сокет шлет все эти значения, остается их перехватить и записать в файл, что делает моя программа...
- Сообщения: 90
- Зарегистрирован: Пн мар 08, 2010 02:59:04
Существует готовый класс NMEAParser с реализацией разбора наиболее распространенных NMEA-последовательностей.
Взгляните в архиве на файл NMEAParser.срр
Там найдете следующую функцию:
void NMEAParser::ProcessGPRMC(const CHAR *buf, const UINT bufSize)
В ней, собственно, и реализован анализ структуры GPRMC.
Взгляните в архиве на файл NMEAParser.срр
Там найдете следующую функцию:
void NMEAParser::ProcessGPRMC(const CHAR *buf, const UINT bufSize)
В ней, собственно, и реализован анализ структуры GPRMC.
- Вложения
-
- NMEAParser.zip
- Парсер
- (4.46 КБ) 353 скачивания


