Попробуем связать GPS навигатор и микроконтроллер.

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
SWAT701
Родился
Сообщения: 12
Зарегистрирован: Вс янв 09, 2011 11:15:49

Попробуем связать GPS навигатор и микроконтроллер.

Сообщение SWAT701 »

Всем Здравствуйте. Задумал тут одну идею. Изобрести велосипед. Но действительно самому очень интересно. Очень буду рад если кто что подскажет и направит на идейный путь. Скажу сразу мой "микропроект" не несет никакой коммерческой выгоды. А все это ради интереса и для себя. Ну и потом для других. Короче к делу.
Суть в том, что (для начала) хотелось бы соединить GPS навигатор Garnin Etrex c микроконтроллером attiny 2313. Дело в том, что gps раз в секунду передаёт небольшей пакет данных. (Скорость передачи неизвестна) По двум проводам. Минус и еще один контакт. Вид протокола следующий (более подробно здесь http://ru.wikipedia.org/wiki/NMEA)

$GPRMC,125504.049,A,5542.2389,N,03741.6063,E,0.06,25.82,200906,,*3B ( здесь он передаю Время, широту, долготу , азимут)
Передает он символьно. Вот здеся можно перевести символьный код в двоичный. http://www.lonsdales.narod.ru/

В двоичном коде это будет так

001001000100011101010000010100100100110101000011001011
000011000100110010001101010011010100110000001101000010
111000110000001101000011100100101100010000010010110000
110101001101010011010000110010001011100011001000110011
001110000011100100101100010011100010110000110000001100
110011011100110100001100010010111000110110001100000011
011000110011001011000100010100101100001100000010111000
110000001101100010110000110010001101010010111000111000
001100100010110000110010001100000011000000111001001100
00001101100010110000101100001010100011001101000010

Вообщем мне теперь надо написать программу в контролер, которая примет это все. И просто запишет в энергонезависимую память контролера.
Вот как. Можно ли запустить для этого дело USART ? И в каком режиме? С условием что я не знаю частоту передачи данных. Или это нужно сделать программным путем?

Если у кого примеры программ?

С уважением ЯроКот :))
Реклама
SWAT701
Родился
Сообщения: 12
Зарегистрирован: Вс янв 09, 2011 11:15:49

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение SWAT701 »

Вот некоторые картинки
Вложения
garmin_etrex_h_1.jpg
(27.36 КБ) 656 скачиваний
datacable_connection (1).jpg
(36.95 КБ) 576 скачиваний
Реклама
stas00n
Вымогатель припоя
Сообщения: 557
Зарегистрирован: Пн мар 23, 2009 04:03:45

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение stas00n »

Скорость должна быть стандартная - 4800 бод. Протокол NMEA0183, документации полно. Принимаете пакет через UART, разбираете, дальше по обстоятельствам.
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение Satyr »

Уже изобрел -))
mini3.jpg
(126.55 КБ) 710 скачиваний
микроконтроллер, дисплей 3.4" 320x240, карты от OziExplorer на SD Карточке, внешний USBшынй GPS приемник BT-353 или как то так.

Сейчас бы сделал все совсем по другому )))
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Satyr
Друг Кота
Сообщения: 7439
Зарегистрирован: Чт ноя 04, 2010 01:56:36
Откуда: г. Москва

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение Satyr »

soldered.jpg
(155.15 КБ) 673 скачивания
внутренности
Реклама
stas00n
Вымогатель припоя
Сообщения: 557
Зарегистрирован: Пн мар 23, 2009 04:03:45

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение stas00n »

И уберите из первого поста "двоичный код" - он никому не интересен, а форум из-за него "разъехался".
Реклама
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение Aheir »

Вам нужен парсер строки. Поищите по этим словам, что это такое, как делается и т.д. А вообще, проимеров разбора NMEA в И-нете масса, не вижу проблем.
Выход приемника на USART МК - и вперед
Оптимизм х (Опыт + Знания) = const
SWAT701
Родился
Сообщения: 12
Зарегистрирован: Вс янв 09, 2011 11:15:49

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение SWAT701 »

