| GPS | 
|  | 
| 
 
 
 
 | DNM | Дата: Вт, 17.02.2015, 23:06  |                                                                                                                Сообщение # 1 |  
 | ![DNM]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 75
 
 
 Замечания: ± На сайте с 29.09.2011
 
 
 Статус: 
 Offline
 
 | притащили  тут эту хреновину 
   
 при подключении к компьютеру в u-blox  все работает нормально
 
   автоматически определяет скорость - 9600.
 НО, когда пытаюсь считывать на этой скорости контроллером - нет связи.
 предполагаю, что скорость должно быть другая.
 вот код
 
 Device = 16F877
 Config XT_OSC , WDT_OFF , PWRTE_ON , BODEN_OFF ,  CP_OFF , DEBUG_OFF
 Include "modedefs.bas"          ' Include serial modes
 
 Xtal 4
 
 ' ================================Настройка LCD ===============================================
 'Declare Serial_Baud 9600
 Declare LCD_Type=0         ' Тип ЖКИ - буквенно-цифровой
 Declare LCD_DTPin PORTB.4         ' Порт данных ЖКИ
 Declare LCD_ENPin PORTB.3         ' Управление цепью E
 Declare LCD_RSPin PORTB.2         ' Управление цепью RS
 Declare LCD_Interface 4           ' 4-х битная разрядность шины данных
 Declare LCD_CommandUs 2000        ' Задержка перед посылкой команды
 Declare LCD_DataUs 50             ' Задержка перед посылкой данных
 Declare LCD_Lines 2               ' Количество строк ЖКИ
 All_Digital = true
 TRISD = %00000000
 TRISB = %00000000
 TRISC = %00000000
 TRISA=%00000100
 Symbol RS232_in = PORTA.2
 Symbol RS232_out = PORTA.1
 
 Dim gpsdata  As Byte
 Dim hh As Byte 'hours
 Dim mm As Byte 'minutes
 Dim j As Byte 'day
 Dim m As Byte 'month
 Dim a As Byte 'year
 Dim knots As Word 'speed in knots (units)
 Dim knotsten As Byte 'speed in knots (tens)
 Dim course As Word 'heading
 Dim latdeg As Byte 'degrees latitude
 Dim latmin As Byte 'minutes latitude
 Dim NS As Byte 'north or south
 Dim londeg As Byte 'degrees longitude
 Dim lonmin As Byte 'minutes longitude
 Dim EW As Byte 'east or west
 Dim fix As Word 'GPS fix
 
 'initialize variables
 hh=0
 mm=0
 j=0
 m=0
 a=0
 knots="0"
 knotsten=0
 course=0
 latdeg=0
 latmin=0
 NS="N"
 londeg=0
 lonmin=0
 EW="S"
 
 DelayMS 1000
 
 PORTA.3=0
 PORTA.0=1     ' включить питание модуля
 Cls
 Print At 1 , 1, "GPS - ON"
 
 GPS: 'read GPS
 
 SerIn2 RS232_in,T9600,[Wait("$GPRMC"),Wait(","),Dec2 hh,Dec2 mm,Wait(","),fix,Wait(","),Dec2 latdeg,Dec2 latmin]
 If fix="V" Then GoTo Nofix
 
 ' Cls
 lsd:
 Print At 1, 2, Dec2 hh,":"  ,Dec2 mm
 
 GoTo GPS
 Nofix:
 Cls
 'display last valid from GPS
 Pause 1000
 Print At 1, 1, "NO GPS fix"
 GoTo GPS
 
 вобщем чесать в затылке только остается
 
   
 кто-нибудь имел с ними дело?
 
 Более подробно здесь: http://asemlab.net/
 
 Сообщение отредактировал 
 
 DNM - Вт, 17.02.2015, 23:42
 
  |  
 |  |  |  | 
| 
 
 
 
 | anatol | Дата: Ср, 18.02.2015, 09:40  |                                                                                                                Сообщение # 2 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Помогаю всем
 
  
 Сообщений: 
 
 
 471
 
 
 Замечания: ± На сайте с 10.02.2010
 
 
 Статус: 
 Offline
 
 | Как в басне Крылова: - "...Уж сколько раз твердили миру...". Как можно вам помочь, если неизвестно с каким устройством вы пытаетесь соединиться. По фото можно только гадать. Где ссылка  на описание.
 Второе - прежде чем просить - сами пытались разобраться? В вашем случае все упрощено - при связи с компьютером через преобразователь (USB - COM) и виртуальный COM-порт все работает. С помощью какой-то программы.
 Так вот эта программа что-то делает в начальный момент, а не тупо пытается сразу прочесть данные. И называется это инициализацией.
 Я не работал с чем-то подобным, но несколько лет назад стыковал программу с подобным трекером. Поэтому и слышал про протокол обмена.
 Читайте, думайте и все получится.
 |  
 |  |  |  | 
