|
USART и NMEA |
|
|
|
Dec 28 2011, 13:54
|
Участник

Группа: Участник
Сообщений: 59
Регистрация: 20-11-10
Пользователь №: 61 036

|
Здравствуйте!
Надо ли преобразовывать как-то ASCII коды, которые получаю по USART, (типичная последовательность NMEA $GPZDA,102433.00,28,12,2011,,*6A, из которой мне нужны только 2-5 поля)? (я так понимаю, что не надо)
Не подскажите более удачный алгоритм считывания символов с USARTa, кроме как перечисление if'ов?
|
|
|
|
|
 |
Ответов
|
Jan 10 2012, 17:43
|
Участник

Группа: Участник
Сообщений: 59
Регистрация: 20-11-10
Пользователь №: 61 036

|
Как организовать буфер я нашёл. А вот как работать со строкой я так и не понял, тем более что библиотека iostream не подключается, а выдаёт ошибки при компиляции, поэтому невозможно использовать фунцию типа strcpy(s1,s2)..
compiling main.c... P:\Keil\ARM\RV31\INC\rw/_defs.h(781): error: #20: identifier "namespace" is undefined P:\Keil\ARM\RV31\INC\rw/_defs.h(781): error: #65: expected a ";" P:\Keil\ARM\RV31\INC\iosfwd(93): error: #20: identifier "namespace" is undefined P:\Keil\ARM\RV31\INC\iosfwd(93): error: #65: expected a ";" P:\Keil\ARM\RV31\INC\iosfwd(117): error: #65: expected a ";" P:\Keil\ARM\RV31\INC\iosfwd(122): error: #65: expected a ";" P:\Keil\ARM\RV31\INC\iosfwd(127): error: #65: expected a ";" ...
Что делать с принятой строкой, чтобы извлечь из неё нужную мне информацию?
|
|
|
|
|
Jan 10 2012, 18:22
|
Местный
  
Группа: Свой
Сообщений: 311
Регистрация: 12-01-11
Из: Калининград (Koenigsberg)
Пользователь №: 62 182

|
Цитата(MarYuriy @ Jan 10 2012, 20:43)  Как организовать буфер я нашёл. А вот как работать со строкой я так и не понял, тем более что библиотека iostream не подключается, а выдаёт ошибки при компиляции, поэтому невозможно использовать фунцию типа strcpy(s1,s2).. Причём тут iostream если речь идёт о Си, не Си++ ? Подключайте string.h там strcpy объявлена Цитата функция поиска подстроки в строке: ищете подстроку $GPZDA в буфере Чудовищно тяжёлая операция для МК. На длинных строках умрёт.
--------------------
typedef enum { no, yes, maybe } bool; | блог тут
|
|
|
|
|
Jan 11 2012, 09:05
|
Местный
  
Группа: Свой
Сообщений: 311
Регистрация: 12-01-11
Из: Калининград (Koenigsberg)
Пользователь №: 62 182

|
Цитата(WHALE @ Jan 11 2012, 07:24)  Та ладна, чё там тяжелого.Гляньте исходник в вашем компиляторе. Там тупо перебор от забора и до обеда (gcc). Пробовал как-то так делать и это оказалось жутко медленно. Например, принято 200 байт и из них нужно найти 5 - это делалось в цикле, а приём в прерывании, так кроме поиска подстроки проц на 100 МГц больше ничего не мог делать.
--------------------
typedef enum { no, yes, maybe } bool; | блог тут
|
|
|
|
Сообщений в этой теме
MarYuriy USART и NMEA Dec 28 2011, 13:54 andrewlekar Я 3 раза перечитал, но так и не понял сути вопроса... Dec 29 2011, 05:02 MarYuriy Цитата(andrewlekar @ Dec 29 2011, 08:02) ... Dec 29 2011, 11:39  _Артём_ Цитата(MarYuriy @ Dec 29 2011, 13:39) Пот... Dec 29 2011, 12:14   MarYuriy Цитата(_Артём_ @ Dec 29 2011, 15:14) Непо... Dec 29 2011, 13:00    _Артём_ Цитата(MarYuriy @ Dec 29 2011, 15:00) Я о... Dec 29 2011, 16:15 SSerge Повышаем градус абстракции!
От GPS-модуля ведь... Dec 29 2011, 06:20 MKdemiurg Ты ЩО дурный (С) Без обид
У тебя сообщение нач... Dec 29 2011, 11:56 Kuzmi4 2 MarYuriy
Там кстати не всё железо даёт sentence ... Dec 29 2011, 12:08 andrewlekar Цитатаwhile (!CharNum==32)
Во-первых, такой ко... Dec 30 2011, 04:46 MarYuriy _Артём_, я использую Trimble Resolusion-T. Если да... Dec 30 2011, 12:03 lexanet Посмотрите LPC1768. Установка времени. (WEB&GP... Jan 6 2012, 17:11    _Артём_ Цитата(Cosmojam @ Jan 11 2012, 11:05) Там... Jan 12 2012, 11:44 lexanet Не такая и тяжелая эта операция. У меня счас буфер... Jan 11 2012, 05:15 Cosmojam Это что-то вроде дерева получается, должно быть оч... Jan 13 2012, 13:03 _Артём_ Цитата(Cosmojam @ Jan 13 2012, 15:03) А е... Jan 13 2012, 14:36 kan35 В свое время столкнулся с задачей разбора RMC и GG... Jan 14 2012, 07:17 Alexey K Решил задать два вопроса здесь чтобы не плодить те... Jun 13 2012, 06:30 V_G Цитата(Alexey K @ Jun 13 2012, 16:30) Доп... Jun 13 2012, 07:01 Alexey K Данные я формирую так что по первому пункту первом... Jun 13 2012, 07:12
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|