CONTENTS DELETED
The author has deleted this message.
|
А как вы ответ получаете? Ставите опрос на цикл?
--
http://groups.google.ru/group/sugr |
CONTENTS DELETED
The author has deleted this message.
|
http://forum.world.st/serial-port-access-td108547.html
в последнем абзаце кое-что написано как правильно организовать считывание через #readInto:startingAt:. может поможет...
-- http://groups.google.ru/group/sugr |
In reply to this post by vmusulainen-2
Я очень извиняюсь за глупый вопрос, а зачем нужна задержка?
On Oct 24, 5:20 pm, Владимир Мусулайнен <[hidden email]> wrote: > работает вот так > > initialize > readProcess := [ [ self readFromSerialPort ] repeat ] fork. > > readFromSerialPort > | read | > (Delay forMilliseconds: 100) wait. > read := serial readString. > read > do: [ :each | > each ~= Character cr > ifTrue: [ readBuffer nextPut: each ] > ifFalse: [ > | answer | > self addRoboAnswer: readBuffer contents. > readBuffer reset ] ] > > Приведенная мною реализация вроде работает стабильнее, чем та, для > которой я приводил логи, но тоже временами случается съедание > ответов... > Причем по ощущениям, чем чаще я читаю с порта данные, тем больше > шансов, что они пропадут. > > On Oct 24, 5:08 pm, kirand <[hidden email]> wrote: > > > > > > > > > А как вы ответ получаете? Ставите опрос на цикл? -- http://groups.google.ru/group/sugr |
очевидно, для того, чтобы программа не занимала все процессорное время?
--
http://groups.google.ru/group/sugr |
Правильно ли я понял, что readString неблокирующий, т.е. он вычитывает
сколько есть в буфере (в частности, пустую строку) и сразу возвращается? On Oct 25, 5:16 pm, kirand <[hidden email]> wrote: > очевидно, для того, чтобы программа не занимала все процессорное время? -- http://groups.google.ru/group/sugr |
ну да. читает все, что доступно из порта и выдает в виде aString
--
http://groups.google.ru/group/sugr |
In reply to this post by Борис Беркгаут
CONTENTS DELETED
The author has deleted this message.
|
In reply to this post by Борис Беркгаут
CONTENTS DELETED
The author has deleted this message.
|
In reply to this post by vmusulainen-2
У вас что-то получилось/решилось с проблемой?
--
http://groups.google.ru/group/sugr |
CONTENTS DELETED
The author has deleted this message.
|
Мне кажется, стоит задаться вопросом, насколько хорошо работает
буферизация при вычитывании из последовательного порта. Потому что если ОС ничего не буферизует и VM ничего не буферизует, то вот и объяснение: данные просто дропаются, ибо аппаратный буфер у последовательного порта крохотный (16 байт). Объяснить, почему чем чаще опрашивается порт, тем больше данных теряется, я не могу. On Oct 25, 10:03 pm, Владимир Мусулайнен <[hidden email]> wrote: > Код который я привел в 3 посте этого треда работает относительно > стабильно. Общие задержки перед очередным вычитыванием составляют 500 > мс. > Если задержки уменьшать начинаются проблемы. > Код, на который который вы дали, делает примерно тоже самое. В коде у > них кстати ошибка, есть ;). Точнее, недочет сильный. но это ладно... > > Резюмируя: проблема пока отступила, но что-то там не так чисто. Я еще > буду её исследовать подробнее. > > On 25 окт, 20:29, kirand <[hidden email]> wrote: > > > > > > > > > У вас что-то получилось/решилось с проблемой? -- http://groups.google.ru/group/sugr |
In reply to this post by vmusulainen-2
CONTENTS DELETED
The author has deleted this message.
|
Очень полезные и основательные наблюдения. Очевидно, нужно проинформировать фаро-сообщество.
10 ноября 2011 г. 0:24 пользователь Владимир Мусулайнен <[hidden email]> написал: Я еще раз наткнулся с проблему работы Pharo с последовательным портом. Dennis Schetinin -- http://groups.google.ru/group/sugr |
CONTENTS DELETED
The author has deleted this message.
|
Да, очень интересно.
Хорошо, что я в свое время не стал заморачиваться с ком портом в фаре, отдали задачи сишнику, а я уже использовал его длл-и 10 ноября 2011 г. 6:21 пользователь Владимир Мусулайнен <[hidden email]> написал: Было бы неплохо еще хотя бы примерно обозначить проблему в плагине. Я -- http://groups.google.ru/group/sugr |
Free forum by Nabble | Edit this page |