| 
 
 
 
 | ADMIN | Дата: Ср, 18.02.2015, 12:04  |                                                                                                                Сообщение # 3 |  
 |   
 
 Администратор
 
 
  Группа:
  Администраторы
 
  Ранг: 
 
 Специалист
 
  
 Сообщений: 
 
 
 1082
 
 
 Замечания: ± На сайте с 20.08.2007
 
 
 Статус: 
 Offline
 
 | Я этот документ размещу в каталоге файлов на сайте, однако. Не против? |  
 |  |  |  | 
| 
 
 
 
 | anatol | Дата: Ср, 18.02.2015, 14:24  |                                                                                                                Сообщение # 4 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Помогаю всем
 
  
 Сообщений: 
 
 
 471
 
 
 Замечания: ± На сайте с 10.02.2010
 
 
 Статус: 
 Offline
 
 | Если вопрос ко мне - я буду только рад. Правда Истоки  назвать не могу. В моей файлопомойке безадресно лежал. Максим Александрович, считаю что выложенное на сайте без предупреждений о ограничениях, доступно всем и всегда. |  
 |  |  |  | 
| 
 
 
 
 | ADMIN | Дата: Ср, 18.02.2015, 15:29  |                                                                                                                Сообщение # 5 |  
 |   
 
 Администратор
 
 
  Группа:
  Администраторы
 
  Ранг: 
 
 Специалист
 
  
 Сообщений: 
 
 
 1082
 
 
 Замечания: ± На сайте с 20.08.2007
 
 
 Статус: 
 Offline
 
 | Согласен |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Ср, 18.02.2015, 16:01  |                                                                                                                Сообщение # 6 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | Ну, если вглядеться, то на фото можно разобрать что это вот этот модуль. Хотя, конечно, лучше писать, если на фото явно не видно...Цитата anatol (  ) Как можно вам помочь, если неизвестно с каким устройством вы пытаетесь соединиться. По фото можно только гадать. Где ссылка  на описание.
 
 Выводы не попутали? К компу на том же месте подключали  - то есть на конкретном месте спутник точно ловит?Цитата DNM (  ) НО, когда пытаюсь считывать на этой скорости контроллером - нет связи. предполагаю, что скорость должно быть другая. |  
 |  |  |  | 
| 
 
 
 
 | DNM | Дата: Ср, 18.02.2015, 16:59  |                                                                                                                Сообщение # 7 |  
 | ![DNM]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 75
 
 
 Замечания: ± На сайте с 29.09.2011
 
 
 Статус: 
 Offline
 
 | В основе лежит модуль u-bloxNEO-6M-0-001. Модуль оснащен U-FL разъемом для подключенияантенны. В комплекте с модулем идет активная керамическая антенна (22 х 22 мм)Цитата anatol (  ) Где ссылка  на описание.
 Интерфейс подключения к CraftDuino - UART.
 
 Основные характеристики модуля:
 - размер модуля: 23 х 30 мм (длина х ширина)
 - размер антенны: 22 х 22 мм (длина х ширина)
 - вес: 18 гр (вместе с антенной)
 - монтажные отверстия - 4 шт, d = 3 мм
 - питание - 3.3-5В
 
 Основные преимущества:
 - EEPROM для сохранения настроек
 - Встроенная батарея для сохранения данных вслучае отключения питания
 - Светодиод индикации наличия связи;
 - Возможность подключить антенну на ваш выбор кразъему U-FL
 
 Интерфейс передачи данных:
 - UART 9600 8N1 3.3V
 - Протокол - NMEA
 - При подаче питания модуль сразу же начинаетпередавать данные по UART с частотой 1 Гц
 
 В комплект входит
 1. Модуль GY-NEO-6MV2 - 1 шт.
 2. Керамическая антенна - 1 шт.
 
 Области использования:
 1. Flight controllers для коптеров
 2. Определение положения малоподвижных объектов(оборудования)
 3. Определение положения транспорта
 
 Цитата AndrF (  ) Выводы не попутали? К компу на том же месте подключали  - то есть на конкретном месте спутник точно ловит?НЕТ не перепутал, определяет сначала какие спутники доступны, потом, если их достаточное количество доступно и  качество связи хорошее - определяет координаты. Время показывает даже при наличии 1-3 - спутников (1 этаж 9 этажки если высунуть за окно - сразу видит несколько и быстро настраивается)
 
 
 пытался, есть подозрение, что при кварце 4 МГЦ - не достигается нужная скорость, хотя должна по идее.Цитата anatol (  ) сами пытались разобраться?или скорость другая ...
 в общем, спасибо за участие.
 за описание протокола на русском - спасибо.
 
 Более подробно здесь: http://asemlab.net/
 |  
 |  |  |  | 
| 
 
 
 
 | AndrF | Дата: Ср, 18.02.2015, 18:18  |                                                                                                                Сообщение # 8 |  
 | ![AndrF]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Продвинутый
 
  
 Сообщений: 
 
 
 145
 
 
 Замечания: ± На сайте с 03.02.2012
 
 
 Статус: 
 Offline
 
 | У вас Uart-то работает - с тем же компом по нему микроконтроллер связывали?Цитата DNM (  ) пытался, есть подозрение, что при кварце 4 МГЦ - не достигается нужная скорость, хотя должна по идее. или скорость другая ...
 А то кварцы встречались такие что на корпусе одна чистота написано, а реальная отличается в несколько раз...
 |  
 |  |  |  | 
| 
 
 
 
 | anatol | Дата: Ср, 18.02.2015, 18:38  |                                                                                                                Сообщение # 9 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Помогаю всем
 
  
 Сообщений: 
 
 
 471
 
 
 Замечания: ± На сайте с 10.02.2010
 
 
 Статус: 
 Offline
 
 | DNM, на русском сайте microchip.ru в разделе документация http://www.microchip.ru/lit/?mid=1x0 в "Reference Manual - Справочник по среднему семейству микроконтроллеров PICmicro" в  "Раздел 18. Модуль USART"  есть документ http://www.microchip.ru/files/d-sheets-rus/pic16_18.pdf. В нем на стр. 9 в средней таблице в крайнем справа столбце есть интересующая вас информация.
 Если не понять почему такие цифры (в таблице) получаются, на  грабли, при передаче данных, наступать придется часто.
 |  
 |  |  |  | 
| 
 
 
 
 | DNM | Дата: Ср, 18.02.2015, 20:38  |                                                                                                                Сообщение # 10 |  
 | ![DNM]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 75
 
 
 Замечания: ± На сайте с 29.09.2011
 
 
 Статус: 
 Offline
 
 | посмотрел, значит лучше на 20 МГц кварц использовать? а на 4 при таких скоростях не использовать.Цитата anatol (  ) Если не понять почему такие цифры (в таблице) получаются, на  грабли, при передаче данных, наступать придется часто.(хотя по букварю В.Н. Хилинского это возможно - там четко 9600 - максим. скорость при 4МГц
  ) 
 Более подробно здесь: http://asemlab.net/
 
 Сообщение отредактировал 
 
 DNM - Ср, 18.02.2015, 20:40
 
  |  
 |  |  |  | 
| 
 
 
 
 | anatol | Дата: Чт, 19.02.2015, 11:53  |                                                                                                                Сообщение # 11 |  
 |   
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Помогаю всем
 
  
 Сообщений: 
 
 
 471
 
 
 Замечания: ± На сайте с 10.02.2010
 
 
 Статус: 
 Offline
 
 | DNM, на стр 11 пункт 18.4 расписан режим работы. на стр.7 п.18.3 указан выбор частоты генератора. Причем число Х только целое от 0 до 255.
 При программировании в Протоне вы неосознанно пользуетесь "заготовками". И если вы чего-то не указываете то применяется режим по умолчанию. В вашем случае низкоскоростной режим работы (т.е. коээф. деления =64) и стандартный режим работы NRZ ([старт, 8 бит, стоп] = 10 бит). Тогда минимальная частота кварца = 9600*64*10 = 6 144 000 = 6,144 мГц.
 Причем вышесказанное относится к условию выбора внутреннего USART и соответствующих ему ножек (выводов порта). При программном USART частота кварца еще больше.
 Частота кварца подбирается из условия что число Х целое. В таком случае ошибки рассогласования между передатчиком и приемником (крайне важны при длинных передачах) - стремятся к нулю.
 
 Посмотрите на высокоскоростной режим работы, правильно настройте регистры TXSTA и SPBRG и карты в руки.Цитата DNM (  ) хотя по букварю В.Н. Хилинского это возможноВ общем - дерзайте.
 |  
 |  |  |  | 
| 
 
 
 
 | DNM | Дата: Пт, 20.02.2015, 10:03  |                                                                                                                Сообщение # 12 |  
 | ![DNM]()  
 
 
 
 
  Группа:
  Проверенные
 
  Ранг: 
 
 Понимаю
 
  
 Сообщений: 
 
 
 75
 
 
 Замечания: ± На сайте с 29.09.2011
 
 
 Статус: 
 Offline
 
 | спасибо, теперь начинаю пониматьЦитата anatol (  ) Причем вышесказанное относится к условию выбора внутреннего USART и соответствующих ему ножек (выводов порта). При программном USART частота кварца еще больше. Частота кварца подбирается из условия что число Х целое. В таком случае ошибки рассогласования между передатчиком и приемником (крайне важны при длинных передачах) - стремятся к нулю.
 Более подробно здесь: http://asemlab.net/
 |  
 |  |  |  |