摘 要:本文介绍了qt/embedded图形界面系统在嵌入式linux系统和s3c2410平台的物流信息终端上的移植与开发过程,以及在物流信息终端上定位功能的系统设计方案和qt/embedded编程实现,并给出实验结果。
qt/embedded是奇趣科技推出的基于linux的嵌入式平台开发工具,是qt的嵌入式版本。由于kde等项目均使用qt作为支持库,所以许多基于qt的x windows程序可以非常方便地移植到qt/embedded版本上。qt/embedded具有面向对象、跨平台和界面设计方便美观等优点,已得到了广泛的应用。 本文针对当前物流行业终端定位功能的需求,提出与之相适应的物流终端定位功能实现方案,并利用qt/embedded,在基于嵌入式linux和s3c2410的物流信息化终端平台上对终端定位功能进行了初步实现。 软硬件系统设计原理
基于现有网络建设的总体情况和物流配送过程中对定位数据的可靠性、连续覆盖性、精度的要求,并综合考虑各种定位技术的发展现状及技术成熟度、实现成本等因素,本系统在物流配送网络中采用了gps辅助定位系统,即gps+cellid+rfid+图形道路匹配相结合的定位技术。
系统的软硬件功能框图如图1所示,开发板cpu采用的是三星公司的s3c2410。该处理器内部集成了arm公司arm920t处理器核的32位微控制器。gps模块利用rs232接口与开发板通信,提供卫星定位信号;gsm/gprs模块提供通信以及cellid定位信息获取;rfid模块提供标签信息采集和rfid定位功能。终端通过gsm/gprs通信网络与物流信息控制中心建立联系,提交相关数据采集信息和接收物流信息控制中心指令。
图1 系统软、硬件功能框图
系统采用嵌入式linux操作系统,移植qt/embedded 3.3.4和sqlite数据库,采用qt编程实现物流信息化终端定位功能。
软件系统设计
本文的软件系统设计主要以s3c2410平台为核心,通过rs-232串口从gps模块、gsm/gprs模块、rfid模块提取定位信息,加以分析转换,并根据需要用于终端导航或通过gsm/gprs网络提交给物流信息控制中心。
宿主机开发环境建立
由于目标平台资源所限,需要搭建交叉编译环境,本系统开发过程中采用的平台如下: 宿主机:red hat 9.0 qt/x11 3.3.4 qt/embedded 3.3.4 sqlite 2.8.16 cross-2.95.3.tar.bz2 目标机:linux kernel 2.4.18 qt/embedded 3.3.4 sqlite 2.8.16
qt/embedded 3.3.4移植
为了正确交叉编译qt/embedded,建议宿主机完全安装red hat 9.0,同时要确保uuid、zlib、jpeg、gif、png、sqlite等qt中所需要的头文件、库文件在交叉编译前正确安装,并移植相应的库文件至目标机中,此类文件的具体安装在此不再赘述。下面主要对qt/embedded 3.3.4的交叉编译及移植进行详细讨论。
下载解压源文件 $ cd ~ $ mkdir -p qt_embedded/ $ cd qt_embedded $ wget ftp://ftp.trolltech.com/qt/source/qt-x11-free-3.3.4.tar.bz2 $ wget ftp://ftp.trolltech.com/qt/source/qt-embedded-free-3.3.4.tar.bz2 $ tar jxf qt-x11-free-3.3.4.tar.bz2 $ tar jxf qt-embedded-free-3.3.4.tar.bz2 $ mkdir -p qt-embedded-free-3.3.4-target/ $ sudo cp -r qt-embedded-free-3.3.4/ qt-embedded-free-3.3.4-target/ 安装qt/x11 $ cd qt-x11-free-3.3.4 $ export qtdir=$pwd $ export path=$qtdir/bin:$path $ export ld_library_path =$qtdir/lib:$ld_library _path $ echo yes | ./configure -thread -plugin-sql-sqlite -prefix /usr/local/ qt-3.3.4/ $ make $ sudo make install
安装qt/e 3.3.4的宿主机版本
为便于在宿主机上进行嵌入式程序开发,利用qvfb进行虚拟嵌入式lcd屏幕显示。
$ cd ../qt-embedded-free-3.3.4 $ export qtdir=$pwd $ export path=$qtdir/bin:$path $ export ld_library_path =$qtdir/lib:$ld_library _path $ echo yes | ./configure -thread -plugin-sql-sqlite -prefix /usr/local/qt-embedded-3.3.4-host -qvfb $ make $ sudo make install $ sudo cp -r lib/fonts/ /usr/local/qt-embedded-3.3.4-host/lib/ 安装qt/e 3.3.4的目标机版本 $ cd ../qt-embedded-free-3.3.4-target $ cp ../qt-x11-free-3.3.4/bin/uic bin/(注意:需拷贝uic工具的qt/x11版本至安装目录中)
由于qt/e3.3.4没有专门针对触摸屏的配置选项,为了确保触摸屏能正常工作,可以利用现有的配置选项进行修
电子设计应用
摘 要:本文介绍了qt/embedded图形界面系统在嵌入式linux系统和s3c2410平台的物流信息终端上的移植与开发过程,以及在物流信息终端上定位功能的系统设计方案和qt/embedded编程实现,并给出实验结果。
qt/embedded是奇趣科技推出的基于linux的嵌入式平台开发工具,是qt的嵌入式版本。由于kde等项目均使用qt作为支持库,所以许多基于qt的x windows程序可以非常方便地移植到qt/embedded版本上。qt/embedded具有面向对象、跨平台和界面设计方便美观等优点,已得到了广泛的应用。 本文针对当前物流行业终端定位功能的需求,提出与之相适应的物流终端定位功能实现方案,并利用qt/embedded,在基于嵌入式linux和s3c2410的物流信息化终端平台上对终端定位功能进行了初步实现。 软硬件系统设计原理
基于现有网络建设的总体情况和物流配送过程中对定位数据的可靠性、连续覆盖性、精度的要求,并综合考虑各种定位技术的发展现状及技术成熟度、实现成本等因素,本系统在物流配送网络中采用了gps辅助定位系统,即gps+cellid+rfid+图形道路匹配相结合的定位技术。
系统的软硬件功能框图如图1所示,开发板cpu采用的是三星公司的s3c2410。该处理器内部集成了arm公司arm920t处理器核的32位微控制器。gps模块利用rs232接口与开发板通信,提供卫星定位信号;gsm/gprs模块提供通信以及cellid定位信息获取;rfid模块提供标签信息采集和rfid定位功能。终端通过gsm/gprs通信网络与物流信息控制中心建立联系,提交相关数据采集信息和接收物流信息控制中心指令。
图1 系统软、硬件功能框图
系统采用嵌入式linux操作系统,移植qt/embedded 3.3.4和sqlite数据库,采用qt编程实现物流信息化终端定位功能。
软件系统设计
本文的软件系统设计主要以s3c2410平台为核心,通过rs-232串口从gps模块、gsm/gprs模块、rfid模块提取定位信息,加以分析转换,并根据需要用于终端导航或通过gsm/gprs网络提交给物流信息控制中心。
宿主机开发环境建立
由于目标平台资源所限,需要搭建交叉编译环境,本系统开发过程中采用的平台如下: 宿主机:red hat 9.0 qt/x11 3.3.4 qt/embedded 3.3.4 sqlite 2.8.16 cross-2.95.3.tar.bz2 目标机:linux kernel 2.4.18 qt/embedded 3.3.4 sqlite 2.8.16
qt/embedded 3.3.4移植
为了正确交叉编译qt/embedded,建议宿主机完全安装red hat 9.0,同时要确保uuid、zlib、jpeg、gif、png、sqlite等qt中所需要的头文件、库文件在交叉编译前正确安装,并移植相应的库文件至目标机中,此类文件的具体安装在此不再赘述。下面主要对qt/embedded 3.3.4的交叉编译及移植进行详细讨论。
下载解压源文件 $ cd ~ $ mkdir -p qt_embedded/ $ cd qt_embedded $ wget ftp://ftp.trolltech.com/qt/source/qt-x11-free-3.3.4.tar.bz2 $ wget ftp://ftp.trolltech.com/qt/source/qt-embedded-free-3.3.4.tar.bz2 $ tar jxf qt-x11-free-3.3.4.tar.bz2 $ tar jxf qt-embedded-free-3.3.4.tar.bz2 $ mkdir -p qt-embedded-free-3.3.4-target/ $ sudo cp -r qt-embedded-free-3.3.4/ qt-embedded-free-3.3.4-target/ 安装qt/x11 $ cd qt-x11-free-3.3.4 $ export qtdir=$pwd $ export path=$qtdir/bin:$path $ export ld_library_path =$qtdir/lib:$ld_library _path $ echo yes | ./configure -thread -plugin-sql-sqlite -prefix /usr/local/ qt-3.3.4/ $ make $ sudo make install
安装qt/e 3.3.4的宿主机版本
为便于在宿主机上进行嵌入式程序开发,利用qvfb进行虚拟嵌入式lcd屏幕显示。
$ cd ../qt-embedded-free-3.3.4 $ export qtdir=$pwd $ export path=$qtdir/bin:$path $ export ld_library_path =$qtdir/lib:$ld_library _path $ echo yes | ./configure -thread -plugin-sql-sqlite -prefix /usr/local/qt-embedded-3.3.4-host -qvfb $ make $ sudo make install $ sudo cp -r lib/fonts/ /usr/local/qt-embedded-3.3.4-host/lib/ 安装qt/e 3.3.4的目标机版本 $ cd ../qt-embedded-free-3.3.4-target $ cp ../qt-x11-free-3.3.4/bin/uic bin/(注意:需拷贝uic工具的qt/x11版本至安装目录中)
由于qt/e3.3.4没有专门针对触摸屏的配置选项,为了确保触摸屏能正常工作,可以利用现有的配置选项进行修
热门点击
推荐技术资料
| |