如何从条形码扫描仪解码原始数据(非ascii char)

时间:2015-06-04 07:17:10

标签: java vb.net decode barcode

我和我的开发团队有一个项目......我们使用手持式条形码扫描仪。为了完成这项工作,我们必须将条形码扫描仪信号转换为原始数据,然后通过RS232将数据发送到我们的PC,然后使用VB.net应用程序处理它。我已经获得了我想要处理的原始数据,问题是原始数据只包含从220到255之间的不可打印的ascii字符。我的问题是有任何方法将原始数据解码为有意义的可打印-ascii (用java,ruby等语言)?

使用的扫描仪为Solutions BS100。 扫描仪的默认设置是通过USB输出数据,并将其作为HID键盘自动检测,这不是一种常见的方法,但有时作为我的团队的一名工程师,我尝试了另一种。所以我认为我正确地捕获它需要一个用于串行连接的自定义硬件。我删除了默认的USB端口,用MAX487 IC将其更改为rj45信号,然后将其转换回rs232电平,这样我就可以将信号直接输入到我的PC的COM1中

返回的数据:

250 224 250 221 255 224 221 255 248 224 248 221 255 224 253 255 221 255 224 221 255 221 255 224 221 255 253 255 224 221 255 221 255 224 253 255 253 255 224 221 255 221 255 224 253 255 246 224 246 233 224 233

来自图片: Image scanned

1 个答案:

答案 0 :(得分:2)

如果您已将扫描仪电缆从USB更改为串行配置,则通常需要配置扫描仪接口以使用串行连接(请参阅此example)。一旦配置了串行接口,就应该返回ASCII字符(49 48 49 48 48 48 48 48 48 55 51)。