核心技术优势/方案详细规格/产品实体图/PCB/方块图Datasheet/测试报告/Gerber/Schematics/User manual +一键获取
扫码枪是用来扫描条码的设备,俗称扫码器、扫描器、扫描枪等。是光学、机械、电子、软件应用等技术
紧密结合的高科技产品,是键盘、鼠标之后的主要电脑输入设备。从直接的图片、照片、胶片等图纸到文稿都可用扫码枪输入到计算机中,实现信息处理、管理、使用、储存或输出。适用于物流、工厂、码头等工作环境恶劣,且工作负荷较高的行业。
i.MX 6ULL系列具有一个单核Cortex-A7平台,运行频率最高可达900 MHz,配备128KB L2缓存和16位DDR3/DDR3L/LPDDR2支持,是一个高效率、高性价比应用处理器系列。
? i.MX6ULL应用处理器方框图
硬件设计说明:
i.MX 6ULL开发板的功能电路及接口非常丰富,针对于扫码枪,硬件部分我们只需要在上面做减法,保留开发板方框图中的黄色部分。
? i.MX6ULL开发板部分原理图
? i.MX6ULL开发板PCB Layout
软件设计说明:
本软件系统采用的是Linux系统,Linux具有开源、快速移植、应用广泛的特点,整个系统包括uboot、Linux Kernel、rootfs。由于将uboot、kernel、rootfs都放在16或32MB SPI Nor Flash中,并且要求快速启动,因此软件设计的一个任务是要对Linux系统进行裁剪使尽可能小。本章节主要对uboot、kernel、rootfs的移植裁剪以及应用程序测试说明。
1、Uboot
uboot是bootloader,主要任务是初始化ARM、时钟、外部DDR3、QSPI Nor Flash等,以及将Kernel从SPI Nor Flash中复制到DDR3中运行引导起来。
i.MX6ULL上电启动过程中首先是执行ROM Boot,读到QSPI启动方式设置后(硬件电路需先设置成QSPI启动),先执行spiflash中的uboot,为了更快地运行uboot,需要对uboot进行移植裁剪,同时删除一些不必要的功能。
(1)uboot配置和修改
uboot配置通过窗口菜单的形式可以配置,在uboot当前路径中执行以下命令:
export CROSS_COMPILE=arm-linux-gnueabihf-
export ARCH=arm
make menuconfig
然后会弹出下图窗口:
在窗口中菜单中进行配置,选择SPI Flash驱动,同时将一些不必要的功能去掉如net、fs、I2C等,将delay参数改成0,另外可以对uboot的源码进行删减,以尽可能地加快uboot的启动。
(2)uboot编译
export CROSS_COMPILE=arm-poky-linux-gnueabi-
export ARCH=arm
make clean
make u-boot.imx
最后编译出u-boot.imx,可以用于下载到spi flash中。
2、Linux Kernel
Linux Kernel是整个系统的核心部分,其可靠性和稳定性与否决定了整个系统的可行性,硬件驱动程序也其中。NXP同样提供基于i.MX6ULL的Linux源码,在此基础上进行移植裁剪。
(1)Linux移植
export CROSS_COMPILE=arm-poky-linux-gnueabi-
export ARCH=arm
make imx_v7_defconfig
打开配置窗口,执行以下命令:
make menuconfig
然后会弹出以下配置窗口:
增加I2C、Carmera ov5640以及spi flash驱动,并将一些不要的net和驱动去掉。
Ov5640驱动配置在Device Drivers--->Multimedia support-->V4L platform devices
另外,需要在设备树文件imx6ull-14x14-evk.dts中的I2C增加ov5640的一些参数配置,如下图所示:
(2)Linux Kernel编译
执行以下命令编译
make
最后会编译出zImage 和imx6ull-14x14-evk.dtb,可以用于下载到spi flash。
3、rootfs
为了执行应用程序,需要移植rootfs,通过buildroot可以裁剪出最小的rootfs,rootfs以initramfs形式通过
kernel引导起来。
(1)下载buildroot源码:
git clone git://git.buildroot.net/buildroot
(2)配置和编译
make menuconfig
make
然后会编译出最小的rootfs
将rootfs放在kernel同级目录,在Linux Kernel中配置initramfs,可以与kernel编译在一起。
4、下载
使用NXP提供的uuu工具将uboot和zImage以及imx6ull-14x14-evk.dtb下载到spiflash中
uuu uuu-spi
下载成功后然后上电启动后,调试串口输出一些启动信息:
5、测试摄像头
执行以下命令:
# /usr/mx6s_v4l2_capture.out -m 1
然后会在LCD屏上显示摄像头采集的图像:
在扫码枪的应用中,需要另外开发识读二维码算法或者购买第三方的算法移植,以实现扫码的功能。
► 场景应用图
► 产品实体图
► 展示版照片
► 方案方块图
► 核心技术优势
●PCB板层:核心板4层,外围板2层; ●工作温度:工业级-40 ℃ ~ 105 ℃; ●封装:14x14mm, 0.8mm间距,和9x9mm, 0.5mm间距,两种BGA封装可选; ●功耗低:深度睡眠模式,10.7mW; 系统空闲模式,20.6mW,详见附件文档AN5345.pdf. ●可扩展性好,IO接口丰富; ●启动速度快:约2S(从上电开始到应用程序加载之前)。
► 方案规格
●工作电压:DC5V±10%; ●扫描条码类别:一维码,二维码。 ●识读精度:≥4mil.
相关资料下载: