|
|
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
Всем, доброго времени суток. понадобилось получать вес с весов. скачал comport411f соединение красиво проходит. Запросы на весы шлю (строка Sx1), но ответ словить не получается. Код: sql 1. в PortMon сразу же вижу Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. когда хочу прочитать Код: sql 1. буфер вроде как пуст Код: sql 1. 2. вроде как задача несложная, но опыта совсем нет в данной сфере ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 15:20:03 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
ReadStr наверное ждет перевода коретки. Читай по символу и складывай в строку сам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 15:30:59 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
wadman, Sx1 шлю с CR LF в ReadStr, как мне кажется, данные в str только пишутся... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 15:51:36 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr, возможно поможет это ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:02:56 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkrв ReadStr, как мне кажется, данные в str только пишутся... Ничего не понял. Посмотри в код ReadStr. Окончание не просто так Str. Там должно быть ожидание окончания строки и кассовый аппарат об этом не знает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 16:10:38 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
Freedoom, тогда подскажите логику работы с CreateFile... по примерам - создали и читаем-читаем-читаем, а в какой момент записать запрос и проанализировать ответ? либо создали, записали запрос, до каких пор читаем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 17:01:30 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkrдо каких пор читаем? Обычно до конца строки если в спецификациях протокола конкретного девайса не указано иное. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 17:10:41 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr, Чиатем либо до маркера окончания передачи либо до истечения таймаута. Вот пример синхронного общения "запрос-ответ". Для TComPort/ Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 17:33:31 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkrтогда подскажите логику работы с CreateFile... Лучше обратиться напрямую к YuRock. От себя могу порекомендовать Тынц и https://ru.wikibooks.org/wiki/COM-порт_в_Windows_(программирование) с COM-портом работал очень давно и с очень специфической железкой Обычно с весами идет документация (ссылка на сайт) где расписан протокол обмена данными с устройством, драйвер и примеры использования ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 17:49:20 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkrкогда хочу прочитать Код: sql 1. буфер вроде как пуст И когда же хочется читать? Сразу после записи? В пакете есть TComDataPacket, бери его, линкуй с компонентом порта, настраивай маркер конца строки и линкуй с евентом OnPacket. Символы маркера конца строки ищи в документашке на весы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 18:43:54 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
Freedoommkrтогда подскажите логику работы с CreateFile... Лучше обратиться напрямую к YuRock. Он автор CreateFile? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 21:04:06 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
wadmanFreedoomпропущено... Лучше обратиться напрямую к YuRock. Он автор CreateFile? Ого, ничё себе меня пиарят)) Нет, ко мне обращаться не надо, я в той теме всё что надо описал в этом сообщении: 20390991 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2017, 21:12:11 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr, обрабатывай событие OnRXChar и читай из порта внутри обработчика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2017, 08:45:07 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
нашлись пару процедурок: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. ну а потом Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. и всё чудно работает) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2017, 16:46:32 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. mkrи всё чудно работает) Exit'ы не надо, не, в случае Result := False? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2017, 16:51:56 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
YuRock, SetupCOMPort пока вообще не понадобилась) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2017, 16:55:30 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkrSetupCOMPort пока вообще не понадобилась) Понятно. mkr Код: pascal 1. 2. 3. 4. Можно экономить место на диске, если писать вместо такого Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2017, 17:02:50 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
тогда и в SetupCOMPort: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2017, 17:27:08 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr, В принципе, работа с COM-портом описана во многих статьях, например на сайте Delphikingdom.ru: http://www.delphikingdom.ru/asp/itemq.asp?Mode=1&ItemID=151 Пара комментов: 1) таймауты можно подстроить под себя, под конкретный протокол и конкретные обстоятельства. У вас, например, если от устройства ничего не придет, то функция будет ждать секунду (1000 мсек), а потом возвратит результат. Если это происходит в основном потоке, то секунду программа будет "висеть", не реагируя на мышку и нажатия клавиш. 2) 'baud=9600 parity=n data=8 stop=1' - это можно выставлять и через запись (структуру) DCB Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2017, 15:12:59 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
s62, спасибо, пока этот механизм внедрим, дальше купим сканер штрихкодов, будем дальше экспериментировать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2017, 08:35:21 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr, настройки порта родной программы: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Моя настройка порта: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. непонятно, как задать RI:-1, если ReadIntervalTimeout: DWORD; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2017, 10:00:17 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
msdn в помощь: https://msdn.microsoft.com/ru-ru/library/windows/desktop/aa363190(v=vs.85).aspx A value of MAXDWORD, combined with zero values for both the ReadTotalTimeoutConstant and ReadTotalTimeoutMultiplier members, specifies that the read operation is to return immediately with the bytes that have already been received, even if no bytes have been received. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2017, 10:05:38 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkrmkr, непонятно, как задать RI:-1, если ReadIntervalTimeout: DWORD;makhaon написал, а вообще вам совсем не обязательно задавать такие же параметры таймаутов, как в оригинальной программе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2017, 12:12:29 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
mkr, Описание протокола или название весового терминала укажите. Вот как в некоторых весах Cas есть посылки #05 или #06 или #11 в весы. А ответы могут начинаться #01 #02 а заканчиваться байтами #03 #04 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2017, 18:54:39 |
|
||
|
Помогите с com портом (запрос - ответ)
|
|||
|---|---|---|---|
|
#18+
лично я, когда работал с железкой по COM-порту (причём по описанию, к компьютеру к этой железке подключенному меня не допускали) пользовался библиотекой Ararat Synapse Она мне тогда больше понравилась, чем TComPort ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2017, 19:01:04 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39542820&tid=2041681]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
197ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 237ms |
| total: | 543ms |

| 0 / 0 |
