nesco, спасибо заработало Если ещё такая проблема когда я открываю программу далее ставлю скорость порта, далее жму кнопку считать читается мусор, стоить отправить какой либо символ в порт и после этого порт начинает читать реальные значения..
Этот топик читают: Гость
Ответов: 51
Рейтинг: 3
|
|||
карма: 0 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Tomset91 писал(а): ставлю скорость порта, далее жму кнопку считать читается мусорИнициализацию порта не провели потому что после смены параметров. |
|||
карма: 1 |
|
Ответов: 8926
Рейтинг: 823
|
|||
Tomset91 писал(а): Конечно я незнаю как работает компонент и какие потоки данных куда и откуда в нём идут, за что точно отвечает каждый кружок в схеме и возможно что-то не так делаю, если вы знаете внутренний алгоритм работы элемента привидите свою схему и расскажите каким образом она у вас запоминает и решите мою проблему, зачем пустые разговорыЛеонид на третьей странице писал(а): Приём данных и запись их в буфер происходит независимо от пользователя, когда пользователь подаёт команду на приём -- читается не сам порт, а его буфер -- самые первые байты в количестве, которое указал пользователь в своей команде. (Буфер не бесконечен, по умолчанию 512 байт, поэтому между скоростью порта, частотой считывания и количеством считываемых байт должно быть соответствие, например при установленной скорости 9600 бит/сек, что равно 960 байт/сек (байт=8 бит + 1 старт + 1 окончание=10 бит/байт) и установленном размере считывания 32 байта, период считывания должен быть не менее 1/(960/32)=32 миллисек. Чаще обращатся к порту -- излишне нагружать компьютер, реже -- в буфере пропадут не считанные данные. |
|||
карма: 19 |
|
Разработчик
Ответов: 26155
Рейтинг: 2127
|
|||
Tomset91 писал(а): Если ещё такая проблема когда я открываю программу далее ставлю скорость порта, далее жму кнопку считать читается мусорНу а doRXClear для чего COM писал(а): doRXClear=Очищает буфер RX входа|1| |
|||
карма: 22 |
|
Ответов: 51
Рейтинг: 3
|
|||
1nd1g0 писал(а): Инициализацию порта не провели потому что после смены параметров. |
|||
карма: 0 |
|
Разработчик
Ответов: 26155
Рейтинг: 2127
|
|||
Леонид писал(а): по умолчанию 512 байтЯ нашел, что буфер современных портов увеличен до 4096 из-за больших поддерживаемых скоростей ------------ Дoбавленo в 14.04: Tomset91 писал(а): тупо закрыть и отрыть?Это и есть переинициализация порта |
|||
карма: 22 |
|
Ответов: 51
Рейтинг: 3
|
|||
nesco писал(а): Ну а doRXClear для чего |
|||
карма: 0 |
|
Разработчик
Ответов: 26155
Рейтинг: 2127
|
|||
Tomset91 писал(а): после смены скорости жму на эту кнопку не помогает..А компонент не поддерживает RealTime смену скорости. Тут уже такое попадалось на форуме, что кому-то надо было менять скорость на лету. Но, увы, не с этим компонентом |
|||
карма: 22 |
|
Ответов: 3889
Рейтинг: 362
|
|||
nesco писал(а): по умолчанию 512 байтnesco писал(а): увеличен до 4096Вообще-то в свойствах драйвера порта настраиваются по размеру оба буфера, входной и выходной, вплоть до полного отключения, так что я бы поостерёгся заявлять конкретные значения. |
|||
карма: 1 |
|
Ответов: 51
Рейтинг: 3
|
|||
nesco, ща добавлю кнопки отрыть/закрыть и проверю, но случайно закрыл панель "элементы" как её снова вывести? уже даже не знаю куда и тыкать?
------------ Дoбавленo в 14.12: 1nd1g0, 512байт для контроллера хватит за глаза, для начала по крайней мере.. |
|||
карма: 0 |
|
Разработчик
Ответов: 26155
Рейтинг: 2127
|
|||
1nd1g0 писал(а): входной и выходной, так что я бы поостерёгся заявлять конкретные значенияЯ же написал конкретно nesco писал(а): Если я не ошибаюсь, то по умолчанию парамеры порта -- dwMaxTxQueue = 4096 и dwMaxRxQueue = 4096Это же переменные и они могут быть настраиваемые |
|||
карма: 22 |
|
Ответов: 51
Рейтинг: 3
|
|||
nesco писал(а): Это же переменные и они могут быть настраиваемые |
|||
карма: 0 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Tomset91 писал(а): где их посмотреть и поменять можно?В диспетчере устройств, например. Только они там измеряются в "валенках", похоже. |
|||
карма: 1 |
|
Разработчик
Ответов: 26155
Рейтинг: 2127
|
|||
Tomset91 писал(а): А где их посмотреть и поменять можно?Конкретные значения так просто не посмотришь. А поменять можно в настройках порта, поставив максимальные значения ------------ Дoбавленo в 14.18: 1nd1g0 писал(а): Только они там измеряются в "валенках", похожеНу да, в "валенках" или "попугаях" |
|||
карма: 22 |
|
Ответов: 51
Рейтинг: 3
|
|||
1nd1g0 писал(а): В диспетчере устройств, например. Только они там измеряются в "валенках", похоже. |
|||
карма: 0 |
|