导言
嵌入式体系是“操控、监督或许辅佐设备、机器和设备运转的设备”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。从中能够看出嵌入式体系是软件和硬件的综合体,还能够包括机械等隶属设备。现在国内一个遍及被认同的界说是:以运用为中心、以计算机技术为根底、软件硬件可裁剪、习惯运用体系对功用、可靠性、本钱、体积、功耗严格要求的专用计算机体系。嵌入式体系是以运用为中心,以计算机技术为根底,软硬件可裁剪,适用于运用体系,对功用、对可靠性、本钱、体积、功耗有严格要求的专用计算机体系。
体系的首要功用是通过计算机可使长途专家和相关技术人员在异地通过体系的客户器端监控多台设备的运转状况。体系在设备端的服务器端不仅仅承当一些实时检测体系状况的使命。嵌入式体系的中心,是操控、辅佐体系运转的硬件单元。规模极端宽广,从开始的4位处理器,现在仍在大规模运用的8位单片机,到最新的遭到广泛喜爱的32位,64位嵌入式CPU。
1 体系硬件规划
ARM7TDMI中心的S3C44BOX作为微处理器芯片,体系硬件结构结构图如图l所示,其电路原理图如图2所示。
1.1 存储模块规划
体系的FLASH选用的是HY29LV160,容量巨细为2M字节,充任S3C44BOX的程序存储器,其内部寄存发动代码、uclinux内核、以太网MAC地址以及运用程序等。HY29LV160的单片存储容量为16M位(2 M字节),作业电压为2.7 V~3.6 V,选用48脚TSOP封装或48脚FBGA封装,16位数据宽度,能够以8位(字节形式)或16位(字形式)数据宽度的方法作业。在本体系规划进程中,考虑到uclinux操作体系带运用程序的最大容量不会超越l_7 MB,因而,Flash选用巨细为2MB的FLASH存储器就能够满意体系的需求。DRAM选用的是HY57V641620,用于设置程序仓库和寄存各种变量。HY57V641620存储容量为4组x 16 M位(8 M字节),作业电压为3.3 V,依据体系需求,可构建16位或32位的SDRAM存储器体系。但为充分发挥32位CPU的数据处理才能,体系选用32位的SDRAM存储器体系,共16 MB的SDRAM空间。
Flash 是一种创造东西,规划人员和开发人员可运用它来创立演示文稿、运用程序和其它答应用户交互的内容。Flash 能够包括简略的动画、视频内容、杂乱演示文稿和运用程序以及介于它们之间的任何内容。一般,运用 Flash 创造的各个内容单元称为运用程序,即便它们或许仅仅很简略的动画。您也能够通过增加图片、声响、视频和特别效果,构建包括丰厚媒体的 Flash 运用程序。Flash 特别适用于创立通过 Internet 供给的内容,因为它的文件十分小。Flash 是通过广泛运用矢量图形做到这一点的。与位图图形比较,矢量图形需求的内存和存储空间小许多,因为它们是以数学公式而不是大型数据集来表明的。位图图形之所以更大,是因为图画中的每个像素都需求一组独自的数据来表明。
1.2 网络接口模块规划
体系的网络接口芯片选用的是RTL8019AS。它是一款10 M以太网芯片,能够为体系供给以太网的接入。RTL8019AS数据总线宽度为16位。因而规划中将IOCS16B引脚上拉。RTL8Ol9AS内部集成了两块RAM。一块16 kB,地址为0x4000—7FFF;一块32字节,地址为0x0000一Ox001F。16 k的RAM用作收发数据的缓冲区,一般将0x4000—0x46FF作为发送缓冲区,0x4700—0x7FFF作为接纳缓冲区。RTL8019的中止输出INTO与S3C44BOX的EINTO端相连。
I0S2上拉,其它悬空,当RTL8019AS的引脚悬空时,引脚的输入状况为低电平,里边有一个100 kΩ的下拉电阻,因而IOSO,IOSI,I0S3均为低电平,芯片的I/0基址是200H。片选AEN接处理器的nGCS5也便是Bank5,因而RTL8019在体系中分配的地址规模为:0xoa000000—0xoc000000。因为数据总线宽度为16位,处理器的A1衔接8019的SA0,20F001是网卡滤波器,内部包括一对低通滤波器和一对阻隔变压器。
2 体系软件渠道的构建
uclinux表明micro-control linux.即“微操控器领域中的Linux体系”,是Lineo公司的主打产品,一起也是开放源码的嵌入式Linux的模范之作。uCLinux首要是针对方针处理器没有存储办理单元MMU(Memory Management Unit)的嵌入式体系而规划的。它现已被成功地移植到了许多渠道上。因为没有MMU,其多使命的完成需求必定技巧。
uclinux通过对规范Linux内核的改动,形成了一个高度优化的、代码紧凑的嵌入式Linux,尽管它的体积很小,但uclinux依然保留了Linux的大多数的长处:安稳、杰出的移植性、优异的网络功用、对各种文件体系齐备的支撑,以及规范丰厚的API,合适长途装备模块的树立。
体系选用GNU的套件arm-elf东西链:arm—elf-tools-20030314.sh树立对uclinux进行编译的穿插环境。将arm-elf-tools-20030314.sh拷贝到根目录,运转装置:
sh arm-elf-tools-20030314.sh即可对uclinux进行编译和移植了
穿插编译成功后,在uClinux-dist/目录下发生images目录,其间包括的3个二进制文件文件image.ram,image.rom和romfs.img。
3 体系软件规划
体系的软件是完成长途装备模块的中心,首要编写bootloader的进程,以优化体系在开发板上的履行,然后完成了运用程序以及设备驱动程序的开发。运用程序的开发首要是依据Socket运用程序的编写。
3.1 Bootloader的规划
Bootloader的规划首要是为了在体系上电复位之后,将体系程序履行跳转到体系内核的履行地址。针对这个首要的功用,有必要对微处理器的内核以及其他部分进行初始化以及其它的功用扩展,Bootloader它首要完成了以下几个进程:
(1)树立中止向量表
(2)初始化各种处理器形式
(3)引进特别变量
(4)初始化memory
(5)代码仿制
完成了体系的硬件初始化进程后,将CPU运用权交给了操作体系,然后完成了。Bootloader的终究意图。
3.2设备驱动程序开发
Linux对设备的操作Linux体系拜访设备就像拜访文件—样。例如翻开设备运用体系调用open(),封闭设备运用