基于ARM9的交通违章抓拍系统的开发

时间:2012-08-06来源:网络

3.1.3 Bootloader 代码。

Bootloader 主要负责加载内核, 尽管它在系统启动期间执行的时间很短, 但是非常重要的系统组件, 对嵌入式系统来说是一件特别的工作。Bootloader 是严重依赖于硬件而实现的, 目前以ARM为基础的系统还没有标准的Bootloader, 针对本系统的硬件特性, 在ppcboot 的基础上加以修改, 生成适合本系统的启动代码。

3.2 应用程序的开发

程序主要实现以下功能: 现场红灯和线圈信号的采集; 控制相机拍照、保存参数、传输照片和删除照片; 处理按键信息并送数码管显示; 通过以太网远程下载照片, 也可以用U 盘本地下载照片。应用程序的总体结构如图7 所示。

图6 程序结构图

系统软件的设计主要是控制相机的USB 通讯模块的编写、网络传输模块的编写、信号采集模块的编写和串口通讯模块的编写。其中USB 通讯模块是关键, 需要严格遵守数码相机的通讯协议; 网络传输采用客户机服务器方式, 本机作为客户机, 工控中心设置为服务器。检测信号模块主要是读取并口信息, 并口的操作使用端口I/O, 简单、操作性强, 并且可以清楚说明编写设备驱动程序开发所必需的底层硬件控制过程。在Linux 中有一个用于输入的命令inb( address) 和一个用于输出的命令outb( value, address) .C 语言的宏扩展实现了这两个函数, 而且不涉及任何函数库, 但使用这两个函数需要一些额外的函数, 函数ioperm( ) 从内核中申请和释放端口访问权。在Linux 下, 串口一般作为一个终端接口, 即tty 接口, POSIX.1 定义了一个查询和操作终端的标准接口, 该接口被称作termios,在系统的头文件termios.h>中定义。termios 是一个数据结构和一系列操作这些数据结构的函数, 这些函数一起构成了通用的终端界面, 提供对终端的有效控制操作, 使得系统具有复杂的异步串口设备处理能力。

程序处理流程如图8 所示。

图8 程序流程图

4 结束语

该数码电子警察系统采用高分辨率的数码相机, 清晰度高, 在运行的过程中, 抓拍成功率达到98%, 照片合格率达到95%, 误拍率低, 适用于各种恶劣的环境条件。采用实时性高的Linux2.6.12 的内核, 提供对S3C2410 的专门的支持。该系统稳定、可靠、实时性强, 且完全自主开发, 可有效控制成本, 有很强的市场竞争力。结合图像处理技术, 构建数码视频电子警察系统有更广阔的前景, 这将是下一步开发的重点。

1 2 3 4

关键词: 系统 开发 抓拍 违章 ARM9 交通 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版