реклама на сайте
подробности

 
 
> USART запрос/ответ, как принять массив через функцию getchar() ?
mr_smit
сообщение Dec 17 2011, 17:20
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 62
Регистрация: 22-07-09
Пользователь №: 51 457



Здравствуйте. Необходимо обмениваться данными с устройством. Каждые 250 мс необходимо отправить:
Запрос: 82 10 F1 21 01 A5
и получить:
Ответ: 80 F1 10 26 61 01 3B 90 41 04 00 00 00 00 47 80 00 00 00 52 52 80 18 00 8E 00 5C 00 00 00 00 00 00 00 00 00 FF FF DD A4 47 02 CE

Данные в ответе выделены зеленым (меняются). Длинна ответа не меняется. Как принять этот массив???

В CVAVR использую мастер начальной настройки. Там создается кольцевой буффер. Т.е. первый байт который попал в буффер первым из него и выйдет. Запрос этого байта через функцию getchar(). Никак не соображу как реализовать. Т.е. получается мне надо вызвать эту функцию "длинна массива" раз. Или создать ещё один промежуточный буффер и в него считывать при каждом вызове getchar() ? Или может какой алгоритм существует. Короче запутался.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- mr_smit   USART запрос/ответ   Dec 17 2011, 17:20
- - AHTOXA   Да, заведите второй буфер, для пакета. Заведите сч...   Dec 17 2011, 19:08
- - ILYAUL   80 F1 10 26 , а вот 0x26 это счётчик передаваемых ...   Dec 17 2011, 20:33
|- - mr_smit   Цитата(ILYAUL @ Dec 17 2011, 23:33) 80 F1...   Dec 17 2011, 21:24
|- - AHTOXA   Кольцевой буфер оставьте, он вам никак не мешает. ...   Dec 18 2011, 05:13
- - mr_smit   Просто я не понимаю каким образом мне вызывать get...   Dec 18 2011, 06:24
- - mr_smit   В общем убрал кольцевой буффер и сделал вот так: К...   Dec 18 2011, 09:07
- - mr_smit   И еще: Кодunsigned char startCommunication[...   Dec 18 2011, 12:14
- - AHTOXA   Цитата(mr_smit @ Dec 18 2011, 15:07) Выда...   Dec 18 2011, 14:06
- - mr_smit   AHTOXA, спасибо!!!!! Кодvoid S...   Dec 18 2011, 18:20
|- - AHTOXA   Цитата(mr_smit @ Dec 19 2011, 00:20) А во...   Dec 18 2011, 21:06
|- - _Артём_   Цитата(mr_smit @ Dec 18 2011, 20:20) А мо...   Dec 18 2011, 21:26
- - sigmaN   ЦитатаКодwhile (*command) {} там наверно д...   Dec 18 2011, 20:39
- - mr_smit   Ну примерно понял. Спасибо. И ещё. Как лучше орган...   Dec 19 2011, 07:48
- - sigmaN   ЦитатаЗавести переменную битовую как флаг разрешен...   Dec 19 2011, 08:16
- - mr_smit   Цитата(sigmaN @ Dec 19 2011, 11:16) Вот т...   Dec 19 2011, 08:48
- - mr_smit   У меня тут вопрос появился. Нигде не смог найти т...   Dec 20 2011, 11:07
- - toweroff   как обычно, наверное... знаковый байт, старший бит...   Dec 20 2011, 12:17
- - mr_smit   Ладно, мне надо вычесть 40. Т.е. 40 dec в hex буде...   Dec 20 2011, 17:35
|- - Палыч   Цитата(mr_smit @ Dec 20 2011, 21:35) Ладн...   Dec 20 2011, 17:56
|- - toweroff   Цитата(mr_smit @ Dec 20 2011, 21:35) Кодi...   Dec 20 2011, 18:48
- - mr_smit   Цитата(toweroff @ Dec 20 2011, 21:48) а н...   Dec 20 2011, 19:27
|- - toweroff   Цитата(mr_smit @ Dec 20 2011, 23:27) Реши...   Dec 20 2011, 19:44
- - mr_smit   Цитата(toweroff @ Dec 20 2011, 15:17) ......   Dec 20 2011, 19:51
- - XVR   Жуть, столько телодвижений вместо того, что бы про...   Dec 21 2011, 11:18
|- - toweroff   Цитата(XVR @ Dec 21 2011, 15:18) signed c...   Dec 21 2011, 11:57
- - mr_smit   Цитата(XVR @ Dec 21 2011, 14:18) Жуть, ст...   Dec 21 2011, 18:10
|- - toweroff   Цитата(mr_smit @ Dec 21 2011, 22:10) А в ...   Dec 21 2011, 18:14
|- - _Артём_   Цитата(mr_smit @ Dec 21 2011, 20:10) Спас...   Dec 21 2011, 21:09
- - mr_smit   Просто вроде как sizeof должна возвращать длину ма...   Dec 21 2011, 22:03
|- - _Артём_   Цитата(mr_smit @ Dec 22 2011, 00:03) Прос...   Dec 21 2011, 23:11
|- - XVR   Цитата(_Артём_ @ Dec 22 2011, 03:11) Но в...   Dec 22 2011, 10:24
- - mr_smit   Всем спасибо!   Dec 22 2011, 19:31


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th June 2025 - 16:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01388 секунд с 7
ELECTRONIX ©2004-2016