Короче я извиняюсь. Я понял, что действительно надо самому разбираться. А ни кто за меня ни че не напишет. Привык блин ко всему готовому. Пока начну документацию изучать. По протоколу USART. Но честно говоря голова кругом идет. Волнуют вопросы. Такие как. 1. Как его синхронизировать. Как настроить прием. Что значит синхронный и асинхронный режим. Какой мне надо? На какие кадры мне его настраивать. Наверное на 8 бит. Что такое стоповый бит в attyni 2313. На кукую ножку процессора идет вход. Как сдвигать в байте полученный бит при поступления следуещего.Как вообще проверить что программа потом будет работать. Ну и еще куча куча вопросов. Начну пока а там посмотрим.
Последний раз редактировалось SWAT701 Вс янв 09, 2011 15:37:21, всего редактировалось 1 раз.
Аватара пользователя
Pavel V.
Мявтор!
Сообщения: 384
Зарегистрирован: Ср май 17, 2006 18:39:01
Откуда: Москва
Контактная информация:

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение Pavel V. »

Делаем буфер длиной 80 байт, по приему символа '$' сбрасываем позицию в 0. По приему данных инкрементируем переменную с позицией (не забывая проверять за вылет из диапазона). Помимо RMC кадра приемник много другой информации шлет, ее можно игнорировать. По приему '\n' выставляем флаг принятой полной строки, для уверенности можно заодно запретить прерывания (хотя это и не обязательно, парсинг будет выполняться явно меньше 1 с).

В основном цикле ловим флаг и запускаем парсер. Парсер NMEA очень прост - режем строку по символу ','.

Контрольную сумму можно в первом приближении не учитывать.
SWAT701
Родился
Сообщения: 12
Зарегистрирован: Вс янв 09, 2011 11:15:49

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение SWAT701 »

И так первые копания не привели пока ни к чему. Интереса ради решил посмотреть выходы с осциллографа. С выходов GPS.
Нету никакого сигнала. Он молчит. Кто знает с чем это связанно? Может потому что он в помещении и не ловит спутники и тогда ни чего не передает? Или на его вход надо что то подать? В инструкции NMEA написано что он сам выдаёт сигнал раз в секунду. И причем даже если не видит спутников.
Оказывается мой Garmin Etrex поддерживает такие протоколы как
Garmin
Garmin DGPRS
NMEA
Текстовый (?)
RTCM In
RTCM/NMEA
RTCM/текст.

Может кто что либо подсказать?
SWAT701
Родился
Сообщения: 12
Зарегистрирован: Вс янв 09, 2011 11:15:49

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение SWAT701 »

Вот картинка
Вложения
datacable_connection.jpg
(36.95 КБ) 579 скачиваний
stas00n
Вымогатель припоя
Сообщения: 557
Зарегистрирован: Пн мар 23, 2009 04:03:45

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение stas00n »

SWAT701, GPSка должна передавать как минимум строку GPRMC раз в секунду, даже без спутников (в этом случае в строке GPRMC передается признак недостоверной обсервации). Лезьте в настройки приемника, возможно вывод там отключен (для экономии батареи?) На вход подавать пока ничего не надо, GPSка является передатчиком-мастером на линии; единственное, что можно подавать на вход - данные с DGPS/WAAS приемника, но у Вас его нет.
Когда разберетесь с настройкой самого прибора (получите сигнал на tx выходе) попробуйте просто к компу подключить, и в гипертерминале посмотреть, какие пакеты он шлет. Порт настроить на 4800, 8N1; возможно потребуется инверсия сигнала, надо смотреть в каких уровнях прибор выдает данные.
SWAT701
Родился
Сообщения: 12
Зарегистрирован: Вс янв 09, 2011 11:15:49

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение SWAT701 »

Спасибо большее. Действительно он находился в режиме экономии. Но уже пока осциллографа нету. Он на работе. Поэтому придется ждать до понедельника. :)
Аватара пользователя
radio-kot
Собутыльник Кота
Сообщения: 2584
Зарегистрирован: Вт сен 14, 2010 10:27:19

Re: Попробуем связать GPS навигатор и микроконтроллер.

Сообщение radio-kot »

SWAT701 писал(а): Можно ли запустить для этого дело USART ? И в каком режиме? Или это нужно сделать программным путем? Если у кого примеры программ?
Именно uart а настроить его проще всего интерактивным генератором кода компилятора CVAVR - вот как это делается http://proavr.narod.ru/z5.htm рассказ с картинками.
Будете проходить мимо- проходите!
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»