一种基于嵌入式Linux的磁场测量系统设计
核加以裁减、修改和补充。磁场测量系统采用的是基于ARM9内核的硬件平台,下面介绍该硬件平台下的Linux系统移植过程和方法。
4.1 建立交叉编译环境
在进行移植前,首先要建立开发平台的ARM—Linux交叉编译环境。linux下的交叉编译环境主要包括针对目标系统几部分:编译器gcc;二进制工具binutils:标准c库glibc;linux内核头文件。
4.2 启动代码的移植
启动代码主要完成硬件检测和系统引导,建立内存空间映射图,为正确调用操作系统内核做好准备。系统加电后,由引导代码进行基本的硬件初始化,然后把内核经映像装入内存运行。启动代码必须针对不同的硬件而设计,本测量系统选择了当前流行的U-BOOT引导系统进行了修改移植。
U-BOOT的启动具体可分为两个阶段,分别为硬件的初始化和内核调用的准备。U—BOOT为开源软件,可找到很多接近目标开发板的参考程序。本系统在参考韩国某公司开发的VIVI启动代码的基础上进行修改和移植,减少了开发时间且代码健壮性好。
4.3 Linux内核的移植
Linux内核的移植是整个嵌入式系统设计的关键部分。Linux内核移植需要完成内核与启动代码的衔接部分的移植以及硬件相关部分的移植,如CPU、中断控制器、定时器、内存控制器等的移植。根据磁场测量系统的硬件结构,Linux内核的移植分为以下四个步骤:
(1)首先是选择内核版本、建立交叉编译环境。本系统选择的Linux内核版本为2.4.18,交叉编译工具选择arm-1inux-gcc 3.3.2;
(2)然后是配置和编译内核,针对硬件对源码作必要的修改。①先修改根目录下的Makefile文件,分别指定目标平台为ARM和指定交叉编译器是arm-1inux-gcc 3.3.2;②接着对linux内核进行配置,此过程必须根据系统硬件和功能进行裁剪。进入linux内核目录输入命令make menuconfig,其配置方式为通过图形方式进行配置,对驱动程序进行裁剪;③配置完成后保存退出,输入Make命令,编译成功后会在 arch/arm/boot目录中生成内核的镜像;
(3)接着制作根文件系统并挂载。要实现程序固化,还必须将程序和模块添加到根文件系统中。在程序的设计中,本系统主要是使用软件QT进行触摸屏界面的开发和相关功能的设计;
(4)最后是下载、调试内核并运行。
5 结语
电磁测量已广泛应用于各个行业,随着技术的发展和进步,对磁场测量系统的精度和扩展功能要求越来越高。本文的创新之处是将当前流行的嵌入式 Linux系统和磁场测量技术结合起来,构建了一个系统功能丰富、易用性好且扩展功能强的智能化磁场测量系统。在实际应用中可提高测量系统的实时性和多任务处理的能力,符合当前测量发展的需要。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
- 基于ARM的综合测试仪设计(05-26)
- 基于ARM核微处理器的便携式管道泄漏检测仪(11-15)
- 用梯度均值法提高LPC2138的A/D分辨率(01-06)
- 基于ARM的信号发生器人机交互系统设计(01-23)
- 基于ARM9的高速数据采集系统的实现(03-04)
- 基于嵌入式Linux的磁场测量系统(03-26)