一维扫描器传送给单片机的信息,怎么进行区分?

2020-01-18 18:43发布

例如选用这款扫描器,UC1500的。
这款扫描器是usb/rs232/PS、2三种接口出信号的,可以做个转换板,例如把usb转为串口(TTL)接口。
这款扫描器出来的是数字信号。

然后是使用这款扫描器的目的:用于物流分类。思路如下:
先准备三个不同的一维码假设为A,B,C(暂时不考虑长度)。自己定义让一维码A对应为广州市,B为上海市,C为北京市。
然后将A,B,C贴在自制的纸质包裹上(三者保持足够距离),通过传送带带动给扫描器扫描。
扫描器将扫描到的信息发给单片机。

问:单片机如何识别这个信号并加以区分是A还是B还是C?有没有用过的前辈给点意见指点下迷津。

1,希望有高手能帮忙解答,如果要达成以上目的需要具备哪些条件
2,可以不拘泥于这款扫描器,只有能实现自动扫描并发送信号的这类扫描一维码的设备都可以。
3,有没有用过这类设备的高手能提供下于51通信,并用51来识别处理的源码,部分的也是可以的。
4,或者有没有高手评估一下项目的可行性,和预测下开发周期。

感谢您的阅读,如果您有宝贵的意见希望不吝赐教,
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
27条回答
xintao
2020-01-19 05:50
柯铭凯 发表于 2016-3-5 15:18
是啊,您说的很对就是这个思维,现在技术上遇到的困难就是在单片机上如何利用程序来识别读到的是111,还 ...

     我也没用过扫描枪,具体的数据传输格式我也不太清楚。
     但我认为,这个问题的解决思路大致应该是这样的:
     1、首先,你应该知道51单片机用串口接收数据的流程是怎样的,也就是说,你首先应该要会用单片机的串口;
     2、你需要搞清楚你的扫描枪和单片机之间的通信协议是怎样的;
     3、搞清楚以上两个点以后,你才好确定你的程序结构;
     其实判断收到的数据是A,还是B,还是C,最后的程序结构无非就是:
        if(xxxx)
        {
                ...
        }
        else if(xxxx)
        {
                ...
        }
    或者是:
        switch (xxxx)
        {
        case A:                     
           ...
           break;
        case B:                        
            ...
            break;
        default:                        
            ...
            break;
        }

一周热门 更多>