-
- кто бы нас спрашивал)) sierra(110 знак., 01.10.2013 10:15)MBedder
- Кто выдаёт ошибку? Модуль? Или Ваша плата с контроллером? Вы можете подключить вывод TX модуля к COM-порту, например, через ADM232 или банальный ключ на транзисторе и посмотреть идут ли данные с ГЛОНАСС-модуля? - FDA(01.10.2013 10:20)
- По сути сейчас я разбираюсь с чужим кодом. Исходя из выполнения программы видно, что по UART происходит прерывание от модуля, но т.к. код чужой я путаюсь, что означает следующий код: sierra(477 знак., 01.10.2013 10:57)
- Честно говоря, декодирование NMEA проще реализовать заново, чем разбираться в чужом коде. Там же обычный текстовый протокол, всё очень примитивно. Я делаю декодирование так. В прерываниях у меня осуществляется только приём байтов от ГЛОНАСС-модуля FDA(406 знак., 01.10.2013 11:05)
- Спасибо за ответ. Т.е. если поступило прерывание, мы функцией в моем случае getMsg, принимаем то, что нам отправили по GPS, из полученной строки берем необходимые данные и все? Тогда на самом деле не должно возникнуть сложностей sierra(158 знак., 01.10.2013 11:52)
- Как уже писали, делаете FIFO буфер в него складируете данные. В основном цикле программы ищете в этом буфере символ '$' и символ 0x0D. Это ваше предложение с данными NMEA. Его декодировать это уже дело техники. Сам алгоритм декодирования, как я FDA(51 знак., 01.10.2013 13:29)
- Работает))Только все принимаемые сообщения $GP, а где же ГЛОНАСС?...столько спутников летает). sierra(129 знак., 02.10.2013 08:35)
- На скотче --> - fk0(02.10.2013 12:27, ссылка)
- GP для совместимости сделано. По умолчанию этот приёмник работает в режиме объединения данных от обоих систем. Но можно его переключить и в другие режимы: чистый GPS, чистый ГЛОНАСС и одновременный GPS и ГЛОНАСС. В последнем случае сообщения от FDA(219 знак., 02.10.2013 09:28)
- В сообщениях GGA, RMC, GLL есть данные по широте и долготе ( так же как и время), они имеют одинаковую точность или чем то отличаются друг от друга? sierra(158 знак., 02.10.2013 10:34)
- 1)Одинаковые. 2)xDOP - разумеется, суммарно от всех спутников, участвующих в счислении (а не просто видимых) - MBedder(02.10.2013 12:23)
- В совмещённом режиме данные от обоих нав. систем "усредняются". В результате Вы получаете уже готовые данные. Про HDOP точно не подскажу, так глубоко не копал. Я всегда разбираю только два предложения NMEA - GGA и RMC. В результате вытаскиваю FDA(85 знак., 02.10.2013 10:45)
- В спецификации sierra(266 знак., 02.10.2013 09:40)
- Вообщем существует всего 3 варианта: FDA(818 знак., 02.10.2013 09:52)
- "Бинарный протокол" -- это такой популярный миф. Актуальный лишь для некоторых приёмников. - fk0(02.10.2013 12:30)
- К тому же он у каждого чипсета свой. Нужен он только тогда, когда используется Raw Data - для дифкоррекции, например, а для всего остального NMEA более чем достаточно - MBedder(02.10.2013 12:33)
- Он нужен ещё для настройки приёмника. Не всегда можно настроить все параметры через NMEA. - FDA(02.10.2013 13:20)
- К тому же он у каждого чипсета свой. Нужен он только тогда, когда используется Raw Data - для дифкоррекции, например, а для всего остального NMEA более чем достаточно - MBedder(02.10.2013 12:33)
- "Бинарный протокол" -- это такой популярный миф. Актуальный лишь для некоторых приёмников. - fk0(02.10.2013 12:30)
- Вообщем существует всего 3 варианта: FDA(818 знак., 02.10.2013 09:52)
- Вот как сделано у меня: FDA(453 знак., 02.10.2013 09:32)
- Спасибо за Ваши ответы) Освоение GPS модуля пока продвигается более менее успешно)) - sierra(08.10.2013 09:34)
- В сообщениях GGA, RMC, GLL есть данные по широте и долготе ( так же как и время), они имеют одинаковую точность или чем то отличаются друг от друга? sierra(158 знак., 02.10.2013 10:34)
- Работает))Только все принимаемые сообщения $GP, а где же ГЛОНАСС?...столько спутников летает). sierra(129 знак., 02.10.2013 08:35)
- Если поступило прерывание: складываем считанные из uart байтики в fifo буфер. Ничего больше. За пределами прерывания считываем из fifo побайтово в массив до обнаружения 0x0d и откидывая 0x0a -- строку текста. Потом проверяем, что строка начинается fk0(1212 знак., 01.10.2013 12:31)
- Хотел то же самое написать, но вам уже всё объяснили! :-))))) - FDA(01.10.2013 13:23)
- Спасибо большое. Попробовала сделать именно так как Вы сказали, есть сподвижки) - sierra(01.10.2013 13:15)MBedder
- Как уже писали, делаете FIFO буфер в него складируете данные. В основном цикле программы ищете в этом буфере символ '$' и символ 0x0D. Это ваше предложение с данными NMEA. Его декодировать это уже дело техники. Сам алгоритм декодирования, как я FDA(51 знак., 01.10.2013 13:29)
- Спасибо за ответ. Т.е. если поступило прерывание, мы функцией в моем случае getMsg, принимаем то, что нам отправили по GPS, из полученной строки берем необходимые данные и все? Тогда на самом деле не должно возникнуть сложностей sierra(158 знак., 01.10.2013 11:52)
- Честно говоря, декодирование NMEA проще реализовать заново, чем разбираться в чужом коде. Там же обычный текстовый протокол, всё очень примитивно. Я делаю декодирование так. В прерываниях у меня осуществляется только приём байтов от ГЛОНАСС-модуля FDA(406 знак., 01.10.2013 11:05)
- По сути сейчас я разбираюсь с чужим кодом. Исходя из выполнения программы видно, что по UART происходит прерывание от модуля, но т.к. код чужой я путаюсь, что означает следующий код: sierra(477 знак., 01.10.2013 10:57)
- Кто выдаёт ошибку? Модуль? Или Ваша плата с контроллером? Вы можете подключить вывод TX модуля к COM-порту, например, через ADM232 или банальный ключ на транзисторе и посмотреть идут ли данные с ГЛОНАСС-модуля? - FDA(01.10.2013 10:20)
- кто бы нас спрашивал)) sierra(110 знак., 01.10.2013 10:15)MBedder