版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于ARM的图像采集无线传输系统的设计修改稿资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。毕业设计(论文)题目:基于ARM的图像采集无线传输系统的设计专 业 班 级:电子信息工程01学 号:学号姓 名:姓名李应兵指导教师:郑宽磊讲师学院名称:电气信息学院5月25日基于ARM的图像采集无线传输系统的设计RESEARCHONIMAGEACQUISITIONANDWIRELESSTRANSMISSIONTECHNOLOGYBASEDONARM学生姓名:姓名李应兵指导教师:郑宽磊讲师摘要图像采集技术一直是过内外的一个研究热点,它的应用范围十分广泛,如在银行、商场、质量检测、交通管理等。传统的图像采集系统大多数十有PC和图像采集卡构成的,其功能是将图像信号采集到电脑中,以数据文件的形式保存在硬盘上。这种图像采集系统成本一般较高,而且需要技术人员和维修人员来管理,费用较高而且传输距离有限。例如在偏远的地带、山区等恶劣的环境下,这种图像采集系统很难正常工作。近年来无线通信技术和嵌入式系统技术的迅速发展,特别是嵌入式微处理器:ARM的出现和Limix在嵌入式系统环境中的广泛应用,使图像采集系统的小型化、低成本、低功耗成为可能。当前图像监视系统领域内,有线图像监视方式受到了固有物理布线的限制,随着计算机技术和通信技术的发展,将嵌入式系统技术、无线通信技术和基于TCP/IP的Internet技术结合在一起的无线远程图像监视系统则将实现在无线宽带资源限制的情况下的实时传输视频图像。而图像采集的硬件设计也很重要,主要包括NANDFLASH接口、SDRAM接口、USB接口、UART接口、LCD接口等电路的设计。另外,系统的软件则基于Eilipse的嵌入式集成开发环境的构建,完成系统引导程序、Linux内核和文件系统的移植工作,然后利用Video4linux完成图像数据采集和JPEG压缩编码,最后根据GPRS模块检测信号强度来动态选用传输方式实现图像数据采集无线传输工作,在服务器端由用户控制系统接收图像。关键词:ARM;图像采集;嵌入式系统;Linux;无线传输;GPRSAbstractImageacquisitiontechnologyhasbeenahotresearchtopicathomeandabroad,ithaswiderangeofapplications,suchasbanks,shoppingcenters,qualitycontrol,trafficmanagement.MostofthetraditionalimageacquisitionsystemisconstitutiveofPCandprofessionalimagecapturecard,andbyconstructingprivatenetworkforimagecaptureandtransmission.Thisimageacquisitionsystemcostisgenerallyhigher,butalsoneedspecialmaintenance,highercosts,andthetransmissiondistanceislimited.Intheremotemountainousharshenvironment,thetraditionalimageacquisitionsystemisdifficulttowork.Withtherapiddevelopmentofwirelesscommunicationtechnologyandembeddedsystemstechnologyinrecentyears,especiallyfortheemergenceofARMandLinuxiswidelyusedinembeddedsystemenvironment.Soit'spossiblethattheimageacquisitionsystemminiaturization,lowcost,lowpower.Nowpicturemonitoringsystem,cableimagewithintheterritorybytheinheretsurveillanceway,withthephysicalwiringlimiteddevelopmentofthecomputertechnologyandcommunicationtechnology,embeddedsystemtechnology,wirelesscommunicationtechnologyandbasedonTCP/IPinternettechnologytogetherinwirelessremoteimagemonitoringsystemwillachieveinwirelessbroadbandresourcesundertherestrictionofvideoimagesofthereal-timetransmission.Andtheimageacquisitionofhandwaredesigeisveryimportant,mainlyincludingNANDFLASHinterfaces,SDRAMinterfaces,USBinterfaces,UARTinterfaces,LCDinterfacescircuitdesign.Inaddition,thesystembasedthesoftwareisEilipseembeddedintegratedenvironmentconstractioncompletesystemboot,LinuxKernelandfilesystem,andbyusingthetransplantationofworkVideo4linuxcompleteimagedataacquisitionandJPEGcompressioncoding,accordingtoGPRSmoduletestingsignalstrengthtodynamicallychosentransmissionmethodrealizesimagedataacquisitionwirelesstransmissionwork,intheserverisdrivedbytheusercontrolsystemreceiveimages.Keyword:ARM;imageacquisition;embeddedsystem;Linux;wirelesstransmission;GPRS目录TOC\o"1-2"\h\z\u摘要 -=1\*ROMANI-Abstract -=2\*ROMANII-第一章绪论 -1-1.1选题背景和意义 -1-1.2国内外研究现状 -2-1.3本课题的研究内容 -4-第2章系统总体设计 -6-2.1系统功能描述 -6-2.2系统组成 -6-2.3关键器件的选型 -7-2.4嵌入式操作系统的选型 -10-2.5本章小结 -11-第3章硬件系统设计 -12-3.1硬件系统结构框图 -12-3.2NANDFLASH接口电路设计 -12-3.3SDRAM接口电路设计 -15-3.4USB接口电路设计 -17-3.5UART接口电路设计 -18-3.6LCD的选择及接口电路设计 -18-3.7本章小结 -20-第4章基于Eclipse的软件系统设计 -21-4.1构建基于Eclipse的嵌入式软件集成开发环境 -21-4.2嵌入式linux系统的移植 -21-4.3图像采集程序的实现 -26-4.4GPRS介绍 -34-4.5图像数据无线传输的实现 -35-4.6服务器端程序设计 -39-4.7本章小结 -39-第5章总结与展望 -40-5.1总结 -40-5.2展望 -41-致谢 -42-参考文献 -43-第1章绪论1.1选题背景和意义图像在人们生活生产中无处不见,它在人类获取的外部信息中占据着十分重要的角色。据统计,在人类接收的信息中,视觉信息占70%以上。”百闻不如一见”,在许多场合中,图像所传递的信息要比其它任何形式更加丰富和真切。由此可见,图像信息的地位是非常重要的。在工作和生活中我们常见的各类图片都属于图像,它们是采用各种设备获取并存储起来的一种实体。而人类的视觉系统本身也是一个图像的采集系统,它能够使呈现在人们眼前的景象在人们的大脑中产生一个具体的图像[1]。近年来嵌入式系统技术的飞速发展更为图像采集与处理系统的发展提供了无限的动力。嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、使用于应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统[2]。ARM(AdvancedRISCMachines)是嵌入式系统技术发展的一个标志性产物。ARM是当前世界领先的32位嵌入式微处理器,占据了大约75%的市场份额[3]。本系统采用的就是三星公司生产的基于ARM920T芯核的一款嵌入式微处理器S3C2440。它的主频能够达到400MHz,已经能够满足对图像数据的编码压缩的要求。另外,各种嵌入式操作系统的涌现也极大的促进了嵌入式系统技术的发展[4],使用嵌入式操作系统能够大大减小系统的开发周期,提高系统的稳定性。图像采集作为近年来的一个研究热点受到了越来越多的关注[5]。特别是无线通信技术的发展,使人们的信息沟通实现了”随时随地”,同时也希望能够随时随地了解目标场所的状况[6]。另外人们生活水平的不断提高,也使得数字化家庭开始诞生。在这种背景下,设计一种轻便小巧、低生产成本、低功耗的图像采集系统来采集、存储、传输并显示所需的图像就显得十分必要。针对这种情况,本课题提出一种基于ARM的图像采集与无线传输系统的设计方案。它是以嵌入式技术为核心,结合网络技术、无线通信技术,迎合了当前市场的需求,能够满足当前人们对生产、生活中对目标场地的随时监控的要求。与传统的图像监控系统相比,它应具有体积小,安装方便,现场无需专人值守,成本低,稳定性高等特点[7]。在未来的安保、智能交通管理、产品检测、海关检测、环境监督、家庭防护等各个方面都有着广阔的应用前景。1.2国内外研究现状图像采集与无线传输系统主要分为两个部分:采集部分和传输部分。本文主要从这个两个方面进行分析和设计。1.2.1图像采集技术当前国内外图像采集与处理将模拟信号转换成数字信号,经PCI或其它总线由上位机进行图像处理。这种方式的优点是:充分利用了PC机丰富的软硬件资源、易于开发等特点,它的缺点是:整个系统硬件连接复杂,不利于小型化,而且对人力、成本等要求较高[8][9]。随着嵌入式微处理器技术的发展,嵌入式微处理器的运算速度已经大幅提高。本课题采用图像传感器与微处理器的方式来完成图像的采集模块的设计,并在系统中采用嵌入式操作系统,不但实现了图像数据的高速采集,而且降低了系统成本,系统功能易于扩充,为系统再次功能扩充留下了空间[10][11]。1.2.2图像数据的无线传输当前国内外实现数据无线传输的技术主要有:红外线无线技术、蓝牙无线通信技术、GSM,CDMA,GPRS等[12]。(1)红外线无线技术红外线是波长在750nm~1mm之间的电磁波,它的频率高于微波而低于可见光,是一种人用肉眼看不到的光。红外通信一般采用红外波段内的近红外线,波长在0.7um~25um之间[13]。当前使用的家电遥控器几乎都是采用红外线传输技术。使用红外线做信号载波的优点很多:成本低、传播范围和方向及距离能够控制、不产生电磁辐射千扰,也不受干扰等等。随着红外线技术的日益成熟,标准的日益规范,红外线在通讯上的应用也就日益增多[14]。(2)蓝牙无线通信技术蓝牙是一种技术的名称,它来源于公元10世纪丹麦的一位国王Harold,她的绰号就叫”Bluetooth"[15]。蓝牙是一种低功耗、短距离无线通信技术,其实质内容是建立全球通用的短距离无线电空中接口以及控制软件的公开标准;其目的是要取代现有的传统个人计算机、传真机、打印机、移动电话等设备之间互联的有线电缆,使其形成一个微型的个人小型网络系统,从而方便地实现各个电子设备之间的无线通信[16]。(3)GSMGSM(GlobalSystemforMobilecommunications),即全球移动通信系统,是世界上采用最多的数字移动通信制式,中国最大的移动通信运营商一中国移动通信业采用的也是GSM。GSM是第二代((2G)移动通信技术的代表,它能够使用的频率为900MHz,1800MHz和1900MHz,我们国内主要采用的是900MHz和1800MHz,简称GSM900和DCS1800。频带宽度为25MHz(对900MHz频段而言);通信方式为FDD频分全双工。双工通信时收、发频率间隔45MHz。信息数字结构为时分多址帧结构。每帧为一个载波,分为8个时隙,全速率信道8个,半速率信道16个;调制方式为高斯低通最小频移键控(GMSK),调制指数为0.3;采用数字话音,其编码方式为规则脉冲激励长线性预测编码(RPE-LTP),速率为13kb/s;每时隙信道比特率为22.8kb/s,信道总速率为270.83kb/s;数据速率为9.6kb/s。GSM系统主要由网络交换子系统((NSS),基站子系统((BSS)以及移动终端设备(MS)三大部分组成[17]。(4)CDMA在上个世纪八十年代,即第二代移动通信迅速发展时期,提出了两个重要的移动通信体制,一种是TDMA体制,另一种就是CDMA。CDMA是一种以扩频通信为基础的调制和多址连接技术。在信号的发送端使用一个自相关性较强而互相关较小的高速伪随机码作为地址码,与要传输的用户信息数据相乘。在接收端,以本地产生的、与发送端相同的地址码与接收到的信号相乘,经过相关检测,就能将扩频信号解扩,将原始用户信息数据给恢复出来。(5)GPRSGPRS(GeneralPacketRadioService)即通用分组无线业务,由英国BTCellnet公司最早在1993年提出,是GSMPhase2+规范定义实现的内容之一。它是一种基于GSM的面向用户提供移动分组的IP或者X.25连接的移动分组数据业务网。GPRS没有取代当前GSM网络支持的CSD(电路交换数据)和SMS(短消息)等业务,而是对当前GSM网络的补充。GPRS是GSM向3G系统演进的重要一环,它既考虑了向第三代系统的过渡,同时又兼顾了现有的第二代系统,是第二代GSM系统过渡到第三代WCDMA系统的必经之路,因此GPRS又称为2.5G。GPRS分组业务信道采用了与GSM不同的CS_I~CS_4等编码方式(其数据速率分别为9.0Skbit/s,13.4kbit/s,15.6kbit/s,21.4kbit/s)。采用编码方式为CS-4时,且无线环境良好,信道充分的情况下,能够实现GPRS网络支持的理论最高速率171.2kbps,这种速率完全能够支持一些多媒体图像传输业务等对带宽要求较高的应用业务。但实际数据传输速率受网络编码方式和终端支持的因素影响,CS_3,CS_4的接收参考灵敏度较低,这两种编码方式只有在距离基站较近且信号较好的地区才能够真正使用。综合以上几种无线传输技术的比较,并根据本系统对成本和传输距离的要求,另外由于国内GPRS的网络用户远远多于CDMA,且GPRS的信号强度要好于CDMA,本系统选择GPRS作为图像数据的无线传输方式。1.3本课题的研究内容本课题针对当前国内外图像监控系统的现状提出了一种基于ARM的图像采集与无线传输系统的设计方案,经过研究嵌入式系统技术,结合网络技术、无线通信技术,以及具体的市场需求情况,研究一种适用于图像监控、安全保障的图像采集与无线传输系统。本课题的主要研究内容有:(1)搜集相关资料,分析当前国内外现有的图像采集系统的优缺点。(2)进行系统的总体设计,并对系统进行详细的功能模块划分,选择关键模块器件的型号。(3)进行硬件系统的设计工作,主要有NANDFLASH接口电路、SDRAM接口电路、USB接口电路、DART接口电路、LCD接口电路的设计。(4)构建基于Eclipse的嵌入式集成开发环境。(5)进行嵌入式Linux的移植,主要工作有系统引导程序的移植、Linux内核的移植和文件系统的移植。(6)进行图像采集程序的编写。(7)进行图像数据无线传输程序的编写。(8)进行服务器端接收及控制程序设计。本课题提出的基于ARM及嵌入式linux环境下的图像采集与传输系统具有低成本、低功耗、易布设、系统易扩展等特点。第2章系统总体设计2.1系统功能描述本课题设计的基于ARM的图像采集与无线传输系统,主要是为了弥补传统图像采集系统中存在的成本较高、功耗较高、不易布设等缺点。系统采用嵌入式处理器ARM作为控制器,图像数据由图像传感器采集后,由嵌入式处理器对图像数据进行JPEG编码压缩处理后,利用GPRS模块发送至远程服务器中,在服务器端能够实现连续接收或单幅接收的控制。在完成图像采集与无线传输的同时,系统还必须满足低成本、低功耗的要求。2.2系统组成一个完整图像采集系统应该包括图像数据采集,对图像数据的处理,图像数据的存储以及整个系统的控制等模块。本系统以嵌入式微处理器ARM为控制核心,以图像传感器为图像数据的获取设备,以GPRS模块为图像数据的发送设备。整个系统的体系结构能够分为三层:硬件层、系统软件层和应用层。系统结构如图2-1所示。能够将系统划分为五个主要部分:控制模块、图像采集模块、GPRS模块、显示模块、电源及存储模块。系统在嵌入式微处理器的控制下从图像传感器采集图像数据,采用DMA方式将图像数据传输到内存缓冲区中,由软件将图像数据读出并对图像数据进行JPEG压缩和打包处理后存入Flash中,最后经过GPRS网络发送到远程接收端服务器。本系统的设计难点是如何保证内存中图像数据的读取与图像传感器获取图像数据的同步以及图像数据的实时处理。系统采用的嵌入式处理器ARM必须具备较强的处理能力,以便于完成图像数据的实时处理的需求,并要求系统的成本比传统的图像采集系统低。2.3关键器件的选型2.3.1嵌入式微处理器ARM的选型ARM公司自从1990年在英国剑桥成立以来,在32位RISC(ReducedInstructionSetComputer)CPU开发领域中不断取得突破,其结构已经从V3发展到V6。当前非常流行的ARM芯核有ARM7TDMI,StrongARM,ARM720T,ARM9TDMI,ARM922T,ARM940T,ARM946T,ARM966T,ARMIOTDMI等。另外ARM芯片还获得了许多实时操作系统(RealTimeOperatingSystem)供应商的支持,比较著名的有WindowsCE,Linux,pSOS、VxWorks,Nucleus,EPOC,uC/OS、Beos等[18]。我们在选择ARM芯片时主要参考以下因素:(1)ARM芯核如果希望使用嵌入式操作系统来减少软件开发时间,就需要选择ARM720T以上带有MMU(MemoryManagementUnit)功能的ARM芯片。当前只有uCLinux等少数几种Linux不需要MMU的支持。(2)功能不同的系统需要各不相同,在选取就需要考虑处理器本身所能支持的功能,如USB,DART、液晶显示等。(3)性能主要是从处理器的功耗、运算速度、稳定可靠性等方面考虑。(4)价格一般来说,在产品完成预定功能的情况下,都是希望成本越低越好。但在选取时需要考虑处理器的价格以及由处理器而衍生出的开发价格,如开发工具、外围芯片等。(5)熟悉程度和开发资源选择一款自己熟悉的处理器能够大大减少开发的难度和周期,并降低开发风险。在自己熟悉的处理器都无法满足的情况下,则应尽量选择开发资源较丰富的处理器。(6)是否可升级为了系统在以后的升级方便,应尽量选取具有相同封装的不同性能等级的处理器,并考虑系统未来可能会增加的功能。(7)供货稳定性供货是否稳定也是选取处理器时应考虑的一个重要因素,应尽量选取大厂家、通用性较好的芯片。基于以上各种因素,本课题选择三星公司的S3C2440作为嵌入式微处理器。S3C2440采用了ARM920T的内核,0.13um的CMOS标准宏单元和存储器单元,芯片内部集成了16KB的指令Cache和16KB的数据Cache,外部存储控制器,LCD控制器,4通道DMA并有外部请求引脚,3通道DART,2通道SPI,1通道IIC-BUS接口,AC97解码器接口,2端口USB主机//1端口USB设备,4通道PWM定时器和1通道内部定时器,看门狗定时器,8通道10位ADC和触摸屏接口等[19]。2.3.2图像采集模块的选型当前主要的图像传感器分两类:CCD(ChargeCoupledDevice)和CMOS(ComplementaryMetallicOxideSemiconductor)。CCD使用一种高感光度的半导体材料制成,能把光线转变成电荷,经过模数转换器芯片转换成数字信号。数字信号经过压缩以后由相机内部的闪速存储器或内置硬盘卡保存,因而能够轻而易举地把数据传输给计算机,从而能够借助与计算机中丰富的软硬件资源,根据需要对图像进行处理。CCD主要由一个类似马赛克的网格、聚光镜片,以及垫于最底下的电子线路矩阵所组成。CMOS也是一种可记录光线变化的半导体。CMOS的制造技术相比较与CCD来讲简单的多,与一般计算机芯片没有多大差别,主要是利用硅和锗这两种元素做成,使其在CMOS上共存着带N(带负电)和P(带正电)级的半导体,这两个互补效应所产生的电流即可被处理芯片记录和解读成影像。在相同分辨率下,CMOS的价格比CCD便宜的多,可是CMOS器件产生的图像质量相比CCD来说要低一些[20]。当前市场上绝大多数高端数码相机都使用CCD作为感应器;CMOS感应器则作为低端产品应用于一些摄像头上。与CCD相比较,CMOS的优势之一在于电源消耗量比CCD低,CCD为了提供高质量的影像品质,付出代价即较高的电源消耗量,为使电荷传输顺畅,噪音降低,需由高压差改进传输效果。但CMOS影像传感器将每一像素的电荷转换成电压,读取前便将其放大,利用3.3V的电压即可驱动,电压消耗量因此要比CCD低的多。CMOS的另一个优势是与周边电路的整合性高,可将ADC与信号处理器整合在一起,使体积大幅缩小。与PC环境下相比,嵌入式系统环境中资源十分有限,另外从成本、电路设计负责度、电源消耗量等方面考虑,本课题选择采用基于CMOS图像传感器作为感光器件及中星微301微处理芯片的USB接口摄像头作为系统的图像采集模块。中星微301系列USB接口摄像头能够在320×240和640×480及800×600的分辨率下轻松的达到30fps/s的速度,30万硬件像素,百万以上插值像素,完全能够实现视频画面或图像的清晰、流畅。2.3.3GPRS模块的选型当前无线通信品种较多,常见的无线模块分成GPRS,CDMA,GSM,EDGE等模块。这些无线模块广泛应用于无线数据传输,电力GPRS(CDMA)通信系统、铁路GPRS(CDMA)通信系统,无线监控,GPRS智能交通系统等无线远程监控领域等行业。当前国内市场上常见的无线模块品牌主要有:西门子、华为、摩托罗拉、飞图、展迅、Enfora、明基、SIMCOM,Wavecom等。本课题选用Wavecom公司的GPRS模块Q2406B,如图2-2所示。图2-2Q2406实物图GPRS模块Q2406B是一块双频GSM/GPRS模块,内嵌协议栈,执行ETSIGSMPhase2+的标准,类别4(2W@900MHz),类别1(1W@1800/1900MHz)外部3V/SVSIM。由于GPRS模块Q2406内嵌了协议栈,因此进行软件编写时就能够省去协议栈的编写或移植,这样就节省了大量的软件开发时间[21]。2.4嵌入式操作系统的选型选择linux的原因有:(1)可应用于多种硬件平台。Linux已经被移植到多种硬件平台,这对受开销、时间限制的研究与开发项目很有吸引力。原型能够在标准平台上开发然后移植到具体的硬件上,加快了软件与硬件的开发过程。(2)Linux能够随意地配置,不需要任何的许可证或商家的合作关系。(3)它是免费的,源代码能够得到。这是最吸引人的。毫无疑问,节省大量的开发费用。(4)Linux它本身内置网络支持。(5)Linux的高度模块化使添加部件非常容易。(6)Linux在台式机上的成功,使大家看到了linux在嵌入式系统中的辉煌前景。2.5本章小结本章首先介绍了系统要实现的功能,并详细介绍了基于ARM的图像采集与无线传输系统的组成,详细分析了系统关键器件的选择原则,选定了本系统所采用的嵌入式微处理器、图像采集模块、GPRS模块,最后介绍了本系统所采用的嵌入式Linux,以及选择嵌入式Linux作为系统的嵌入式操作系统的原因。第3章硬件系统设计3.1硬件系统结构框图本系统以嵌入式微处理器S3C2440为系统控制中心,当USB接口摄像头获取图像数据后,经过S3C2440的压缩处理后,利用串口将图像数据送至GPRS模块Q2406B发送到远程服务器。系统的硬件框图如图3-1所示。3.2NANDFLASH接口电路设计3.2.1NANDFLASH和S3C2440NANDFLASH控制器分析NANDFLASH在嵌入式系统中的地位与PC上的硬盘类似,用来保存系统运行所必须的操作系统、应用程序、用户数据、运行过程中产生的各类数据,而且在系统电源关闭后NANDFLASH中的数据能够在掉电状态下永久保存。本课题选用的NANDFLASH芯片是三星公司生产的容量为64MB的K9F1208UOM[22]。K9F1208UOM的封装及外部引脚如图3-2所示。图3-3K9F1208UOM的内部结构图K9F1208UOM的内部结构分为10个功能部件:(1)X-BuffersLatche&Decoders:用于行地址(2)YBuffersLatche&Decoders:用于行地址。(3)CommandRegister:用于命令字。(4)ControlLogic&HighVoltageGenerator:控制逻辑及产生Flash所需高压。(5)NandFlash:存储部件。(6)PageRegister&S/A:页寄存器,当读、写某页时,会将数据先读入/写入此寄存器,大小为528字节。(7)YGating。(8)I/OBuffers&Latches。(9)GlobalBuffers。(10)OutputDriver。K9F1208UOM的容量为64MX8bit,分为131072行(页)、528列;每一页大小为512字节,外加16字节的额外空间。K9F1208UOM的命令、地址、数据都经过8个I/O口输入/输出,这种形式使得K9F1208UOM引脚得到减少,并易于扩展系统容量。写入命令、地址或数据时,都需要将WE#,CE#信号同时拉低。数据在WE#信号的上升沿被NANDFlash存;命令锁存信号CLE、地址锁存信号ALE用来分辨、锁存命令或地址。NANDFlash时需要发送命令,然后发出地址序列,最后读/写数据;需要使用各个使能信号来分辨是命令、地址还是数据[23]。S3C2440的NANDFlash控制器提供了NFCONF,NFCONT,NFCMMD,NFADDR,NFDATA,NFSTA'I,和其它与ECC有关的寄存器。NANDFlash的读写操作顺序如下:(1)设置NFCONF,NFCONT寄存器,配置NANDFlash。(2)向NFCMD寄存器写入命令。(3)向NFADDR寄存器吸入地址。(4)读/写数据:寄存器写入地址。经过寄存器NFSTAT检测NANDFlash的状态,在启动某个操作后,检测R/nB信号以确定该操作是否完成、是否成功。3.2.2NANDFLASH接口电路S3C2440与K9F1208UOM的接口电路如图3-4所示。图3-4K9F1208UOM与S3C2400的连线图如图3-4所示,K9F1208UOM与S3C2440的连线有:8个v0引脚(voowo}>,S个使能信号((nWE,ALE,CLE,nCE,nRE),1个状态引脚(RDY/B),另外还有1个写保护引脚((nWP)。地址、数据和命令都是在这些使能信号的配合下,经过8个I/O引脚传输。3.3SDRAM接口电路设计3.3.1S3C2440存储控制器分析S3C2440的存储控制器提供了访问外部设备所需的信号,它具有如下特性:支持数据的大端、小端存储模式(能够经过软件设置);每个BANK的地址空间为128MB,总共1GB(BBANKs);可编程控制的总线位宽(8/16/32-bit),不过BANKO只能选择两种位宽(8/16-bit);共计8个BANK}BANKO~BANKS能够支持外接ROM,SRAM等,BANK6~BANK7除能够支持ROM,SRAM外,还支持SDRAM等;BANKO~BANK6共7个BANK的起始地址是固定的;BANK7的起始地址可编程选择;BANK6,BANK的地址空间大小是可编程控制的;每个BANK的访问周期均可编程控制;能够经过外部的”wait”信号延长总线的访问周期;在外接SDRAM时,支持自刷新和省电模式。S3C2440在系统复位后的存储控制器的地址空间分布如图3-5所示3.3.2SDRAM的选择及接口电路设计当前SDRAM生产厂家众多,因此选择一款合适的SDRAM芯片对整个系统的开发也是十分重要的。选用的SDR.AM是两片三星公司生产的K4S561632A(4M×16bit×4Banks)。经过并联两片16位的K4S561632A从而组成32位的位宽,与S3C2440的32条数据线(DATAO~DATA1)相连。S3C2440的存储控制器中BANK6为扩展SDRAM所用,因为BANK6的起始地址为0x30000000,因此系统中SDRAM的起始地址也为Ox30000000。图3-6两片K4S561632A与S3C2440的连线图3.4USB接口电路设计S3C2440中集成了2个USB主机接口和1个USB设备接口。USB主机接口遵从OHCIRev.1.0标准,兼容USBVerl.l标准。USB设备接口具备5个Endpoint兼容USBVerl.l标准。由于本课题中只有USB接口摄像头需要USB接口,因此1个USB主机接口就能够了,另外,为了便于系统调试,再增加1个USB设备接口,用来下载嵌入式Linux镜像使用。S3C2440中扩展USB接口十分方便,只要按照USBVerl.l标准连接即可[24]。图3-7S3C2440与USB设备的链接框图3.5UART接口电路设计S3C2440中集成了3个相互独立的DART(IrDAI.0,64字节TxFIFO和64字节RxFIFO),每个DART都能够单独地在中断或是DMA模式下操作,也就是说DART能够生产一个中断或DMA请求用于CPU和DART之间的数据传输。UART使用系统时钟时能够支持最高115.2Kbps的波特率。如果外部设备提供UEXTCLK给UART,则DART能够工作在更高的速率。S3C2440能够经过RS232-C标准接口很容易实现和其它设备、模块的连接,从而进行数据的输入输出。本系统中DART接口的主要用途是连接GPRS模块Q2406B。由于RS232-C标准与S3C2440中所定义的高、低电平信号不同,因此还要进行信号电平的转换。这里我们采用MAX3232来实现。DART接口电路框图:图3-8DATR的接口电路框图3.6LCD的选择及接口电路设计S3C2440中集成了LCD控制器,被用来向LCD传输图像数据,并提供必要的控制信号,比如VFRAME,VLINE,VCLK,VM等。S3C2440支持两种LCD:TFTLCD和STNLCD,它们的特性如下(BPP表示bitperpixel,即每个色素使用多少位来表示其颜色)。(1)TFT(Thin-FilmTransistor薄膜晶体管)LCDTFTLCD支持单色(1BPP),4级灰度(2BPP),16级灰度(4BPP),256色(BBPP)的调色板显示模式;支持64K(16BPP)和16M(24BPP)色非调色板显示模式;支持分辨率为640X480,320X240及其它多种规格的LCD;虚拟屏幕最大可达4MB;对于64K色,分辨率有2048X1024等多种。(2)STN(SuperTwistedNematic超扭曲相列)LCD。STNLCD支持3种扫描方式:4位单扫描、4位双扫描和8位单扫描;支持单色(1BPP),4级灰度(2BPP)和16级灰度(4BPP)屏;支持256色(8BPP)和4096色(12BPP)彩色STN屏(CSTN);支持分辨率为640×480,320×240,160×160以及其它规格的多种LCD、虚拟屏幕最大可达4MB:对于256色,分辨率有4096×1024,2048×2048,1024×4096等多种。S3C2440集成的LCD控制器除了提供驱动STNLCD,TFTLCD所需的所有信号,另外,还特别提供额外的信号以支持SEC公司((SamsungElectronicsCompany)生产的TFTLCD(称为SECTFTLCDs)。S3C2440LCD控制器的内部结构如图REGBANK是LCD控制器的寄存器组,含17个寄存器及一块256X16的调色板内存,用来设置各项参数。而LCDCDMA则是LCD控制器专用的DMA信道,能够自动地从系统总线上取到图像数据,这使得显示图像时不需要CPU的干涉。VIDPRCS将LCDCDMA中的数据组合成特点的格式,比如4位单扫描等,然后从VD[0:23)发送给LCD屏。同时TIMEGEN和LPC3600负责产生LCD屏所需要的控制时序,例如VSYNC,HSYNC,VCLK,VDEN,然后从VIDEOMUX送给LCD屏。其中LPC3600专用于SECTFTLCD。为增强系统的可扩展性,特意采用一个50口的LCD接口将S3C2440LCD控制器提供的LCD控制信号全部引出,只需要经过对LCD控制器编程即可支持不同厂家生产的多种LCD。系统LCD接口如图3-10所示。图中LEND为行结束信号,VCLK为LCD时钟信号,VLINE,VFRAME,VM为LCD提供线信号、帧信号和数据输出使能信号,VSYNC,HSYNC,VDEN为LCD提供垂直同步信号、水平同步信号、数据传输开始信号,LCDLPCOE,LCDLPCREV,LCDLPCREVB为LCD提供时钟控制信号,LCDPOWER为LCD提供SV的直流电源[25]。另外,TSXM,TSXP,TSYM,TSYP为触摸屏控制信号。3.7本章小结本章首先介绍了系统的硬件结构框图,按照划分的硬件系统模块依次对NANDFLASH接口、SDRAM接口、USB接口、DART接口及LCD接口的设计进行了详细的讨论。第4章基于Eclipse的软件系统设计4.1构建基于Eclipse的嵌入式软件集成开发环境Eclipse是著名的跨平台的集成开发环境((IDE),最初是由IBM公司开发替代商业软件VisualAgeForJava的下一代开发环境。,IBM将Eclipse贡献给开源社区,现在由Eclipse基金会管理。7月,Eclipse稳定版3.1.0发布。Eclipse本身只是一个框架平台,最初主要用于java语言的开发。可是众多插件的支持使得Eclipse同样能够用来开发其它的语言,如c/c++,c#,pert,cobol的等等。cdt(c/c++developmenttoolkit)就是支持c/c一开发的插件。许多软件开发商也以Eclipse为框架推出了自己的集成开发环境。例如风河(WindRiver)公司开发的嵌入式IDE(集成开发环境)IDEWorkbench2.0就是基于Eclipse平台设计的。Eclipse是一个开放源代码的,基于插件(plug-in)的扩展性框架的最大的特点就是可扩展性。Eclipse的扩展性是经过扩展点机制提供了插件组合的灵活性和扩展性。插件是一个结构化组件,同时也是系统运行时最小的一个管理单元,拥有完整的生命周期,它负责扩展点的定义并贡献扩展。Eclipse的另一个重要的特点就是易升级性。基于Eclipse的集成开发环境具有良好的可升级性,与Eclipse的扩展性类似,对需要升级的插件升级时,只需要在Eclipse的插件目录中加入插件的新版本,重新启动Eclipse就完成了对插件的升级。4.2嵌入式linux系统的移植4.2.1系统引导程序Bootloader的移植Bootloader是在系统上电开始时执行的一段小程序,它的基本作用是完成硬件设备的初始化,建立内存空间的映射图,最后将操作系统内核。当前比较成熟的bootloader:除此之外还具有网络功能、从PC上经过串口或网络下载下载文件、烧写文件、将Flash上压缩的文件解压后再运行等功能。对于ARM体系结构的处理器,上电后处理器从地址0x00000000开始执行第一条指令,因此需要把存储器中Bootloader的地址映射到0x00000000,这样ARM上电后Bootloader就开始执行。Bootloader的启动过程能够分为单阶段(Singestage)、多阶段(Multi-stage)两种。多阶段启动的Bootloader一般能够提供更加强大、更加复杂的功能以及更好的可移植性。常见的Bootloader的基本上都是两阶段的启动过程。第一阶段的程序代码均是使用汇编语言来实现,它的作用是完成依赖于CPU体系结构的初始化,并为第二阶段程序的执行做准备。第二阶段则是一般采用C语言来实现,这样能够实现更加复杂的功能,而且代码具有更好的可读性和可移植性[26]。4.2.2移植linux内核Linux内核是整个软件系统的核心,Linux内核的移植对系统的稳定性等都有着重要的影响。当前市场上主流的Linux内核逐步转向2.6版本,因此本系统选用的Linux内核版本是Linux-。Linux的启动过程能够分为两部分:与硬件相关的引导阶段和后续的通用启动过程。不同架构上Linux的启动过程稍有不同,在ARM架构处理器上的启动过程如图4-1所示。引导阶段一般使用汇编语言编写,它首先检查内核是否支持当前架构的处理器,然后检查是否支持当前开发板。在检查经过后,为调用下一阶段的startkernel函数做准备。主要有两个步骤:(1)连接内核时使用的虚拟地址,因此要设置页表、使能MMU。(2)调用C函数startkernel之前的常规工作,包括复制数据段、清楚数据段、清楚BSS段、调用startkernel函数。第二阶段的关键代码主要使用C语言编写,它进行内核初始化的全部工作,最后调用restinit函数启动init过程,创立系统第一个进程:init进程。在分析Linux在ARM架构处理器上的启动过程后,下面来给出Linux内核在本系统使用的S3C2440上实现移植的过程。登录Linux内核官方网站()下载Linux内核源码压缩包。解压后即可得到Linux内核源码,执行如下命令即可:$tarxjflinux-.tar.bz2//执行完毕后即可得到文件夹Linux-0对于ARM架构的嵌入式微处理器,与其体系相关的代码在Linux内核源码包的子目录arch/arm/目录下,Linux内核的移植工作主要就是修改这个目录下的文件。移植的主要步骤如下:(1)首先修改顶层Makefile,配置、编译内核以确定所下载的内核源码包能够被正确的编译。如下所示:将185ARCH?=$(SUBARCH)//185为代码行号,下同186CROSS_COMPILE?=修改为:185ARCH?=arm186CROSSCOMPILE?=arm-linux然后执行make命令配置内核:makesmdk2410_defconfig//smdk2410_defconfig位于arch/arm/configs/目录下。最后执行makeuImage编译内核,即可在顶层目录中生成内核映像文件vmlinux,还能够在arch/arm/boot/目录中生成U-Boot格式的内核映像文件uImageo至此,就能够经过前面已经移植的U-Boot来测试刚刚生成的内核映像文件是否正确。测试经过后,即可向下进行移植工作了。(2)修改内核。在本系统移植过程中对内核代码的修改主要是修改系统晶振频率,使之与本系统所使用的晶振频率相符。需要修改的文件为:arch/arm/mach-s3c2440/mach-s3c2440.c。将:s3c24xx一nitclocks(16934400);修改为:s3c24xx_initclocks(100);(3)修改MTD分区。MTD(MemoryTechnologyDevice),即内存技术设备,是Linux中对ROM,NORFlash,NANDFlash等存储器设备抽象出来的一个设备层,它向上提供统一的访问接口:读、写、擦除等;屏蔽了底层硬件的操作、各类存储设备的差异。需要修改的文件为:arch/arm/plat-s3c24xx/common-smdk.c,主要修改的是该文件中的smdk一defaultnand_part数据结构。本系统中对NANDFlash的戈d分为:前2MB用于存放Linux内核,剩下的空间用来存放、'AFFS文件系统。修改后的smdk_defaultnand_part结构如下:staticstructmtd-partitionsmdkdefaultnand-part[]={[0]={.name="kernel".size="SIZE2M".offset=0,}[1]={.name=nYa}S".offset=MTDPARTOFSAPPEND.size=MTDPARTSIZFULL}}MTDPARTOFSAPPEND表示当前分区紧接着上一个分区,MTDPARTSIZFULL表示当前分区的大小为剩余的Flash空间。(4)配置Linux内核。在修改内核的配置文件后,就能够直接使用”makemenuconfig”命令来配置内核了。在配置本系统要使用的内核时,主要要选择如下几项:选择Systemtype--S3C2440Machines。选定系统所用CPU类型。选择Multimediadevices--VideoforLinux。此项为Video4Linux编程接口函数提供支持。选择USBSupport,OHCI,UHCI。这几项为USB控制器提供支持。选择Networkdevicesupport-}PPP(point-to-pointprotocol)support此项为GPRS传输提供支持。选择USBMultimediadevices一USBSPCASXXSunplusVimicroSonixCameras。此项为中星微系列的USB摄像头提供了驱动。其提供了基本的I/O操作接口函数open,close,read,write的实现、对终端的处理实现、内存映射功能以及对I/O通道的控制接口函数等另外还有与LCD,UART接口设备等项。(5)编译内核在Linux内核配置完毕后,就能够使用命令”makeuImage”新编译内核,生产内核映像后,下载至系统NANDFlash中即可。4.2.3移植YAFFS2文件系统YAFFS(yetanotherflashfilesystem)专门为NANDFlash设计的嵌入式文件系统,适用于大容量的存储设备。它是一种日志结构的文件系统,提供了损耗平衡和掉电保护,能够有效地避免意外掉电对文件系统一致性和完整性的影响。YAFFS采用一种多策略混合的垃圾回收算法,结合了谈心策略的高效性和随机选择的平均性,达到了兼顾损耗平均和系统开销的目的。当前YAFFS已经不再维护了,因此本系统采用YAFFS2。首先下载YAFFS文件系统的源代码,网址:.co.uk/cgi-bin/viewcvs.cgi,解压后即可得到Development目录,里面有两个子目录:YAFFS和YAFFS2oYAFFS2移植的主要工作如下。(1)将AFFS2代码加入内核中。经过YAFFS2目录下的脚本文件patch-ker.sh来给内核打补丁的方式将YAFFS2代码加入到内核中,如下所示:脚本文件:usage:./patch-ker.shc/1kernelpathifc/1isc,thencopy.if1thenlink添加代码命令:$cd/Development行affs2$./patch-ker.shc/linux-(2)重新配置、编译内核。再次配置内核,除了4.2.2中所选择的选项外,再选择MTD--NANDFlashsupport--YaffsfilesystemonNAND,该项用于为本系统采用的文件系统yaffs2提供支持[27]。4.3图像采集程序的实现4.3.1Video4linux简介Video4linux(简称V4L)是Linux中关于视频设备的内核驱动,它为视频设备的应用程序编程提供了一系列接口函数,这些设备包括当前市场上常见的电视采集卡、视频捕捉卡和USB接口的摄像头等。对于USB口摄像头,其驱动程序中需要提供基本的vo操作接口函数open,read,write,close的实现。与视频捕获相关的设备文件为:/dev/video。4.3.2图像数据的JPEG压缩编码及JPEG文件结构由于嵌入式系统环境中对软硬件都有十分严格的要求,系统资源有限,因此对系统采集的图像数据进行压缩编码就显得十分必要,另外图像数据在经过压缩后还能够提高系统的无线传输效率。JPEGOointphotographicexpertsgroup)是一个由ISO和IEC两个组织机构联合组成的一个专家组,负责制定静态数字图像压缩编码标准,由其开发的压缩算法称为JPEG算法,当前已经成为国际上通用的标准,因此又称为JPEG标准。JPEG是一个适用范围很广的静态图像数据压缩标准,既可用于灰度图像又可用于彩色图像[}a9}oJPEG是到当前为止用于摄影图像的最好的压缩算法。一幅占用4MB存储空间的24位BMP位图图像文件,采用JPEG压缩编码后,所占用的存储空间大小约SOKB,而且图像的质量人眼并不能感觉到明显的区别。JPEG压缩编码算法的主要步骤如下:色彩系统变化;正离散余弦变换((FDCT);量化(quantization);Z字形编码((zigzagscan);游程编码;嫡编码。4.3.3在Eclipse平台下实现图像采集及处理程序在Linux系统中,采用设备文件统一管理硬件设备,从而将硬件设备的特性及细节对用户因此起来,使用户能够像访问一般文件一样访问设备文件,能够经过open(),write(),ioctl()等操作对目标设备进行操作。摄像头采集到图像数据后首先存储在摄像头的缓存区中,从设备缓存区中获取图像数据有两种方式:第一种方式是直接读取方式,能够采用系统调用read()直接将数据从设备中读出;第二种方式是内存映射方式,能够经过~ap()函数实现。直接读取方式的优点是比较简单,只需要将设备号传递给read()即可经过图像指针获取图像数据,可是缺点是效率较低。而采用内存映射方式时,首先经过ioctl()函数获取摄像头缓存区中图像的帧信息,然后经过~ap()函数将摄像头文件映射到系统内存,这样就能够直接从系统内存中获取图像数据了。因为对内存的访问要远比对外部设备的访问速度,因此内存映射方式的速度比较快,效率比较高。本系统采用内存映射方式。本系统采用的图像采集设备是USB接口的摄像头。由4.2.2能够知道,在Linux-中已经包含了针对中星微系列的USB接口摄像头的驱动,因此只需要在移植内核时将USB驱动静态编译进内核即可,而不需要自己实现USB接口摄像头的驱动,这样就大大减少了工作量。在USB接口摄像头驱动程序被加载后,只需要编写针对本系统的图像采集应用程序就能够了。图像采集程序的流程如图4-2所示在Eclipse中首先新建一个工程Acqpict。在工程建立完成后,就能够编写图像采集程序的应用程序了。在程序中,利用video4linux提供的数据结构编写了一个存储摄像头设备的数据结构mydintfdev,该结构的主要成员如下Intfd;//设备号char*videodevice;//设备指针structvideo-mmapvmmap;//内存映射structvideo_capabilityvideocap;//摄像头的基本信息structvideo-mbufvideombuf;//利用mmap映射的帧信息structvideo_picturevideopict;//设备采集的图像的各种属性intgrabMethod;//获取图像数据的方式unsignedchar*pFramebuffer;//mmap的返回值,即图像数据在内存的起始地址unsignedchar*ptframe[4];//缓冲区个数pthread_mutextgrabmutex;//互斥信号量volatileintframe-cour;//帧缓冲区计数器利用该数据结构、Linux系统调用和video4linux我们编写了实现图像采集程序的各个功能模块。下面给出部分模块的实现代码:(1)摄像头初始化intinitdev(structmydev*mydev,char*device,intwidth,intheight,intformat,intgrabmethod);//此函数的主要作用是初始化内存帧缓冲区。mydev->cameraname=NULL;mydev一>videodevice=NULL;mydev一>videodevice=(char*)realloc(mydev一>videodevice,16);/*重新分配内存*/my_dev一>cameraname=(char*)realloc(mydev一>cameraname,32);snprintf(my一ev一>videodevice,12,"%s",device);/*最多从源串中拷贝n-1个字符到目标串中,然后再在后面加一个*/memset(my_dev一>cameraname,0,sizeof(mydev一>cameraname));memset(mydev一>bridge,0,sizeof(mydev一>bridge));mydev一>signalquit=1;mydev一>hdrwidth=width;xny_dev一>hdrheight=height;mydev一>formatIn=format;mydev一>bppIn=GetDepth(mydev一>formatIn);//8位深度mydev一>grabMethod=grabmethod;//mmaporreadmy_dev一>pFramebuffer=NULL;}(2)创立采集图像线程。pthread_create(&wl,NULL,(void*)mygrab,NULL);(3>采集一帧图像的数据,并调用convertframe()函数使其转成一帧。intmygrab(structmydev*mydev){mydev->vmmap.height=mydev一>hdrheight;mydev一>>vmmap.width=mydev一>hdrwidth;mydev一>vmmap.format=mydev一>formatIn;if(ioctl(mydev一>fd,VIDIOCSYNC,&mydev一>vmmap.frame)<0)/*判断当前帧是否截取完毕*/perror("cvsyncerr}n");erreur=一1;}pthread_mutex_lock(&mydev一>grabmutex);jpegsize=convertframe(mydev一>ptframe[mydev一>frame_cour]+sizeof(structframet),mydev一>pFramebuffer+mydev->videombuf.offsets[mydev一>vmmap.frame],mydev一>hdrwidthmydev->hdrheight,mydev->formatIn,mydev->framesizeIn);headerframe=(structframet*)mydev一>ptframe[mydev一>frame_cour];snprintf(headerframe->header,5,"%s","SPCA");headerframe->seqtimes=mstime();headerframe->deltatimes=(int)(headerframe->seqtimes-timecourant);headerframe->w=mydev一>hdrwidth;headerframe->h=mydev一>hdrheight;headerframe->size=((jpegsize<0)?O:jpegsize);headerframe->format=mydev一>formatIn;headerframe->nbframe二frame++;pthreadesmutex一unlock(&vd->grabmutex);/*若调用成功,开始一帧的截取,是非阻塞的*/if((ioctl(mydev一>fd,VIDIOCMCAPTURE,&(mydev一>vmmap)))<0){perror("cmcapture");if(debug)printf(";cmcaptureerr}n");erreur=一1mydev一>vmmap.frame二(mydev一>vmmap.frame+1)%mydev->videombuf.frames;/*当前帧*/mydev一>frame-cour=(mydev一>frame-cour+l)%OUTFRMNUMB;/*缓冲区帧计数器*/(4)对图像数据进行JPEG压缩编码。voidgetJpegPicture(unsignedchar*src,intw,inth,intformat,intsize,intmode){if(format==VIDEO_PALETTE_RAWesJPEG)return;/*如果图像以及是JPEG格式则不需要再压缩*/memset(filename,0,sizeof(filename));/*filename为要生成文件的文件名*/sizein=size;/*图像数据压缩前的大小*/二w*h*3;/*图像数据压缩后的大小*/=(unsignedchar*)realloc(outpict,sizeout);(unsignedchar*)realloc(inpict,sizeout);switch(format)/*根据需要压缩的图像格式进行压缩*/caseVIDEOPALETTERGB24:memcpy(inpict,src,size);sizeout=encode_image(inpict,dest,1024,RGBto420,w,h);printf(,,picturergb24%sm",filename);break;caseVIDEOPALETTERGB32:lpix=}u32*)src;for(i=0;i<sizeout;i+=3)inpict[i+2]=(*lpix&Ox00FF0000)>>16;inpict[i+1]=(*lpix&Ox0000FF00)>>8;inpict[i,+0]=(*lpix&Ox000000FF);lpix++;sizeout=encod_eimage(inpict,dest,1024,RGBto420,w,h);printf(”picturergb32%s}n",filename);break;caseVIDEOPALETTEYUV420P:memcpy(inpict,src,size);sizeout=encode_image(inpict,dest,1024,YUVto420,w,h);printf(”pictureyuv420p%s}n",filename);break;default:break;(5)将压缩后的图像数据保存成JPG文件voidGetJpegPict(unsignedchar*src,intw,inth,intformat,intsize,intmode)FILE*foutpictfoutpict=fopen(filename,"wb");/*创立要保存的JPEG文件,filename的形式为:文件}.lpg*/sizeout=ge勺pegsize(src,sizein);/*src为压缩后图像数据的首地址*/fwrite(src,sizeof(char),sizeout,foutpict);/*将图像数据写入JPEG文件*/fclose(foutpict);}在工程编译时,默认情况下的编译器是针对PC环境的,因此要生成在ARM上运行的可执行文件,还需要为该工程指定编译器。4.4GPRS介绍GPRS(GeneralPacketRadioService),即通用分组无线业务。它是GSMPhase2.1规范实现的内容之一,是在现有的GSM移动通信系统基础之上发展起来的一种移动分组数据业务。4.4.1GPRS系统原理GPRS是在原有的基于电路交换((CSD)方式的GSM网络上引入两个新的网络节点:GPRS服务支持节点(SGSN)和网关支持节点(GGSN)oSGSN和MSC在同一等级水平,跟踪单个MS的存储单元实现安全功能和接入控制,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中央厨房设备采购合同
- 登记框架协议
- 2025年城市空中交通管理系统可行性研究报告
- 2025年影视文化产业园区开发项目可行性研究报告
- 2025年城市综合体商业运营与管理项目可行性研究报告
- 交换留学协议书
- 美发租赁合同范本
- 电信供用电协议书
- 融资部融资专员面试题及答案
- 心理咨询师助理考试题含答案
- DB61-T5129-2025 陕西省房屋建筑与装饰工程工程量计算标准
- 神奇的加密术教学设计-2025-2026学年初中数学北师大版2024八年级上册-北师大版2024
- 光伏电站生产指标课件
- 转让专利权合同协议模板
- 公安刑侦案例分析报告模板
- 2025年辅警招聘考试试题题库含答案详解(完整版)
- 工业厂房建设公司简介范文
- 儿童体适能初级基础课程7
- 学堂在线 雨课堂 学堂云 研究生学术与职业素养讲座 章节测试答案
- 2025年企业合规管理专业考试试题及答案
- 协查通报治安管理制度
评论
0/150
提交评论