LINUX.ORG.RU

Сканер штрих-кодов


0

1

Для дипломного проекта требуется считывание штрих-кодов. Естественно, соответствующей железки нет.
Результат гугления - сканеры, как правило, выглядят для компьютера как клавиатура, и передают последовательность символов.
Хотелось бы узнать поконктретнее, как передается эта последовательность, в частности, как определить конец передачи. Спасибо.

★★★★

Из мышки сделай

Deleted ()

А вообще без конкретной железки ты врят ли что-то накодишь. Посмотри в сторону драйверов штрих-м и атол, а так же документации к ним. Или, если тебе под лялих надо, то ищи даташиты и комовский сканер.

anonymous ()
Ответ на: комментарий от anonymous

Иди вдоль сделай, дурачёк.

man юмор

Да и от того, что я сделаю вдоль, из мышки сканер не перестанет возможным сделать.

Deleted ()
Ответ на: комментарий от anonymous

дурачок

selffix ещё не проснулся же :D

anonymous ()

последовательность выглядит как клавиатурный ввод. А для того, чтобы этот ввод попадал только в нужное поле, надо использовать суффиксы и префиксы. типичные префиксы указали выше (10 - line feed, 13 - cr(что-то связанное с кареткой)).

SevikL ★★★★★ ()
Ответ на: комментарий от Deleted

из мышки сканер не перестанет возможным сделать.

Пруф хоть одного рабочего варианта, только нормально работающего, а не наколенной студенческой поделки, которая только лазером и светит, что в одной из статей «компьютеры».

Ты вообще представляешь как сканер работает? В руках может держал? Ты там систему отражателей не видел? Ума не приложу как ты будешь делать такую же для луча от лазера мышки.

Ну а по ПО, сканеры работают в разных режимах: rs232, kb, usb->rs232. В кбшных все сводится к эмуляции клавиатуры, в rs232 - к потокам данных через порт. К сканерам идет толстенькая книжка с настройками (в ней куча настроечных штрих-кодов), там можно выставлять и конец строки, и все что хочешь. Обычно конец считывания это символы #10#13, видимо со времен доса еще :D

anonymous ()
Ответ на: комментарий от SevikL

суффиксы и префиксы

О вот, правильно человек поправляет, есть ещё суффиксы.

anonymous ()
Ответ на: комментарий от anonymous

это к метролоджикам толстенная книжка, ими имперский марш можно сыграть при большом желании, у остальных все проще - как раз пару суффиксов включить/выключить. и вообще, имхо, суффиксы и префиксы имеют большую нужность только при kb (usb>kb), при rs232 они без надобности

SevikL ★★★★★ ()

Хотелось бы узнать поконктретнее, как передается эта последовательность, в частности, как определить конец передачи.

Если сканер USB HID, то выглядит как обычная клавиатура. Со всеми плюсами и минусами такого подхода. «Конец ввода» при таком подходе определять не требуется: поставил клавиатурный фокус на поле ввода, клацнул сканером и работаешь дальше.

Обычно к сканеру идет специальная книжка со служебными штрих-кодами для его настройки. Среди прочих можно задавать префикс и постфикс для считываемых символов.

Macil ★★★★★ ()
Ответ на: комментарий от anonymous

Ты там систему отражателей не видел

Система отражателей там нужна только того чтобы считывать ШК из любого положения. Намного сложнее реализовать систему развертки лазерного луча в плане точности и надежности.

Кроме того, есть сканеры и на основе ПЗС матрицы, светодиоды там для подсветки. КО докладывает, что какбы все сканеры, читающие 2D штрих-коды, именно по этому принципу и сделаны.

Macil ★★★★★ ()
Ответ на: комментарий от Macil

Ну я думаю речь не о двумерных ШК идёт.

anonymous ()
Ответ на: комментарий от SevikL

То есть в самом простом случае, когда я использую сканер, он посылает в компьютер ряд чисел с штрих-кода, а затем #10#13, чтобы показать, что код закончен?

alix ★★★★ ()
Ответ на: комментарий от alix

Как будто бы с клавиатуры набрали последовательность чисел и нажали Enter?

alix ★★★★ ()
Ответ на: комментарий от anonymous

Ну я думаю речь не о двумерных ШК идёт.

Есть и одномерные на ПЗС матрице. Самые дешевые и неприхотливые в обращении, кстати. Лазерные сканеры крайне противопоказано ронять и стукать.

Macil ★★★★★ ()
Ответ на: комментарий от alix

Как будто бы с клавиатуры набрали последовательность чисел и нажали Enter?

Да. Именно так. А можно еще вот так [123456], например.

Macil ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.