280 likes | 433 Views
基于 DSP 的便携式一维条码识别器. 深圳大学信息工程学院 黄光齐 白 楠 唐 飞 史大昱. 设计目标. 以 TMS320F2808 DSP 处理器为核心,实现一个高性能的一维 条形码识别系统。 系统特点: 1 、便携 2 、识别速度快 3 、易于扩展 ,只需更改程序就可以完成条形码识别类型扩 展和算法升级 识别条形码类型: 1 、 UPC-A 2 、 UPC-E 3 、 EAN-13 4 、 EAN-8 5 、 Code 128.
E N D
基于DSP的便携式一维条码识别器 深圳大学信息工程学院 黄光齐 白 楠 唐 飞 史大昱
设计目标 以TMS320F2808 DSP处理器为核心,实现一个高性能的一维 条形码识别系统。 系统特点: 1、便携 2、识别速度快 3、易于扩展 ,只需更改程序就可以完成条形码识别类型扩 展和算法升级 识别条形码类型: 1、UPC-A 2、UPC-E 3、EAN-13 4、EAN-8 5、Code 128 SZU-TI DSP Lab 2
系统识别流程 系统主要工作包括:条形码信号采集、条形码信号处理、解码 后数据传送或储存。流程如下:
各系列DSP处理器性能对比 DSP处理器性能比较:
TMS320F2808主要性能参数 经过分析比较,本设计选择了TMS320F2808处理器,其主要性能 如下: 1、主频:100MHz 2、运算速度:100MMACS(Multiply-Accumulates) 3、RAM:36KB 4、Flash:128KB 5、ADC:16通道 6、通信接口:35路GPIO/两组SCI( Serial Communications Interface)
条形码扫描头 条形码扫描头我们选择了 Metrologic公司出品的IS4110,它具 有如下特点: 1、体积小,功耗低。 2、有一个10线的带状接口,除 了数据信号外,还有一些控制和状 态信号,方便处理器对进行扫描控 制。 3、扫描速度快,可达每秒钟60 线,完全满足一维条形码识别的需 要。
电源模块 (1) 系统由3.6V的锂电池供电,但系统采用的条形码扫描头需要5V 电压供电。所以,我们首先要把3.6V的电压升压到5V输出。电路 图如下:
电源模块 (2) TMS320F28x系列DSP处 理器采用低压设计,可 节省系统的功耗。其中 I/O电源采用3.3V内核 电源采用1.8V。需要将 5.0V的电压稳定降压到 1.8V和3.3V为DSP供电。 如右图:
时钟模块 原始的时钟信号可以来自于外部振荡器。本设计采用内部振荡器 方式,由一个20MHz的石英晶振提供参考频率,用两个电容滤除波。 电路图如下:
PLL倍频 本系统时钟由外接石英晶体配合内部振荡器生成,通过设置PLLCR 寄存器可以实现0.5-5倍的倍频。参考如下表。
系统复位电路 通过HD6305掌上电脑控制系统的复位。电路图如下:
A/D转换模块 (1) 这里的A/D转换模块主要是指DSP处理器上A/D转换器所需要的外 围电路。 注意问题: 为了获得更高精度的模数转换结果,在布PCB板时连接ADCINxx 引脚的模拟输入信号线要尽可能远离数字电路的信号线。为减少因 数字信号的转换产生的耦合,需要将ADC模块的模拟电源和数字电源 隔离。
A/D转换模块 (2) A/D转换模块电路图如下:
扫描控制模块 (1) 扫描头输出的信号是以5.0V为标准的TTL电平,而DSP处理器的I/O 引脚都是满足3.3V标准的CMOS电平,通信过程要注意电平之间的转 换。本系统用三极管实现升压,电阻分压实现降压,共同完成了TTL 电平与CMOS电平之间的转换。 升压电路图如下:
扫描控制模块 (2) 分压电路图如下:
HD6305掌上电脑接口 脱机工作时候,系统的工作主要由HD6305掌上电脑控制,其接 口如下图:
通信模块 (1) 为了条形码解码后显示,系统通过一组SCI(串行通信接口)实现 DSP与HD6305手持式IC卡掌上电脑的通信。电路图如下:
通信模块 (2) TMS320F2808与PC的UART口有相同的数据传输格式,不需要外接其 它串口通信芯片,经过电平转换后就可以直接与UART口连接,进行数 据传输。电路图如下:
系统软件设计 系统软件设计主要由5部分组成: 1、系统初始化--初始化CPU与外设时钟,初始化引脚功能,初始化外设,初始化中断。 2、信号采集--控制扫描头采集条码信号。 4、条形码解码--根据不同的编码方法,选择相对应的算法,解出每个条形码字符所包含的信息。 5、条形码信息传送或存储 --连机工作是系统与PC通信,脱机工作时,将解码后的数据储存在Flash中。
设计难点 1、为了实现便携特点,需要把PCB板设计得比较小,对芯片的选 择和PCB的布线带来困难。 2、整个系统要节能,软件、硬件都要充分考虑。 3、算法。
解决办法(1) 1、尽量选择体积更小的芯片。例如:
解决办法(2) 2、通过软件设置系统的节能状态。硬件上,可以用统一开关控制 电路的工作或休眠。例如:
系统照片 。