прием из UART

В этот форум переносятся темы из форума "Новые" которые при рассмотрении модератором или автором признанны либо не верными, либо ошибочными.
Ответить
RusSanya
Рядовой
Сообщения: 15
Зарегистрирован: 14.09.2015{, 15:17}
Репутация: 0

прием из UART

#1

Сообщение RusSanya » 18.09.2015{, 16:01}

не могу понять как очищается буфер при приеме новых данных. Такое ощущение что он вообще не очищется, по крайней мере в коде не нашел.

Аватара пользователя
Сергей
Лейтенант
Сообщения: 578
Зарегистрирован: 31.08.2015{, 15:06}
Репутация: 6
Имя: Сергей
Контактная информация:

прием из UART

#2

Сообщение Сергей » 18.09.2015{, 16:30}

RusSanya, это баг или Вы чего то не поняли или не нашли? Если баг то в каком блоке?
4146004.png
Если Вы это пробовали, а оно не работает, значит это баг. Тему оставляем здесь для голосования.
Если Вы этого не пробовали, то вопросы надо задавать в других разделах. Отпишитесь и я тему перенесу.

Ув. пользователи, когда пишите в этот раздел указывайте что конкретно не работает, а не: мне кажется, не могу понять, ощущение... Если это реально баг, то он будет и у других пользователей и они проголосуют, а автор исправит. Но для того что бы другие пользователи проверили надо четко описать проблемное место. Можно и видео снять, если описать не можете.

RusSanya
Рядовой
Сообщения: 15
Зарегистрирован: 14.09.2015{, 15:17}
Репутация: 0

прием из UART

#3

Сообщение RusSanya » 21.09.2015{, 09:02}

Вот проект. По умолчанию стоит очистка при приеме новых данных.
5699999.jpg
Вот, что компилируется:
7816096.jpg
Очистки тут явно нет. 
В результате выполнения: посылаю "1" и начинается бесконечная посылка "ok"
Если в скетч руками добавить очистку буфера в конец основной проги, то все становится на свои места: одна посылка "1" - один ответ "ok"

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 789
Откуда: Астрахань
Имя: Сергей
Контактная информация:

прием из UART

#4

Сообщение support » 19.10.2015{, 21:04}

Вы немного не правильно поняли понятие очистка буфера. Там написано "Очистка буфера при приёме новых данных". То есть вы послали 1. Она  и будет висеть на выходе пока вы не пошлете что то другое. Например послали 2, и теперь на выходе висит 2.
Во втором режиме происходит накопление полученных данных. То есть вы послали 1 на выходе повисла 1, послали два на выходе 12, и так далее. По переднему фронту на входе R происходит очищение выхода.
Автор программы FLProg.

Ответить

Вернуться в «Не принятые»