[硕士论文精品]基于arm平台的家庭无线通信网络的设计与实现_第1页
[硕士论文精品]基于arm平台的家庭无线通信网络的设计与实现_第2页
[硕士论文精品]基于arm平台的家庭无线通信网络的设计与实现_第3页
[硕士论文精品]基于arm平台的家庭无线通信网络的设计与实现_第4页
[硕士论文精品]基于arm平台的家庭无线通信网络的设计与实现_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要摘要近年来,随着计算机技术及网络通信技术的发展,在家庭中实现生活的现代化、安全化,提高居住环境等要求,使家庭设备智能化成为未来生活发展的趋势。本文提出以嵌入式计算机为主控设备,将家庭网络中主要的电器设备和服务系统通过蓝牙技术构建一个家庭局域网络,同时把GPRS远程通信技术加入到智能家居系统中,不仅解决了在家庭内部复杂的布线问题,而且使用户能够在远程控制家庭中的各种服务设备。本文介绍了课题研究的背景和意义,分析了智能家居系统的发展现状和趋势,讨论了嵌入式计算机系统和无线网络技术相结合在智能家居系统中的应用情况。论文阐述了家庭无线网络控制系统的设计思想和实现方法。系统选择S3C2410处理器为家庭无线控制器的主控制芯片,GPRSSIM300为远程控制芯片,蓝牙无线收发模块I01007为控制各个家用电器的通信模块。并设计了各模块问的接口电路。系统完成了WINDOWSCE在嵌入式3C2410处理器上BSP的定制与开发,着重分析了系统启动的过程,并成功实现了WINDOWSCE在3C2410上的移植。通过对家庭内部局域网络协议蓝牙协议和外部移动网络GPRS的分析,在WINDOWSCE上实现了蓝牙主机控制器HCI协议和GPRS通信程序,完成了采用GPRS无线通信模块与蓝牙通信模块相结合,实现对设备的监控。关键词家庭智能化;AP31;WINDOWSCE,GPRS蓝牙ABSTRACTABSTRACTINRECENTYEARS,WITHCOMPUTERTECHNOLOGYANDNETWORKCOMMUNICATIONTECHNOLOGIESINTHEDEVELOPMENTOFFAMILYLIFEINTHEREALIZATIONOFTHEMODERNIZATIONOFSECURITYANDINCREASETHELIVINGENVIRONMENTETC,INTELLIGENTEQUIPMENTINTOTHEFAMILYLIFEOFTHEDEVELOPMENTISATRENDOFTHEFUTURETHISPAPERPRESENTSACOMPUTERFOREMBEDDEDCONTROLEQUIPMENTHOMENETWORKWHICHMAKESTHEMAINELECTRICALEQUIPMENTANDSERVICESYSTEMTHROUGHTHEBLUETOOTHTECHNOLOGYTOBUILDAFAMILYLAN,WHILEGPRSREMOTECOMMUNICATIONTECHNOLOGYINTOINTELLIGENTHOMESYSTEMS,WILLNOTONLYSOLVETHEFAMILYCOMPLICATEDWIRING,BUTALSOALLOWUSERSTOREMOTECONTROLINTHEFAMILYSERVICESEQUIPMENTINTHESECONDPART,THISPAPERPRESENTSTHERESEARCHONTHEBACKGROUNDANDSIGNIFICANCEOFTHEINTELLIGENTHOMESYSTEMS,THEANALYSISOFTHESTATUSANDDEVELOPMENTTREND,ANDTHEDISCUSSIONEMBEDDEDCOMPUTERSYSTEMSANDWIRELESSNETWORKTECHNOLOGYINTHEINTELLIGENTHOMESYSTEMSWITHTHEAPPLICATIONPAPERSONTHEOVERALLHOMEWIRELESSNETWORKCONTROLSYSTEMDESIGNANDIMPLEMENTATIONATTHELASTOFTHISPAPER,THEPAPERFOCUSONTHEADVANCEDEMBEDDEDSYSTEMTECHNIQUE,BASINGONTHEPLATFORMOFSAMSUNGS3C2410,TODISCUSSESANDCONFMNTHESYSTEMHARDWAREPLATFORMANDRELATEDTHEN,TBEPAPERDISCUSSESTHEPLATFORMOFMICROSOTTSWINDOWSCEPROPOSEDTOBETHEFAMILYINTELLECTUALIZATIONSOPERATIONSYSTEM,ANDANAYSESTHEBSPARCHITECTUREANDDEVELOPMENTSTEPSOFMODELFORTHEDEVICESDRIVERITISTHEDISCUSSIONPOINTTHATTHEWIRELESSTECHNOLOGYOFGPRSANDBLUETOOTHACCORDINGTOTHEDEMANDOFFAMILYINTELLECTULIZATIONNETWORKING,DESIGNINGANDCOMPLETINGIMPLEMENTOFGPRSCOMUNLCATIONPROGRAMANDBLUETOOTHHOSTCONTROLLERINTERFACEFUNCTIONSINWINDOWSCEARETHEADVANCEDTASKATTHELASTINTHISPARTCOMPLETESTHEGPRSWIRELESSCONNECTIONMODULEANDSHORTRANGEWIRELESSTECHNOLOGYBLUETOOTHUNIFIESTOSENDTEXTMESSAGESTOACHIEVECONTROLOFALLTHEFAMILYELECTRICAPPARATUS,THREEMETERS,ANDSECURITYSYSTEMKEYWORDSFAMILYINTELLECTUALIZATION、ARM、GPRS、BLUETOOTH、WINDOWSCEII学像论文独剖挂声明学位论文独创性声明本人声甏所星交酶学位论文是本入在导褥播警下进行熬磷究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包禽其他人已经发表或撰写过的研究成果,也不包含为获得直基塞堂或其他教育机构的学位或证书丽使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确戆说麓筹表示落意。学位论文终者签系手写签字霆期刁年F。箕枷嚣学位论文版权使用授权书本学位论文作纛完全了解南昌大学有关保留、使用学位沦文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阕鞠借露。本久授毂密湛太堂虿苏将学位论文懿全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编本学位论文。同时授权中国科学技术信息研究所褥本学位论文收录裂中黧学蕴论文全文数摇痒,并通过嬲络囊社会公众提供信息服务。保密的学位论文在解密后通用本授权粥学位论文作者签名导师签名签字隔乍调堆签字瞧F呐,才秘兵口罄第1章绪论11课题的研究背景第1章绪论智能家居系统还是新兴的技术,市场上的产品还比较少,处于起步阶段,其接入技术还不成熟,同时因为其价格高昂,费用较高,还不能普及到我们的日常生活中来。目前国内家庭信息网络及智能家庭网络的研究及技术中存在几个关键问题是当前家庭网络以及智能家庭网络并没有一个统一的规范;相关产品与服务以及传统家电信息化改造等方面较少有产品提供与INTERNET以及其它网络互联的接口,这些产品功能单一、系统不易于维护、升级能力较差;国外产品价格普遍远远高于一般家庭的承受能力,对国内市场而言国外的产“品在很长的一段时间内可能无法得到国内消费者的认可。降低成本,提高设备的工作效率,提供相对完善的功能服务成为智能家庭控制的主要研究方向。随着计算机技术、通信技术、集成电路技术、控制技术及智能传感技术的迅速发展及相互渗透和结合,计算机、通信、网络技术已与一些电子产品结合在一起,即3C产品。特别是微电子技术的进步,芯片的制造成本大大降低,而功能却大大增强,32位嵌入式技术的出现推进了家居系统的数字化,使得家庭用户可以通过手机、互联网等媒介在任意地方、任意时间对家里的电器进行远程的监视和控制。智能家居中另外一个要重点解决的问题是家庭网络问题。家庭网络是在家庭内部通过一些传输介质将家庭中的电器设备和一些仪器仪表系统连接起来。家庭网络要实现家庭内部各个设备的信息共享,同时也要通过网关与外部网络进行信息通信。网络分为有线和无线,在家庭内部由于空间问题,布太多线会影响住户的住宿环境,与智能家居的主要目的相矛盾,所以可以多选用无线设备作为网络通信的介质,作为短距离无线接入方式的蓝牙技术,以及远程无线通信方式的GSM技术在智能家居、信息家电等方面会启到重要的作用。本文主要介绍、分析的是蓝牙、GPRS无线通信技术通过嵌入式控制器来实现无线局域网络控制系统。第1章绪论12课题的研究意义和研究内容121课题的研究意义在工业领域、控制领域和信息家电等应用领域可以利用嵌入式控制技术,目前的嵌入式的32位的MCU,它们的性能已经能够与PC的CPU性能接近,可以进行一些资源要求较高的工作,可以在32位的嵌入式系统上移植操作系统、可以移植各种通信协议栈,利用32位嵌入式系统不仅降低了开发成本而且功能的集成度也提高了。本课题设计的嵌入式无线网络平台,通过无线的方式将原来彼此独立的多个嵌入式网络连接在一起,实现了嵌入式专用子网之间的通信。该嵌入式无线网络平台可以满足嵌入式系统的实时性要求,功能可以扩展和裁减,易移植,应用的范围广阔,前景可喜。122课题的研究内容本文主要通过WINDOWSCE嵌入式系统来构建无线局域网WLAN接入控制。在完成嵌入式网络控制器硬件与软件设计的基础上,将控制器应用到了网络化的嵌入式家庭系统的中央管理单元中,组建一个无线局域网将家庭中的各个设备连接起来,同时该无线局域网中的各个接入设备可以通过嵌入式控制器与远程用户手机连接,以实现在本地和异地对家庭内部的接入设备进行监控。课题研究主要内容如下1对现有的嵌入式网络控制器的方案进行了比较。选择了三星公司的3C2410ARM920T内核高性能嵌入式处理器为核心,针对嵌入式网络控制器需要的各个功能进行方案分析与器件选型,并完成了嵌入式网络控制器的原理图设计与硬件实现。2对现有的嵌入式操作系统进行了分析,并选择WINDOWSCE做为嵌入式网络控制器的操作系统,对它进行了深入的研究,并成功将其移植到了该控制器上,完成了嵌入式软件开发平台的搭建。3在深入研究蓝牙COREV12协议的基础上在嵌入式网络控制器上编程实现,完成控制器基于蓝牙模块的通信;编写代码在WINDOWSCE上实现蓝牙主机2第1章绪论控制器HCI协议,使上层应用程序能够通过HCI函数接口控制蓝牙设备通信。4深入研究GPRS模块的控制方式,完成控制器基于GPRS模块的通信。在设备层上采用了蓝牙扩展模块和GPRS扩展模块,嵌入式网络控制器通过通信协议和设备层的设备进行通信。嵌入式控制器和各种通信设备一起构成了系统的控制层,他们之间通过协议进行通信,完成实验平台的控制、监视与报警。3第2章总体设方案计21总体设计方案第2章总体设计方案智能家居系统以嵌入式微处理器为核心,通过例如触摸屏、遥控器、鼠标、键盘等介质来接收或者发送信号来控制家庭内部的电子电器。智能家居要完成的功能主要有1对例如洗衣机、窗帘、电饭煲、门窗报警器、空调、灯等可以替代人们家务劳动的白色家电进行控制。2为家庭内部各种用于娱乐、休闲的黑色家电如电视、DVD、各种数码产品、家用PC等提供信息通道。3利用手机、电话线、网线和无线通信等方式对家电进行远程控制和信息的互换。通过对家庭网络的分析,满足智能家居系统的需要,嵌入式网络控制器需要一方面作为家庭内部局域网络的信息枢纽,让家庭内部的各个设备能够信息互通;另一方面,无线局域网内部网和外部网络如小区宽带连接通信,使得住户能够从远程控制家里的电器和监视家庭内部的环境【LSL。因此网络控制器必须选用性能高端的CPU加上嵌入式操作系统来进行控制和管理,同时控制器要设计简单、功能适当、软硬件要精简扼要,这样控制器才能普及实用。在家庭内部由于各个终端设备传输数据和功能的不同可分为两类子网,一类是传输数据量小,主要用于自动控制的低速设备另一类传输速率快、信息量大,传输多媒体信息如视频、音频等。由于每个家庭内部布局不一样,家电摆放的位置也不同,如果家庭内部的局域网采用有线传输介质,那么在家庭内部布线会比较复杂且会影响用户的日常生活,不利于以后新添电器设备以及家庭内部的重新布局。在家庭内部如果使用无线传输介质,则可以比较理想的组建起家庭内部的局域网络,利用无线通讯介质可以很好地避免上述有线通讯介质带来的不便,而且在WLAN中增加一个节点,不需要重新布线,只要修改一下控制器上的软件,即可使新设备服务于家庭。本论文主要研究家庭智能网关的设计以及如何与家庭内部无线局域网进行数据交换。4第2章总体设方案计22硬件选型221ARM体系结构ARM是ADVANCEDRISCMACHINES的缩写,即可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,它也是一种技术的名字。ARM公司成立于1991年,自己不生产产品,主要出售芯片设计技术的授权。基于ARM技术的微处理器应用已经占据了32位RISC微处理器75以上的市场份额。到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域,如工业领域、无线通讯领域、网络应用、成像和安全产品等【17】。ARM处理器具有小体积、低功耗、低成本、高性能等特点。同时支持ARM32位THUMB16位双指令集,能很好的兼容8位16位器件。占用的内存空间节省高达35,大量使用寄存器,指令执行速度更快。在一些ARM版本中还提供了JAZELLE及DSP技术,提高了ARM的性能和灵活性。用以辅助带深嵌入式处理器核的、高集成的SOC器件的调试。允许在代码的任何部分甚至在ROM中设置断点。ARM所提供的1632位嵌入式RJSC内核有以下几个系列ARM7、ARM9、ARM9E、ARML0,SECURCORE、STRONGARM和INTELXSCALE。每个系列的产品的设计都尽量遵循高性能、低功耗的原则以满足用户日益复杂的应用需求。222S3C2410概述3C2410芯片是三星公司推出的基于ARM920T内核的一款性能强大的嵌入式处理器。该处理器内置存储控制器SDRAM控制和芯片选择逻辑,主频203MHZ,16KB数据CACHE,16KB指令CACHE,具有全性能的MMIJL5。内核结构如图21所示。3C2410提供了一套比较完整的通用系统的外围设备,并且使得整个系统消耗最小。正是因为它具有很多常用的功能模块,所以也免去了添加配置附加设备的麻烦。其内部结构如图21所示。片上集成的功能主要包括以下几个方面18VARM内核,33V存储器,33V外部IO,具有16KB指令缓存,16KB数据缓存和MMU的微处理器;5第2章总体设方案计外部存储控制器SDRAM控制和片选逻辑;LCD控制器支持上到4K色的STN和256K色的TFT,L通道LCD专用DMA;具有外部请求引脚的4通道DMA3通道UARTIRDAL0,16BYTETXFIFO和16BYTERXFIFO,2通道SPIL通道IIC总线控制器,L通道IIS总线控制器10版本的SD主机接口和兼容的211版本的MULTIMEDIA卡协议;2个USB主机,1个USB设备USBL1;4通道PWM计时器,L通道内部计时器看门狗电路;117个通用IO口,24通道外部中断源;电源控制常规、缓慢、空闲和断电模式;8通道LO位ADC和触摸屏接口;具有日历功能的实时时钟RTC;具有锁相环的片上时钟发生器。综上所述,3C2410是一款功能强大的嵌入式处理器,可选用为家庭无线网络控制器的核心控制器。I兰IP书L一一O一LC令P8。”MCLC参8L”絮L8L嚣震篓。LUSLOT崎图213C2410内部结构功能模块【16第2章总体设方案计23嵌入式操作系统的选择面对复杂的系统,丰富功能的要求,软件开发工作量比较大,开发难度也比较大,因而需要使用嵌入式操作系统对越来越复杂的系统资源进行有效的管理。操作系统的基本功能,包括指令执行、任务调度、存储管理、设备管理和中断处理等。但是,由于嵌入式系统的硬件环境和程序运行需要有很大限制,所以要求嵌入式操作系统模块化及可延展性、实时性能好,通信能力强大,有良好的移植能力,能够用在尽可能多的微处理器中。目前从国内市场占有率来说,主要的嵌入式操作系统有MICROSOFT公司的WINDOWSCE、3COM公司的PALMOS,SYMBIAN公司的EPOC、中科院凯思集团的HOPEN以及LINUX等。W协DOWSCE操作系统是微软为实现”信息随手可得”的设想而努力开发的成果。WIILDOWSCE是一个开放的、可裁剪的、70代码开放的、易开发的、抢先式多任务并具有强大通信能力的32位实时嵌入式操作系统。它也是一个全新的、可移植的、实时的、模块化的操作系统,可以在多种不同的平台上运行,包括ARM、X86、MIPS等嵌入式领域主流的CPU结构,适用于快速构建新一代内存少、体积小的智能设备。例如工业控制器、手持式设备、智能电话、机顶盒和零售点设备等。目前的掌上电脑PDA、全球定位系统GPS、地理信息系统GIS、车载PCAUTOPC等应用领域有很多采用WINDOWSCE操作系统。WINDOWSCE的主要特点如下1精简的系统内核WINDOWSCE有可裁剪的特点,一个最小的可运行的WINDOWSCE内核只有200KB,用户可以根据特定的需求对操作系统进行裁剪,定制。2多平台移植由于WINDOWSCE操作系统几乎是用C语言编写的,所以可移植到众多的32位微处理器上,包括X86、POWERPC、ARM、MIPS和SH等系列。微软为每个支持的处理器家族提供完整的系统库。WINDOWSCE可以通过0EM适配层OALOEMADAPTATIONLAYER适配到任何硬件平台。OAL是驻留在CE内核和硬件之间的代码层。原始设备制造商使用这些代码把CE适配到自己的硬件上。OAL链接CE的内核和定制的硬件。3稳定、可靠的实时性WINDOWSCE的实时性能主要通过以下技术实现支持嵌套中断;高优先级7第2章总体设方案计的中断首先得到响应;更好的线程响应时间,通过固定高优先级中断服务线程IST的最大调度延迟改善线程响应时间;使用API函数CESETTHREADQUANTUM和CEGETTHREADQUANTUM修改操作系统中线程的线程量;更多的优先级,256个线程优先级,可以灵活调度嵌入式系统的任务;中断服务子程序的响应时间非常短;支持信号量。在基于WINDOWSCE的参考平台上,使用ARM9微处理器,系统可以在25I_TS内启动一个中断服务例程ISR,在901709S内启动相应的中断服务线程。4模块化WINDOWSCE是一个模块化操作系统,设计者必须根据实际工作情况和工作环境的需求,对操作系统的各个模块进行裁剪。WINDOWSCE的结构如图22所示,主要包括4个模块内核NKE、图形窗口事件子系统GWESEXE、文件系统FILESYSEXE、设备管理模块DEVICEEXE。其中NKEXE和FILESYSEXE是所有WINDOWSCE必不可少的。NKEXE负责中断处理、进程和线程管理、虚拟内存管理和其它相关任务;GWESEXEGRAPHICSWINDOWINGANDEVENTSSUBSYSTEM相当于桌面WINDOWS的图形设备接口GDI和用户库FILESYSEXE用于永久存储,包括文件系统、注册表和数据库。每个模块又分成许多小组件。裁减WINDOWSCE时,可以只选择那些需要的组件。图22WINDOWSCE的基本结构【2】8第2章总体设方案计5强大的开发工具WINDOWSCE为开发人员提供了友好的开发工具,开发人员利用这些工具简化开发流程,提高开发效率。在应用层上开发微软提供了EVCEMEDDEDVISUALC和VISUALSTUDIONET;在操作系统的定制方面提供了PBPLATFORMBUILDER。集成了定制,调试的主要功能。WINDOWSCE操作系统适合各种自动化设备的理想的小体积嵌入式平台。它各个部分模块化、可选择定制、提供网络通信、友好的图形界面、数据库、文件等支持,它还具有很强的实时性能,支持确定性的响应时间控制。基于WINDOWSCE的嵌入式控制系统提供统一的、可伸缩的解决方案,将专用硬件的耐用性与PC的灵活性结合在一起。因此WINDOWSCE在智能家居系统领域有着很好的应用前景,在嵌入式网络控制器中采用WINDOWSCE作为核心操作系统是比较合适的。24智能家居网络通信方式的选择241家庭内部网络通信方式的选择由于每个家庭内部环境布局不同,很多电器设备并不是长期位置不变,家庭内部各个设备与网络控制器之间的通信可以选择合适短距离的传输方式P1。蓝牙是一种小范围的无线通信标准IEEE80215,工作在24GHZ频带,带宽为1MBS,以时分方式进行全双工通信,其基带协议是电路交换和分组交换的组合。一个跳频频率发送一个同步分组,每个分组占用一个时隙,使用扩频技术也可扩展到5个时隙。同时,蓝牙技术支持1个异步数据通道或3个并发的同步话音通道,或1个同时传送异步数据和同步话音的通道。每一个话音通道支持64KBS的同步话音;异步通道支持最大速率为721KBS,反向应答速率为576KBS的非对称连接,或者是4326KBS的对称连接。蓝牙技术的特点包括采用跳频技术,数据包短,抗信号衰减能力强;采用快速跳频和前向纠错方案以保证链路稳定,减少同频干扰和远距离传输时的随机噪声影响;使用24GHZLSM频段,无须申请许可证;可同时支持数据、音频、视频信号。在家庭内部通信方式上选择蓝牙技术。9第2章总体设方案计242用户控制终端通信方式的选择GPRS通用分组无线业务GENERALPACKETRADIOSERVICE,是在现有GSM系统上发展出来的一种新的承载业务,目前为GSM用户提供分组形式的数据业务,是一种基于GSM系统的无线分组交换技术,提供端到端的、广域的无线IP连接。GPRS是一项告诉数据处理的技术,方法是以“分组”的形式传送资料到用户手上【19】。GPRS的最大优势在于目前的GSM移动通信网的传输速度为每秒96K字节,GPRS手机在今年年初推出时已达到56KBPS的传输速度,到现在更是达到了115KBPS此速度是常用56KMODEM理想速率的两倍;同时它接入范围大,可充分利用电信网络;接入时间短,GPRS接入等待时间短,可快速建立连接;提供实时在线功能,可随时和家庭内部设备进行通信POL。在家居网络控制器上安装GPRS收发模块,用户可通过手机在远程与家庭内部网络控制器进行联系,与蓝牙模块合作,对智能家居环境内部各个电器设备进行实时控制【51】。25小结图23智能家居系统连网方式本章针对第一章提出的智能家居无线网络通信的需求,对各种网络接入技术做了比较,确定总体设计方案,针对方案进行了软件与硬件的选型,选择嵌入式处理器S3C2410和嵌入式操作系统WINDOWSCE作为智能家居无线网络控制器的CPU和操作系统,并进行了分析和介绍。最后确定了本文开发的嵌入式无线网络控制器所采用的通信方式。LO第3章硬件平台的设计与实现第3章硬件平台的设计与实现31嵌入式网络控制器的硬件整体设计本系统的核心智能控制器选用的是SAMSUNG公司的3C2410芯片,并以该芯片为核心搭建系统硬件平台。嵌入式无线网络控制器的硬件整体设计如图31所示。控制系统以3C2410为核心设计了存储系统,通信系统,人机接口系统等。存储系统中设计了64MB的NANDFLASH、64MB的SDRAM用于存储,FLASH地址设置为0X000000000X03FFFFFF,SDRAM地址设置为OX30000000一OX33FFFFFF。通信系统中设计了JTAG仿真接口、L路以太网接口、1路USBDEVICE接口、1路USBHOST接口、3路RS232接口、2个PCI插槽、1个蓝牙扩展卡、1个GPRS扩展卡。两块扩展卡分别插在2个PCI插槽里。人机接口系统中设计了一个LCD接口,选购了一块240320大小的TFTLCD显示触摸屏与该接口连接,该LCD支持彩色黑白灰度,支持虚拟屏幕功能,可利用系统存储器来作为显示存储器,可编程屏幕大小;同时市场上一般型号的USB键盘或USB鼠标可以插在USBDEVICE接口上,在该控制器上的WINDOWSCE操作系统中使用。另外在电源模块中除了提供系统需要的5V、36V、18V,提供充分的时钟特性、定时报警用于唤醒CPU、支持时钟节拍中断,还提供了实时时钟掉电保护电路以增强系统的可靠性。3通道的UART传输,可进行基于中断的操作;支持5位、6位、7位、8位的串行数据传输接收;支持硬件握手协议;可编程的波特率;支持扩展模块蓝牙模块与3C2410之间的通信以及GPRS模块和3C2410之间的通信1。第3章硬件平台的设计与实现图31系统设计整体硬件框图32嵌入式无线网络控制器的存储系统321S3C2410存储器的特征为了满足控制器的现有和将来的需要,系统扩展了64MB的SDRAM、64MB的NANDFLASH。在3C2410体系结构中,可以有两种方法存储数据,各种数据存储在存储器的方式可以通过软件设置成大端或小端两种方式,整个系统的存储空间分为8个BANK,每个BANK的大小是128M字节,总共为1G字节,采用NGCS078个通用片选信号引脚选择8个BANK区域。BANK0到BANK5的开始地址是固定的,用于ROM或SRAM,BANK6和BANK7用于ROM、SRAM或SDRAM,BANK6的起始地址也为固定的,BANK7的起始地址是BANK6的结束地址,其起始地址和大小可通过编程改变;所有内存块的访问周期都可编程,外部等待扩展了访问周期;除了BANK0,所有的存储段都可以通过程序控制存取的位数81632支持SDRAM的自动刷新和电源关模式掣“。12第3章硬件平台的设计与实现3C2410片内集成外部总线接口EBI支持包括SDRAM、SRAM、NORFLASH及NANDFLASH等外部大容量存储器。根据控制系统的需求和未来扩展的需要,设计中选择了64M字节的SDRAM和64M字节的NANDFLASH作为控制系统的存储系统。322FIASH存储器S3C2410内部存在NAND闪存控制器。3C2410有三种启动方式,由OMI01引脚选择OO时CPU从NANDFLASH启动,用户将引导加载程序BOOTLOADER代码和操作系统的镜像存储在外部的NANDFLASH中,处理器上电复位时,通过处理器内部的NAND闪存访问控制接口将BOOTLOADER代码自动加载到内部RAM的4KB空间中此时内部RAM定位于起始地址空间OX00000000运行,在内部RAM运行的BOOTLOADER程序将操作系统的镜像加载至外部内存SDRAM中,然后操作系统便能够在SDRAM中运行,启动完成后,处理器内部RAM的4KB空间就可以释放掉用于其他的用途。整体上说,3C2410将拷贝启动代码NAND来配合SDRAM。通过使用硬件ECC,检验NAND数据的有效性。在完成拷贝启动代码后,应用程序可以在SDRAM中执行。K9F1208上的片选使能信号引脚CE至低电平,K9F1208的低8位IO口作为低8位数据线与3C2410的DARAODARA7对应相连;WP引脚是提供相关数据操作保护,可通过引出一上拉电阻与电源VCC相连。CLE和ALE分别用于命令和地址锁存;WE和RE是由3C2410的读写控制信号NFWE和NFRE提供,如果要从NAND闪存读取数据,3C2410就必须通过相关控制信号输出把NFRE设置成低电平,NFWE为高电平,在系统上电复位时NAND闪存芯片上的逻辑电路保证将数据送出;如果要向NAND芯片上写数据,3C2410就必须通过相关控制信号输出把NFWE设置成低电平,ILFRE为高电平【6】。3C2410与NANDFLASH的接口设计框图如图32所示。13第3章硬件平台的设计与实现33VLOMILOLWPDAAODAL艄IO07】RBBRBNFCECECLECLEK9F1208ALELENFWE眶NFREREGNDLL图32S3C2410与NAND闪存接口连接框图323SDRAM存储器SDRAM在系统中主要用作程序的运行空间,数据及堆栈区。当系统启动时,CPU首先从复位地址0X0处读取启动代码,在完成系统的初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,同时,系统及用户堆栈、运行数据也都放在SDRAM中L。根据本系统需求要求存储器1本系统采用的处理器S3C2410是32位体系结构,运行的嵌入式操作系统也是32位的,为了提高访问速度,采用两片16位字长的存储器。2对于存储器的访问时间,3C2410的总线频率可达到100MHZ,支持SDRAM的自动刷新和电源关模式,这里采用SDRAM,因为它支持高速总线时钟频率66MHZ以上不必插入指令等待周期,它和CPU通过一个相同的时钟锁在一起使得能够和CPU共享一个时钟周期。3处理器S3C2410电源电压采用的是33V,为电源处理的方便,选用的SDRAM也采用33V供电。确定了存储器的以上参数后,就可以选择具体的芯片了。本系统采用现代公司的两片16MXL6位数据宽度的SDRAM芯片HY57V561620,拼成32位数据宽度,构成64字节的存储空间。SDRAM与3C2410接口连接图见图34。SDRAM主要的控制信号有如下NSCAS、NSRAS、NWBE3O】、SCKE、SCLKI0、RWE。3C2410使用片选信号引脚NGCS6实现对HY57V561620的片选,这样整个系统中SDRAM的起始地址便为0X30000000,由于ARM中要求字单元的地址是字对齐的,这样就要求地址的低两位是0,即地址线的低两位14第3章硬件平台的设计与实现ADDRI01设置为低电平,在图33中所示3C2410是使用ADDR2自接与HY57V561620的A0相连的,HY57V561620是2MX16BITX4BANK的16MSDRAM芯片,芯片上的BA0和BAL是BANK地址输入信号,它决定了激活哪个BANK进行读写或者预充电操作,由3C2410的地址线及兼作通用10口的ADDR2426和ADDR25提供,NWBE主要用于屏蔽输入输出,HY57V561620的写信号NWE由3C2410存储器控制器的写信号NWE直接控制,3C2410的NSRAS和NSCAS分别控制存储器的NSRAS行地址选通信号和NSCAS列地址选通信号,另外SCKE提供存储器的SCKE时钟使能信号,SCLKO提供系统时钟给SDRAM,使两者以相同时钟同步工作【161。图33S3C2410与SDRAM接口连接框图33嵌入式无线网络控制器的串行接口系统3C2410的UART提供3个独立通道的异步串行输入输出口,每一个都可工作在中断模式和DMA的模式下。如果用系统时钟,UART支持达2304KBPS的位速率;如果用外部设备通过UCLK提供的时钟,那么UART可作在更高的速率;3个UART都可用作红外线接口。3C2410可以很方便地用UART实现RS232串口功能,但3C2410的供电电压为18W33V,所以IO口的最大逻辑电平也应该是33VT81,要实现RS232串口功能还要加电平转换电路,我们用MAX323215第3章硬件平台的设计与实现可实现这一功能。MAX3232单33V电源供电,仅需外接几个电容即可完成从TTLCMOS电平到RS232电平的转换【81。其与3C2410的硬件连接框图如图34所示,RS232工作在3线制的状态下。图34S3C2410与MAX3232接口连接框图34蓝牙模块101007的介绍爱立信公司推出的蓝牙芯片ROK101007是一款适合短距离无线通信的射频基带芯片,该芯片包括基带控制器、无线收发器、闪存等功能块,可提供HCI层的功能以及语音和数据传输。该模块还提供了UART、USB和PCM接口,方便用户对蓝牙设备的控制。本系统使用串口对蓝牙设备进行控制。选用的波特率为115200BS。35GPRSSIM300模块的介绍本系统所用的GPRS模块是SIMTECHNOLOGY公司生产的SIM300如图35。SIM300是新一代的GPRSGSM移动通信模块,它利用GPRS技术与GSM移动通信网络作为传输介质,有助于实现行业的管理现代化、数据采集现代化等目标。为用户提供了简单的无线GPRS连接,SIM300的GPRS永久在线功能提供了最快的数据传输速率。SIM300支持多频GSMGPRS90018001900MHZ,无需申请频点,只需要一张SIM卡即可。内嵌TCPIP协议栈,包括TCP、UDP、FTP、SOCKET、POP3、HTTP等网络协议。按量计费且快捷登录。电源电压要求3V,配有一根接收天线。提供RS232接口,用户可通过串口发送AT命令来控制GPRS模块工作。支持短信TEXT和PDU模式。16第3章硬件平台的设计与实现36小结墓客害霎委瞒是墓客害詈委彗|L|是薹暑;墓蓦嚣L客图35SIM300模块接口本章在第二章提出的整体设计方案的基础上,根据软件系统的要求以嵌入式处理器3C2410为基础,搭建了一个最小的系统,如存储器电路和串行接口电路等。按照总体设计方案的要求,分别介绍了开发所要用到的蓝牙芯片ROK101007以及GPRSSIM300模块的特性,为下一章的嵌入式软件开发提供了一个高性能的硬件开发平台。17姗蝴伽咖啡哪娜椰撕撕雠靴哪啪渤姗雠M附辩啪M|呈狮荟I小伽啪蝴呻哪泐黑辩累篡意LLL燕瀚第4章嵌入式无线网络控制器的软件设计与实现第4章嵌入式无线网络控制器的软件设计与实现41WINEE操作系统内核定制的研究以及开发工具的介绍本课题使用的是微软公司的MICROSOFTWINDOWSCE操作系统进行开发。WINDOWSCE是一个开放的、可裁剪的、32位的实时嵌入式窗口操作系统。MICROSOFTWINDOWSCE将先进、实时的操作系统和功能最强大的开发工具有机地融为一体,帮助开发人员快速创建下一代智能、互连、低资源占用的设备。WINDOWSCE继承了WINDOW界面的风格,给用户十分亲切的感觉,因此在图形化的工业控制领域占据了不小的市场【20】。MIRCORSOFTPLATFORILLBUILDERFORWINDOWSCE是微软公司提供给WINDOWSCE开发人员用于创建基于WINDOWSCE平台下嵌入式操作系统定制的集成开发环境。它集成了所有进行设计、创建、编译、测试和调试WINDOWSCE操作系统设计所需要的工所有开发工具。它运行在桌面WINDOWS下,开发人员可以通过交互式的环境来设计和定制内核、选择系统特性,然后进行编译和调试。同时,开发人员还可以利用PLATFORMBUILDER的强大功能,已使其成为WINDOWSCE平台下嵌入式操作系统开发和定制的必备工具。在基于WINDOWSCE的应用程序开发上,微软为开发人员提供了2种主要的开发工具,分别是EMBEDDEDVISUALC和VISUALSTUDIO。EMBEDDEDVISUALC是专门用于开发基于WINDOWSCE的本机应用程序的工具,它的出现主要是为熟悉VISUALC60的开发人员而准备的,这样熟悉开发桌面WINDOWS应用程序的工程师能够很快的进入到开发嵌入式WINDOWS平台产品的环境中来。VISUALSTUDIO有2003和2005两个版本,2003只能够支持WINDOWCE40系列的应用程序的开发,而它的后续产品2005主要用于开发WINDOWSCE50系列的应用程序。VISUALSTUDIO2005整加了本机代码的开发以及对NETCOMPACTFRAMEWORK20的支持,而且VSUALSTUDIO2005强化了图形界面设计的支持,特别是针对开发POCKETPC和SMARTPHONE的应用程序的工程师,是他们能够在IDE中确切看到UI编辑器。18第4章嵌入式无线网络控制器的软件设计与实现42嵌入式无线网络控制器BSP的开发BSPBOARDSUPPORTPACCKAGE板级支持包,为了简化驱动程序的开发,使得驱动程序开发人员在不同的硬件平台上,能够很好的移植嵌入式操作系统,往往操作系统要把硬件的接口抽象出来的一层便是BSP。图41BSP对硬件接口的抽象BSP由OAL、引导程序、设备驱动程序和配置文件组成。0AIOEM抽象层OEMABSTRACTIONLAYER是BSP的核心部分,当引导程序引导系统结束后,由OAL层负责硬件平台初始化、中断服务例程、实时时钟、计时器、内核调试、开关中断和内核性能检测等工作,是连接系统与硬件的枢纽。引导程序BOOTLOADER是在硬件开发板上执行的一段代码。它的主要功能是初始化硬件设备、建立内存空间的映射图有的CPU没有内存映射功能如3C4480,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。BOOTLOADER有很多种,例如图41中的EBOOTETHERNETBOOT就是通过以太网从开发机上下载操作系统映像到目标机上的BOOTLOADER。配置文件是一些包含配置信息的文本文件,它会告诉编译系统如何编译某些源代码,或者告诉编译系统如何配置最终的操作系统映像文件。开发BSP是一项非常复杂的工作,大多数情况下,开发BSP都是基于现有类似BSP源代码基础上做的修改。BSP开发的主要步骤有1硬件设计和测试;19第4章嵌入式无线网络控制器的软件设计与实现2学习现有同体系结构CPU的BSP;3建立BOOTLOADER,用来下载系统镜像,启动系统4编写OAL程序,用来引导核心镜像和初始化、管理硬件;5为新的硬件编写驱动程序;6设置平台配置文件,便于PLATFORMBUILDER编译系统;7设计电源管理。421BOOTLOADER的构建BOOTLOADER是在操作系统内核运行之前运行的一段小程序,可通过JTAG或者串口烧写到目标平台的FLASH当中。通过这段小程序,可以初始化硬件设备、建立系统的内存空间映射图,BOOTLOADER把操作系统内核镜像加载到RAM中,并将系统控制权传递给它。在设计的过程中BOOTLOADER主要由OEMSTARTUPCODE和MAINCODE两部分代码组成的,第一部分用汇编代码编写,它主要进行与CPU核心以及存储设备密切相关的处理工作,主要依赖于CPU的体系结构,这部分主要在FLASH中执行。第二部分是C语言编写的部分,用于实现对班级的驱动支持,这部分主要在RAM里面执行。OEMSTARTUPCODE是首先执行的BOOTLOADER代码,由ARM汇编语言代码来实现,存放在WINCEROOTPLATFONNSMDK2410EBOO她RMFWS文件中。主要实现的功能是屏蔽列表MMU;设置人口指针和中断向量表;设置处理器进人管理模式并禁止RQ和FIQ关MMU和CACHE;检测启动原因;初始化GPIO、存储控制器和中断控制器;设置时钟频率、操作系统定时器和实时时钟;初始化电源管理器、板级寄存器、硬件系统的其它部分如UART;开启MMU和CAEH等。W1NCER001PLATFORMSMDK2410EBOOT恼AAINC是实现的MAIN入口点,这也是MAINCODE的入口处。MAINCODE是管理BOOTLOADER执行的主要C语言代码,它通过接收来自串口的用户命令或者检查相应的硬件开关来决定完成的操作,这其中实现的功能主要有将内核数据复制到RAM中;初始化调试串口;平台的初始化工作时钟和驱动程序;做下载前的一些准备工作;判断映像文件是否已下载;一旦下载完毕,BOOTLOADER便调用OEMLAUNCH0函数启动映像否则,就执行下载映像第4章嵌入式无线网络控制器的软件设计与实现函数DOWNLOADLMAGE0。WINDOWSCE的BOOTLOADER的执行顺序如图42。图42BOOTLOADER的执行嵌入式控制器的BOOTLOADER的函数调用流程如图43所示2L第4章嵌入式无线网络控制器的软件设计与实现图43BOOTLOADER的函数调用图BOOTLOADER的函数中调用的主要函数及其这些函数实现的功能如下STARTUPOCPU最先执行的函数。也就是启动代码,又汇编语言写成,源文件_WINCEROOTRILATFO彻SMDK2410SRCBOOTLOAD猷EBOOT嗽咖PS。MAINSTARTUP调用MAIN函数进入C语言代码段,MAIN调用BOOTLOADERMAIN1,并先后调用KEMELRELOEATE、OEMDEBUGLNIT、OEMPLATFORMLNIT、OEMPREDOWNLOAD等函数。此函数源码文件路径_WLNCEROOTPUBLICEOMMONOAKDRIVERSETHDBGBLCOMMON。OEMDEBUGLNIT初始化调试端口使用串口O;OEMPLATFORMLNIT完成嵌入式控制器特定的初始化,包括实时时钟、NANDFLASH存储器、网卡控制芯片CS8900A等;OEMPREDOWNLOAD为嵌入式控制器创建一个设备名,获得动态口地址或分配一个静态IP地址,初始化1FRP传输;DOWNLOADLMAGE下载WINDOWSCE操作系统映像到控制器的SDRAM中;OEMLAUNCH加载WINDOWSCE运行时映像;第4章嵌入式无线网络控制器的软件设计与实现4220AL的开发OEM适配层OEMADAPTATIONLAYER,简称OAL是逻辑上驻留在WINDOWSCE内核与目标设备硬件之间的代码层,在物理上OAL与内核库链接来产生内核可执行文件。OAL的代码是WINDOWSCE操作系统内核的一部分,在构建过程中,OAL代码被编译成OAL1IB的库文件,这个库文件会和其它的库文件统一的链接起来,形成NKEXEWINDOWSCE内核可执行文件。不同的硬件设备,OAL代码是不相同的,程序开发人员要根据硬件的特点重新的编写啪I。OAL的启动过程也就是整个操作系统的启动过程。OAL代码启动主要经过STARTUP0、KEMELSTART0、ARMINITO和FIRSTSCHEDULE0“磊数。SMDK2410的OAL代码在目录WINCEROOTPLATFORMKSMDLO410SRCKKERNEL中。下面对一些详细的功能进行进一步的介绍。1STARTUP函数STARTUP函数是内核的入I1函数,它负责将CPU初始化到一个已知的状态和调用内核初始化函数。如果系统经过了BOOTLOADER的引导,硬件的初始化也就在BOOTLOADER中完成了,STARTUP只需要完成跳转到OAL的主控函数KEMELSTARTO开始执行。另外还创建一个OEMADDRESSTABLE,并将它传递给内核,也就是传递给KEMELSTARTI函数。表中的每一个入口都定义了一个内存中的物理位置、内存的大小以及

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论