微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 嵌入式数据库SQLite在远程监控系统中的应用

嵌入式数据库SQLite在远程监控系统中的应用

时间:04-09 来源:互联网 点击:

510B是Samsung公司开发的一款性价比很高的无MMU的32位ARM处理器,而,μClinux是经过对标准Linux内核的改动,专门针对没有MMU的CPU,适合嵌入式系统小型化应用。μClinux采用romfs文件格式,比Linux的ext3文件格式需要更少的空间,但却继承了大部分Linux的优秀特性。

为了将嵌有SQLite的CGI程序应用到S3C4510B+μClinux开发平台上,必须对CGI程序进行交叉编译,然后下载到ARM开发板。因为交叉编译要用到romfs格式的libsqlite.a库文件,使得过程有点麻烦,主要步骤如下:

(1)下载SQLite源代码:可以到SQLite的官方网站(http://www.sqlite.org/download.html),下载最新SQLite-3.3.7.tar.gz源代码包或者SQLite-2.8.17.tar.gz。本文以SQLite-3.3.7.tar.gz为例,进行说明。

(2)将下载的软件包进行解压缩tar zxvf sqlite-3.3.7.tar.gz这时在用户目录下会有sqlite-3.3.6文件夹生成。

(3)添加Makefile文件和修改main.mk文件交叉编译过程中,最重要的是写一个与μ2Clilnux相适应的Make-file文件。本文使用的μClinux是μClinux-dist-20041215.tar.gz,交叉编泽工具为arm-elf-tools-20030314.sh。完整的Makefile内容如下:

TOP=../sqlite-3.3.7

最后修改main.mk文件头部的TCCX为:TCCX:$(TCC)$(OPTS)$(T卜IREA[)SAFE)$(LJSI。EEP)-I.-I$(TOP)/$src$(CFLAGS)$(LDFLAGS)

再往下几行,找到LIBOBJ中的tclsqlite.o并去掉他。这样全部修改完毕。

(4)交叉编译

cd/sqlite-3.3.7make

这时会在sqlite-3.3.7文件夹中生成.romfs格式的sqlite3和静态链接库libsqlite3.a这两个最有用的东西。CGI程序的交叉编译如下:

arm-elf-gcc-Wl,-elf2flt-o Display.cgi Display.clsqlite3-L/sqlite-3.3.7

交叉编译时需要用到的静态库文件就是前面生成libsqlite3.a,结果生成300 kB的Display.cgi程序,通过NFS方法调试通过后,放到cgi-bin目录下,同内核一起编译后下载到开发板。

4结 语

嵌入式数据库SQLite在楼宇配电监控系统中的应用,满足监控系统数据共享的管理要求。由于资源占用少、性能良好和零管理成本,嵌入式数据库大有用武之地。SQLite以他小巧的体积、快速高效、稳定可靠、易移植等优势将成为嵌入式数据库领域的新宠。加上免费开放源代码、没有版权限制,是一个值得推广的应用软件。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top