C 语言-条码扫描测试程序
功能及原理
- 此程序主要实现了产品条码的扫描功能,可以用于测试华禹手持设备的条码扫描功能。
- 程序通过串口与条码头进行通信;条码头通过扫描,把信息返回给串口,程序把串口返回的信息进行处理,得到所需要的信息。
设计思路
程序演示
所用到的数据有:
-
GPIO_SWITCH_PIN //GPIP_PORT_3
GPIO_BARCODE_POWER_PIN //GPIP_PORT_26
GPIO_BARCODE_CTS_PIN //GPIP_PORT_1
#define GPIO_BARCODE_TRIGGER_PIN (27|0x80)
初始化串口
-
GPIO_WriteIO(GPIO_SWITCH_PIN,0);
-
GPIO_ModeSetup(GPIO_SWITH_PIN47, 1);
-
GPIO_ModeSetup(GPIO_SWITH_PIN48,1 );
-
GPIO_WriteIO(1, GPIO_SWITCH_A0);
-
GPIO_WriteIO(0, GPIO_SWITCH_A1);
初始化条码头
打开条码头电源:
-
GPIO_WriteIO(GPIO_BARCODE_POWER_PIN,1);
使条码头处于向串口发送数据状态
-
GPIO_WriteIO(GPIO_BARCODE_CTS_PIN,1);
使trig引脚处于关闭
-
GPIO_WriteIO(GPIO_BARCODE_TRIGGER_PIN,1);
接收信息
设置trig 引脚触发条码
- GPIO_WriteIO(GPIO_BARCODE_TRIGGER_PIN,1);
- 延时函数();
- GPIO_WriteIO(GPIO_BARCODE_TRIGGER_PIN,0);
扫描产品条码;
从串口中读取数据:
处理、显示信息
模式变更
- 设置CTS脚,让条码头处于等待接收串口数据状态
-
GPIO_WriteIO(GPIO_BARCODE_CTS_PIN,0);
- 发送命令:
- 设置连续扫描模式: 07 C6 04 00 FF 8A 04 FD A2
- 设置按键扫描模式: 07 C6 04 00 FF 8A 02 FD A4
- 命令详情请查看SE955 FINAL IG.pdf
- 设置CTS脚,让条码头处于向串口发送数据状态
关闭通信
- 关闭电源:GPIO_WriteIO(GPIO_BARCODE_POWER_PIN,0);
- 关闭串口 GPIO_WriteIO(GPIO_SWITCH_PIN,1);
资源