(信号与信息处理专业论文)基于嵌入式web服务器的数据采集系统的设计.pdf_第1页
(信号与信息处理专业论文)基于嵌入式web服务器的数据采集系统的设计.pdf_第2页
(信号与信息处理专业论文)基于嵌入式web服务器的数据采集系统的设计.pdf_第3页
(信号与信息处理专业论文)基于嵌入式web服务器的数据采集系统的设计.pdf_第4页
(信号与信息处理专业论文)基于嵌入式web服务器的数据采集系统的设计.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

基于嵌入式w e b 服务器的数据采集系统的设计摘要嵌入式w e b 服务器技术是嵌入式计算机技术和i n t e m e t 技术相结合的产物。嵌入式系统连接到i n t e m e t 后使远程测量、远程控制、远程诊断和远程维护等变得非常容易,用户可以通过浏览器对远程设备进行监控与管理。构建嵌入式系统网络平台是目前的重点研究方向之一。本文构建了基于s t m 3 2 系列a r m 的嵌入式网络硬件平台,同时解决了p c o s i i和t c p i p 协议栈在该平台上的移植问题,并构建了相应的嵌入式网络软件平台。硬件方面,采用基于c o r t e x m 3 内核的s t m 3 2 f 1 0 7 r c 芯片作为嵌入式w e b 服务器的核心处理器,该处理器片内集成了1 0 1 0 0 m b p se t h e m e tm a c 核,具有高速直接内存访问功能( d m a ) 和4 k bs r a m ,符合i e e e l 5 8 8 标准。可以方便的构建高性能的、小型化的嵌入式网络硬件平台。软件方面,采用开源的实时操作系统l - l c o s i i 作为整个系统的软件平台,同时移植了面向嵌入式系统开发的开源t c p i p 协议栈l w i p ,进行嵌入式w e b服务器设计,实现了嵌入式w e b 服务器的两个关键技术:超文本传输协议( h 订p ) 和通用网关接口( c g i ) 。最后使用该嵌入式w e b 服务器,对远程测试设备进行了数据采集和处理,通过嵌入式w e b 服务器发布到因特网上。并通过i e 浏览器对本文设计的嵌入式w e b 服务器进行访问,获得了采集的模拟量数据,同时可以控制远程设备的运行状态。本系统运行可靠、性能稳定,实现了现有工业设备的低成本网络化改造。关键词:嵌入式w e b 服务器;p c o s i i ;s t m 3 2 f 1 0 7 r c ;t c p i p基于嵌入式w e b 服务器的数据采集系统的设计a b s t r a c te m b e d d e dw e bs e r v e rt e c h n o l o g yi sap r o d u c to ft h ec o m b i n a t i o no fe m b e d d e dc o m p u t e rt e c h n o l o g ya n di n t e r a c tt e c h n o l o g y a f t e re m b e d d e ds y s t e m si sc o n n e c t e dt ot h ei n t e r n e t ,t h er e m o t em e a s u r e m e n t ,t h er e m o t ec o n t r o l ,t h er e m o t ed i a g n o s i sa n dt h er e m o t em a i n t e n a n c eb e c a m em u c he a s i e r u s e r sc a l lm o n i t o ra n dm a n a g er e m o t ed e v i c et h r o u g hab r o w s e r b u i l d i n ga l le m b e d d e ds y s t e mp l a t f o r mi so n eo ft h ek e yr e s e a r c hd i r e c t i o n s s t m 3 2a r m - b a s e de m b e d d e dn e t w o r kh a r d w a r ep l a t f o r m si sc o n s t r u c t e di nt h i sp a p e r ,w h i l et h em i g r a t i o ni s s u e so ft h ei _ , c o s i ia n dt h et c p i pp r o t o c o ls t a c ko nt h ep l a t f o r mi ss o l v e d t h ec o r r e s p o n d i n ge m b e d d e dn e t w o r k i n gs o f t w a r ep l a t f o r mi sb u i l d e d h a r d w a r e ,t h es t m 3 2 f10 7 r cc h i pb a s e do nc o r t e x m 3i ss e l e c t e da s t h ec o r ep r o c e s s o ro ft h ee m b e d d e dw e bs e r v e r , w h i c hi n t e g r a t e d10 10 0 m b p se t h e m e tm a cc o r e ,h i g h - s p e e dd i r e c tm e m o r ya c c e s sf u n c t i o n ( d m a ) a n d4 k bs r a m ,a n dm e e tt h ei e e e l5 8 8s t a n d a r d t h eh i g h - p e r f o r m a n c ea n dm i n i a t u r ee m b e d d e dn e t w o r kh a r d w a r ep l a t f o r mc a l lb ee a s i l yb u i l d e d s o f t w a r e ,t h eo p e n - s o u r c er e a l - t i m eo p e r a t i n gs y s t e m 心o s i ii su s e da st h es o f t w a r ep l a t f o r m ,w h i l et h et c p i pp r o t o c o ls t a c kl w i pt h a to p e ns o u r c ea n dd e v e l o p m e n tf o re m b e d d e ds y s t e m si sm i g r a t e d t h ee m b e d d e dw e bs e r v e ri sd e s i g n e d ,a n dt h et w ok e yt e c h n o l o g i e so ft h ee m b e d d e dw e bs e r v e r , t h eh y p e r t e x tt r a n s f e rp r o t o c o l( h 1 1 p ) a n dt h ec o m m o ng a t e w a yi n t e r f a c e ( c g i ) i si m p l e m e n t e d f i n a l l y ,t h ed a t ao ft h er o m o t ed e v i c ei sa c q u i r e da n dp r o c e s s e dt h r o u g ht h ee m b e d d e dw e bs e r v e r ,a n dw h i c hi sp u b l i s h e dt ot h ei n t e r n e tt h r o u g hi t t h ee m b e d d e dw e bs e r v e ri sa c c e s s e dt h r o u g ht h ei eb r o w s e r , a n dt h ec o l l e c t e da n a l o gd a t ai sa c q u i r e d ,w h i l et h er e m o t ed e v i c e so p e r a t i n gs t a t u sc a nb ec o n t r o l l e d t h es y s t e mi sr e l i a b l ea n dp e r f o r m a n c es t a b l e ,t h ee x i s t i n gi n d u s t r i a le q u i p m e n ti sr e c o n s t r u c t e d , a c h i e v i n gt h el o w - c o s ta n dn e t w o r k e d k e y w o r d s :e m b e d d e dw e bs e r v e r ;i - t c o s - i i ;s t m 3 2 f10 7 r c ;t c p i p第1 章绪论i i i i i i 宣i i 萱宣i i i i i i i i i i i i i i 宣宣i i 宣i 宣i i imi l- 一i i i i 譬1 1 课题的背景及意义第1 章绪论信息产品随着计算机技术的发展已经深入到生活的各个方面,如今随着网络技术的发展,信息产品与网络相结合成为其发展的一大趋势,这里不仅包含传统的个人计算机等设备,更延伸到了手机、智能家电、工业自动化等使用嵌入式设备及系统的领域l l 】。目前,流行的i n t e m e t 技术在嵌入式领域的应用,使嵌入式系统变得更加智能化、网络化,另一方面,又由于嵌入式设备对接入i n t e m e t 的需要,极大地促进了嵌入式i n t e m e t技术的发展【2 l 。以前,嵌入式设备要想实现网络化的应用,开发人员会使用自己编写的软件协议,寻找可利用的能满足需要的硬件设备,一方面加大了开发成本与周期,一方面又使得嵌入式系统网络标准的不统一,极大地限制了其在广域网络上的应用。现在,越来越多的嵌入式设备开始使用w e b 技术,使用标准的h t m l 语言与通用的网络设备接口。这样,只要嵌入式设备接入互联网,就可以在如任何地方使用一台接入i n t e m e t 的计算机对其访问,进行信号传递,实现远程控制,这为嵌入式网络应用提供了一个很好的发展捷径,使得远程管理、检测与控制更为便捷。嵌入式w e b 服务器就是该方面典型的一个应用。因此,采用何种的硬件设计,能够构建出一套功能相对完备、系统运行效率高而成本不高的嵌入式w e b 服务器就成为研究的重点 3 1 。1 2 嵌入式系统概述嵌入式系统从诞生到现在经过了几十年的发展历程,对人们的工作、生活以及娱乐方式等都产生了很大的影响。嵌入式系统的种类很多,由于嵌入式系统一般都是针对某方面的具体应用而开发的,因此各自的特性很明显,比如数码播放器和汽车中应用的嵌入式系统就有很大的差异。嵌入式系统在人们的生活中几乎无处不在,从智能化的家电( 全自动洗衣机、数字电视) 到便携式数码产品( 手机、数码相机) ,再到工业自动化( 智能仪表、机器人) 以及国防、航天等领域,都应用了嵌入式系统 4 1 。1 2 1 嵌入式系统与嵌入式处理器嵌入式系统本身是一个相对模糊的定义,下面给出两种相对较为合理的定义:嵌入哈尔滨工程大学硕士学位论文式系统是以某种具体应用为中心,以计算机技术为基础,软硬件可配置,面向对功能、成本、功耗、体积以及性能有特定要求的专用的计算机系统【5 j 。相对于通用计算机系统,嵌入式系统的硬件以及软件都需要经过精心复杂的设计,是软硬件尽可能地高效协调工作,以尽可能小的软硬件开销完成特定目的应用。由上面两方面的定义可以知道,嵌入式系统也是一种计算机系统,但嵌入式系统使用的处理器和普通个人计算机( p c ) 中的通用处理器又不同。通用处理器提供全部的特性以及尽可能广泛的功能,面向于各种应用,在硬件上提供各种接口以支持各种各样的外部设备,功耗高、体积大,成本也较为昂贵。基于通用处理器的软件系统也具有大量的编程资源,供软件开发人员基于处理器开发不同种类的应用软件。在嵌入式处理器相对较少的初期,嵌入式系统往往采用通用处理器构建。近年来,随着微处理器设计与制造技术的发展,嵌入式处理器种类愈加丰富,开发者可以根据自身需要选择嵌入式处理器,而不再使用通用处理器。嵌入式处理器大致分为几类,一类注重体积、功耗以及成本,这类处理器面向那些不需要高处理速度却需要尽可能低的功耗的场合,或者是成本敏感应用,比如单片机或者a r m 处理器。另一类嵌入式处理器则更关注性能,这类处理器从硬件上就是为高速数据计算或者传输而设计的,用以满足那些通用处理器较难实现的密集型计算应用需要,比如在网络交换机里应用的嵌入式处理器。还有一类嵌入式处理器尽可能满足性能、体积、功耗、成本四方面的需求。比如嵌入式数字信号处理器( d s p ) ,其具有特殊的计算单元、优化的内存设计、独特的寻址及总线结构,这使得d s p 更加适合实时性要求高的场合。片上系统s o e处理器是一种高度集成化的嵌入式处理器,具有c p u 内核并自带了许多外设模块,如以太网接口、通用可编程计时器等,这使得在构建嵌入式系统时,可以尽可能减少外部设备,从而降低产品成本、体积以及功耗【6 j 。1 2 2 嵌入式系统的组成由于嵌入式系统的面向特定应用特性,绝大多数嵌入式系统都是经过定制以满足特定的用户群体。嵌入式系统大致上说由嵌入式硬件系统和嵌入式软件组成,嵌入式硬件以嵌入式c p u 或者含有c p u 内核的芯片为核心,如嵌入式微处理器、嵌入式微控制器、嵌入式数字信号处理器以及嵌入式片上系统等,外围器件可能有存储类器件如r o m 、r a m ,用户交互器件如按键、显示器件,传感器等。嵌入式系统软件可以是专为嵌入式应用设计的操作系统,也可以不用操作系统,仅编写前后台程序1 7 j 。2第1 章绪论1 3 嵌入式操作系统对于简单的嵌入式应用开发来说,操作系统并不是必须的,对于基于芯片的开发,应用程序一般是死循环的形式,通过循环中调用的函数以及中断服务程序完成整个软件系统的功能。如果使用嵌入式操作系统,则嵌入式应用软件需要基于该操作系统进行开发。目前,某些领域的嵌入式系统功能越来越复杂,系统越来越庞大,这时使用操作系统就显得十分必要7 - t 8 1 。1 3 1 嵌入式系统的特点操作系统是运行在处理器上的最底层的程序,这个程序掌管着整个计算机硬件平台的所有硬件资源,负责计算机系统中的资源分配,提供用户接口,协调用户程序的运行。对于用户而言,运行于不同硬件平台的操作系统可以弥补硬件层面的差异,只需要基于统一的系统平台来编写用户程序1 9 j 。嵌入式操作系统与微型计算机和大型计算机等使用的操作系统并不存在本质上的区别,不过嵌入式系统一般都为嵌入式应用做了优化,比如更少的资源消耗以及更佳的实时性,在有限的硬件资源情况下发挥出整个系统的最大效能。1 3 2 嵌入式实时操作系统实时操作系统( i 盯o s ) 是针对实时性要求非常高的场合而设计的,它是在嵌入式系统启动之后立即执行的背景程序,用户程序以任务的形式运行于r t o s 之上,r t o s根据用户任务的需求,进行硬件资源管理、任务之间的消息管理、任务优先级的调度以及发生异常时的相应处理工作【l0 1 。在编写基于r t o s 的任务时,需要根据需要设置每个任务的优先级,系统运行时,r t o s 根据各个任务的优先级进行任务的调度与切换工作,最大程度地提高嵌入式系统的动态响应特性,即实时性。实时多人无操作系统是以分时方式轮流执行任务,因此多个任务并非严格意义上的同时执行,只是切换速度很快。因此,切换任务的方式会直接影响操作系统对外部事件的响应速度,以时间分片方式切换任务或者协作方式切换任务的操作系统都难以称得上是真正的实时系统,只有根据任务优先级,以优先服务方式进行任务调度的系统才是真正的实时操作系统。使用嵌入式实时操作系统可以提高开发效率。对于嵌入式系统开发人员来说,代码的积累与可移植性很重要,如果每开发一款产品都要从头开始编写代码,无疑会产生大量的重复性劳动,如果使用相同的操作系统,以前编写的程序就很容易进行移植。另一哈尔滨工程大学硕十学位论文方面,在操作系统环境下,一个应用可以分解为多个任务模块进行编写,在开发调试过程中,对某个模块的修改对其他任务模块的影响很小,调试工作会变得很有条理,不会出现不使用操作系统时的牵一发而动全身的状况i l 。使用嵌入式实时操作系统可以提高整个系统的可靠性。系统可靠性在工控等领域非常重要,一个系统不仅要有可靠的硬件基础,也需要可靠的软件基础。如果不使用操作系统,在系统受到诸如外界干扰等产生异常后,程序可能跑飞或者卡死,从而造成整个系统的崩溃。如果使用操作系统进行管理,用户程序以任务的形式运行,因此系统发生异常时,出现问题的可能只是某个任务出现异常,操作系统通过进程监视及时对其修复,从而维持系统的整体稳定性。对于3 2 位的嵌入式c p u 来说,其硬件就是针对多任务多用户使用环境而设计的,3 2 位c p u 比8 位、1 6 位c p u 运行速度快很多,而且,采用了独特的设计以提高系统稳定性与可靠性,比如将c p u 运行状态分为系统态以及用户态,为系统及用户设立单独的堆栈,这样用户设计程序的时候,就可以在软硬件两方面保障系统的稳定健壮,此时,采用实时操作系统就明显比不采用操作系统的平台更加可靠。1 3 3 嵌入式w e b 服务器将i n t e m e tw e b 技术应用于嵌入式系统领域导致了该领域传统运行维护模式的一场变革:将嵌入式系统中植入嵌入式w e b 服务器后接入i n t e m e t ,在任何一个地方都可以通过网络浏览器从i n t e r n e t 上获取该w e b 服务器发布的实时信息,进而实现该嵌入式系统远程实时维护;而且,这种基于h t m l 标准化的w e b 用户界面省去了为不同操作平台而定制的人机界面,省时、省力、降低成本。显然,嵌入式系统这种基于w e b服务器的远程监控维护方式将克服传统的本地监控维护方式存在的低效率、高成本的缺陷【1 2 】。但是,传统的w e b 技术方案不能直接用于构建嵌入式w e b 服务器。传统w e b 服务器的硬件平台使用具有高运算能力和海量存储容量的工作站或p c 机,一般以非实时操作系统作为软件工作平台,其上运行大型复杂的服务器程序,典型的如基于w i n d o w sn t 的i i s ( i n t e m e ti n f o r m a t i o ns e r v e r ) 、基于u n i x 的a p a c h ew e bs e r v e r 等。这样的软硬件配置方案对于嵌入式系统是无法实现的。基于实时操作系统的嵌入式w e b 服务器的出现为解决以上问题开辟了一条途径。嵌入式w e b 服务器以8 位、1 6 位或3 2 位单片机为硬件工作平台,以嵌入式实时多任4第1 章绪论务操作系统为软件平台( 也有极少数不采用操作系统的) ,运行小型的精简的服务器程序。嵌入式w e b 服务器已经大量应用于通信领域中的路由器、交换机、网络视频监控等产品。近年来如何使用w e b 浏览器对嵌入式设备进行监控己越来越引起人们的注意1 1 3 o使用嵌入式w e b 服务器,用户的i n t e m e t 浏览器就是客户端,服务器需要动态的将嵌入式系统的相关信息发布到i n t e m e r 上,则让嵌入式系统能生成动态实时数据的网页问题是亟待解决的另一问题【l4 1 。目前,网页上实现动态交互的技术主要有c g i 、p h p和a s p 。公共网关接口c g i ( c o n l l t l 0 1 1g a t e w a yi n t e r f a c e ) 是一种服务器与浏览器信息交换的标准接口。在物理上,c g i 是一段程序,它运行在服务器上,提供与客户端h t m l页面的接口,完成h t m l 无法做到的交互功能【i 引。c g i 除了执行效率慢以外,其运行稳定性、系统安全性及编程语言的多样性等性能均比p h p 和a s p 优越,同时考虑到工业控制的实际情况,对稳定和安全性的要求较高,而且不会有大量请求同时并发,因此选用c g i 作为服务器与浏览器之间的交互接口,实现动态网页的生成。,1 4 论文主要完成的工作互联网的普及使远程控制及数据采集变得非常方便,嵌入式系统的不断发展使嵌入式设备接入互联网成为可能,两者的结合使传统的互联网向物联网方向发展,极大地方便人们的生活。基于这种背景。本文给出一种使用g c o s i i 操作系统的基于s t m 3 2 系列a r m 芯片的嵌入式w e b 服务器的构建,首先完成p c o s i i 操作系统在c o t e x m 3内核的s t m 3 2 处理器上的移植,然后采用专为嵌入式设备设计的l w i p 实现t c p i p 协议栈,使i - t c o s i i 操作系统具有网络功能,然后编写h r r p 服务功能软件,使系统接入互联网后可以作为远程w e b 服务器进行访问,实现对远程设备的数据采集等工作。整个系统的开发与研究工作总结如下:( 1 ) 研究分析c o t e x m 3 内核的s t m 3 2 处理器体系结构及软件开发环境。( 2 ) 深入了解g c o s - i i 操作系统,深入分析移植代码相关部分,在前面熟悉s t m 3 2处理器体系结构的前提下,完成 i c o s i i 操作系统在此目标芯片上的移植,并测试移植工作的正确性。( 3 ) 深入了解开源的t c p i p 协议栈l w i p ,分析其源代码,将l w i p 移植到i i c o s i i操作系统中,将g c o s 1 i 操作系统扩展出以太网功能模块,为嵌入式w e b 服务器提供底层的软件支持。哈尔滨工程大学硕士学位论文( 4 ) 根据s t m 3 2 f 1 0 7 芯片手册以及芯片厂家提供的关于l w i p 在该芯片上的应用说明,编写s t m 3 2 f 1 0 7 内置以太网接口的驱动程序。( 5 ) 使用通用网关接口c g i 实现用户与嵌入式w e b 服务器的交互功能,实现通过浏览器访问嵌入式系统采集到的数据等功能。6第2 章嵌入式w e b 服务器开发平台的构建第2 章嵌入式w e b 服务器开发平台的构建2 1 嵌入式w e b 服务器硬件平台的构建嵌入式系统的构建包括软硬件两部分,只有在构建好硬件平台后,才能在软件开发过程中,及时进行系统验证。2 1 1 基于s t m 3 2 f 1 0 7 r c 的硬件开发板本系统采用基于a r mc o t e x m 3 内核的s t m 3 2 f 1 0 7 r c 芯片为核心的硬件平台,由于s t m 3 2 f 1 0 7 r c 内部集成了包括u s b 、u a r t 、1 2 c 、以太网、片内r o m 、r a m 等极其丰富的片内外设,只需要很少的外部器件就能满足本设计的需要,因此整个硬件电路板十分简洁,整个硬件系统大概分为供电电路、时钟电路、r s 2 3 2 串口电平转换电路等组成。2 1 2c o t e x m 3 内核的s t m 3 2 f 10 7 r c 处理器简介s t m 3 2 f 1 0 7 x x 增强型系列使用高性能的a r mc o r t e x m 33 2 位的精简指令集内核,工作于7 2 m h z 的频率上,其片内集成了高速存储器( 高达2 5 6 k 字节的闪存和6 4 k 字节的静态r a m ) ,丰富的增强型i o 端口以及联接到两条a p b 总线的片内外设。所有型号的器件都提供2 个1 2 位的模数转换器( a d c ) 、4 个通用的1 6 位定时器外加1 个p w m 定时器,还包含目前流行的标准和先进的通信接口:2 个1 2 c 接口,3 个s p i 接口、2 个1 2 s 接口、5 个u s a r t 接口、一个支持o t g 功能的u s b 接口、两个c a n 总线接口和一个以外网接口。s t m 3 2 f 1 0 7 殛增强型系列产品工作在2 0 v 至3 6 v 的供电电压和_ 4 0 。c 至+ 1 0 5 。c的温度范围内。提供一系列的省电模式以保证低功耗场合应用的需求。根据不同的封装形式,器件中的外设配置不尽相同。具体特性如下【1 6 】:功能内核:基于a r m3 2 位c o r t e x m 3 内核c p u一最高7 2 m h z 工作频率,在存储器的0 等待周期访问时可达1 2 5 d m i p s m h z 的指令运行速度7哈尔滨t 程大学硕士学位论文一单周期乘法和硬件除法运算存储器一从6 4 k 或2 5 6 k 字节的闪存程序存储器一高达6 4 k 字节的通用s r a m时钟、复位和电源管理一2 0 - 3 6 伏供电和i o 引脚一上电断电复位( p o i 泖d r ) 、可编程电压监测器( p v d )一支持3 - 2 5 m h z 晶体振荡器一内置8 m h 水c 振荡器( 出厂经过调校)一内置4 0 k h z r c 振荡器( 带校准功能)一3 2 k h z 实时时钟振荡器( 带校准功能)低功耗一具有休眠、挂起与待机三种低功耗模式一可使用备用电池为实时时钟和后备寄存器供电两个1 2 位a d c ,l i l t s 转换时间( 最多可达1 6 个输入通道)一转换范围:0 至3 6 v一双采样和保持功能一温度传感器,一交叉模式下最高可达2 m s s2 个1 2 位数模转换器,d m a -一1 2 通道d m a 控制器一支持的外设:定时器、a d c 、d a c 、s p i 、1 2 c 、1 2 s 和u s a r t多达8 0 个快速i o 端口一5 1 8 0 个i o 口,所有i o 口可以映像到1 6 个外部中断;几乎所有端口均可承受5 v 信号调试模式一支持s w d 串行单线调试和j t a g 调试接口多个支持管脚重映射的定时器一4 个1 6 位定时器一1 个1 6 位用于电机控制的脉宽调制高级控制定时器,带死区控制和紧急刹车。8第2 章嵌入式w e b 服务器开发平台的构建一2 个独立的和窗口型的w t d 定时器一多个支持管脚重映射的通信接口一多达2 个支持s m b u s p m b u s 的1 2 c 接口一多达5 个u s a r t 接口一多达3 个s p i 接口一2 个具有5 1 2 字节专有s r a m 的c a n 接口( 2 0 b 主动)一支持o t g 功能的全速u s b2 0 接口1 0 1 0 0 硬件以太网接口,具有专有的d m a 和4 k 字节s r a m图2 1s 1 m 3 2 f 1 0 7 r cc p u 功能框图9哈尔滨t 程大学硕士学位论文2 1 3 以太网p h y 控制器d p 8 3 8 4 8s t m 3 2 f 1 0 7 r c 内部已经集成了以太网媒体接入控制器( m a c ) ,m a c 实现网络的数据链路层,数据链路层向网络提供标准的数据通信接口,提供构建数据帧、检查数据差错、传递控制等功能,物理层则负责与通讯相关的电信号部分,向数据链路层提供标准的通信接口,提供时钟信号、数据编码、线路状态以及相关的硬件电路等,物理层控制器是与外部信号接口的芯片。s t m 3 2 f 1 0 7 r c 并未集成物理层控制器,因此需要外接物理层控制器,本设计采用1 0 l o o m s 单路物理层控制器d p 8 3 8 4 8 ,相关原理图如下:+ 搿u n m 三= 猢ii器叮_ |i- m f # l r ir i 。,4 榭辫曳k k- 】i。,。褂蚶。 。:1i 饕簧暑i 商l 。麓一嚣= 手。一剖i + 5 亭ii l l 。錾瓣一2 ai黼b 。u “基一j纛4 ,“r 土-誉f“。口一【 。“篇:习- 亡:近:道i 面0 一一一k 由b 。;k 。l嬲:社蛐i 3 。由列。一l 一耻:三山l j:嚣嚣器:甚岳喜曲黼:彩i寰o e s h v e o “_j l 墓燕糯鬟耆溪习盏j p 盏象;:l ”“:幽- h 州_ l 。桌 l ;1 _ :蛩1 。8 1 “”“2 1 4 各部分硬件电路图图2 2d p 8 3 8 4 8 硬件连接图l o第2 章嵌入式w e b 服务器开发平台的构建mi i i i i i 宣看i i ;i i i i i i i i i i 萱宣i i i i i i i i i i 宣暑置宣置葺置暑i i i i i i 萱宣i i 宣宣i i i i 暑图2 3s t m 3 2 f 1 0 7 r c 核心原理图萋莲气鼎尸器剐亟蛳趾叫塌图2 4 外围接口电路原理图哈尔滨t 程大学硕士学位论文图2 5 供电电路原理图2 2s t m 3 2 f 1 0 7 实现网络通信与以太网相关的最重要的硬件是m a c 及其专用d m a 。s t m 3 2 f 1 0 7 x x 提供支持i e e e 8 0 2 3 2 0 0 2 的介质访问控制器用于以太局域网通信,内置工业标准的介质无关接口( m i i ) 或者是精简的介质无关接口( 蹦i i ) 。s t m 3 2 f 1 0 7 x x 要求一个外部的物理接口设备( p h y ) 来连接物理局域网总线( x 2 绞线,光纤等) 。使用多达1 7 路信号( m i i )或者9 路信号( r m i i ) ,p h y 可被连接到s t m 3 2 f 1 0 7 ) 【) 【介质无关接口端。p h y 能够使用s t m 3 2 f 1 0 7 x x 输出的2 5 m h z ( m i i ) 或5 0 m h z ( 蹦i i ) 时钟信号。s t m 3 2 f 1 0 7 x x 集成m a c 包括以下特性i 】:( 1 ) 支持1 0 和1 0 0 m b i t s 两种速率( 2 ) 专用d m a 控制器允许专用s r a m 和描述符之间高速传输。( 3 ) 标记的m a c 帧支持,支持v l a n ( 虚拟局域网)( 4 ) 半双工和全双工两种操作模式,半双工下采用c s m a c d ( 带有检测冲突的载波侦听多路存取)( 5 ) 支持m a c 控制子层,用于控制帧。( 6 ) 3 2 位c r c 产生和清除。( 7 ) 一些地址过滤模式,对物理和组播地址。( 8 ) 3 2 位状态编码,用于每个传送和接受帧。( 9 ) 内部f i f o 用于缓存传输和接收帧。传输f i f o 和接收f i f o 都是2 k b y t e ,总计4 k b y t e s 。( 1 0 ) 支持硬件p t p ( 精确时间协议) ,时间戳比较器连接到t i m 2 触发输入端。当系统时间比预定目标时间大时,触发中断。1 2第2 章嵌入式w e b 服务器开发平台的构建2 2 1 以太网功能接口s m im i i 和r m i is t m 3 2 f 1 0 7 支持两种工业标准的物理层接口即默认的介质无关接口( m i i ) 和精简的介质无关接口( r m i i ) 【1 8 j 。以太网外设由m a c8 0 2 3 和一个专用d m a 控制器组成,支持默认的m i i 和r m i i ,通过一个选择位来设置默认m i i 接口或精简m i i 接口。d m a 控制器接口通过a h b 主从接口连接核和内存,当a h n 从接口访问控制和状态寄存器空间时a h b 主接口控制数据的传输。在m a c 核传输前,传输f i f o 缓存通过d m a 从系统系统内存读取的数据。相似的,接收f i f o 队列从线上储存以太网帧直到它们被d m a 传送到系统内存。以太网外设包括一个s m i 用于和外部p h y 通信。一系列的配置寄存器允许用户为m a c 和d m a 控制器选择想要的模式和特性。2 2 2 站管理接口( s m )图2 6s t m 3 2 f 1 0 7 以太网模块原理图s t a t i o nm a n a g e m e n ti n t e r f a c e ( s m i ) 允许应用程序通过一根时钟数据线读取任意一个物理寄存器。接口支持最多访问3 2 个p h y 。应用程序可以选择3 2 个p h y 中的一个和任意一个p h y 3 2 个寄存器中的一个,来发送控制数据或者接受状态信息。在给定的时间里只有一个p h y 中的寄存器能够被访问。m d c 时钟线和m d i o 数据线被微控制器执行为交替的功能i o 口。m d c 一个用于给数据传输提供时间参考的周期性时钟,最大频率为2 5 m h z 。最哈尔滨工程大学硕十学位论文小的m d c 的高低时间是每次1 6 0 n s ,最小的周期是4 0 0 n s 。在空闲状态,s m i 管理接口驱动m d c 时钟信号为低。m d i o :数据输入输出数据流用m d c 时钟信号来同步传输状态信息到从物理设备。m d cs t m 3 2oe x t e r n a lt - 心孓m d i op h yn2 2 2 1s m i 帧格式图2 7s m i 连接方式与读写操作相关的帧结构在表2 1 中显示,传输位的顺序必须从左到右。表2 1s m i 帧格式m a n a g e m e n tf l a m ef i e l d sp r e a m b l es t a r to p e r a t i o n队d d rr a d d r翻d a t a ( 1 6 b i t s )i d l e( 3 2 b i t )r e a d1 10 l1 0p p p p p玎盯z 0d d d d d d d d d d d d d d dzw r i t el l0 lo lp p p p p肼1 0d d d d d d d d d d d d d d dz2 2 2 2s m i 写操作当应用程序设置m i i 写操作和忙标志位( 在以太网物理层m i i 地址寄存器e t h e m e tm a cm i ia d d r e s sr e g i s t e r ( e t h) ,通过写地址、中的寄存器地址和写数据( 在_ m a c m i i a r )s m ( ip h y) p 启h 动y e t h e m e tm a cm i id a t a r e g i s t e re t hm a c m i i d r )一个写操作到p h y 寄存器。在传输过程中应用程序不能改变m i i 地址寄存器的内容或者是m i i数据寄存器。在这段时间里对m i i 地址寄存器和m i i 数据寄存器的写操作都被忽略( 忙位为高即为1 ) 。写操作完成以后,s m i 通过复位忙标志位来指示写操作完成。1 4第2 章嵌入式w e b 服务器开发平台的构建僦几f 1i i l 几哪n 田几几f 1f 1 口n j l 兀几f i l 几日眦一脚删。司! 门! 嗽渤嬲删嗽m i 麓墨i p h y 一豁蕊t u r nid a t ai2 2 2 3s m i 读操作图2 8s m i 写操作时序当用户设置e t h e m e tm a cm i ia d d r e s sr e g i s t e r ( e t h _ m a c m i i a r ) 中的m i i 忙标志位,同时设置m i i 写标志位为零,s m i 在p h y 寄存器中启动一个读操作,传输p h y地址和p h y 中的寄存器地址,传输过程中应用程序不能改变m i i 地址寄存器的内容或者m i i 数据寄存器的内容。这期间,对m i i 地址寄存器和m i i 数据寄存器的写操作被忽略( 忙标志位为高) 。读操作完成以后,s m i 复位忙标志位然后用从p h y 中读取数据更新m i i 数据寄存器。m d ciililf 1f 1 l 几日几f i l 几几n 几目几几n 几f lf 1 口几l 删:司! 同! ) | 。( 瑚) | 。o ( ) o | (l 黧l 盟e p h y a d d r e s s | r e g i 如豁蕊t u m i一i一d a t at op h yd a t af r o mp h y2 2 2 4s m i 时钟选择图2 9s m i 读操作时序m a c 启动管理写读操作时,s m i 时钟是个独立的时钟,它的来源是应用程序时钟( a h b 时钟) 。分频系数决定了在m i i 地址寄存器中设置的时钟范围。s m i 时钟选择范围如表2 2 所示。哈尔滨工程大学硕十学位论文量皇曼曼曼曼曼皇曼量曼曼曼量皇量皇量量舅皇舅曼皇曼皇曼皇虽曼曼曼曼量曼曼曼曼曼皇曼曼曼曼量量曼曼i i ;i 量曼鼍曼曼曼曼曼量舅量曼皇曼皇曼皇曼舅皇量皇量皇量皇皇曼量曼鼍表2 2s m i 时钟选择表s e l e c t i o na h bc l o c km d cc l o c k0 0 0 06 0 - 7 2m h za h bc l o c k 4 20 0 0 lr e s e r v e d0 0 1 02 0 - 3 5m h za h bc l o c k 160 0 1 l3 5 - 6 0 m h za h bc l o c k 2 60 1 0 0 ,0 1 0 1 ,0 1 1 0 ,0 1 1 1r e s e r v e d2 2 3 介质无关接口( m i i )介质无关接口定义了m a c 子层和用于数据传输在1 0 m b i t s 和1 0 0 m b i t s 的p h y 之间的相互连接。txc l k1t x d1 3 :0 t xr r:1 x - e n:s 田m 3 2r xc l ke x t e m a lor x d 3 :0 1pr xr rp h y至=rxd voc r sc o lm d c1,m d i o:图2 1 0s t m 3 2 f 1 0 7 与p h y 芯片连接示意图( 1 ) m i it xc l k :连续时钟用于给t x 数据传输提供时间参考。标称的频率是在1 0m b i t s 下为2 5 m h z ,在1 0 0m b i t s 下为2 5 m h z 。( 2 ) m i ir xc l k :连续时钟用于给r x 数据传输提供时间参考。标称的频率是在1 0m b i t s 下为2 5 m h z ,在1 0 0m b i t s 下为2 5 m h z 。2 2 4 精简m i i r m i ir m i i 规范减少了管脚的数量。根据i e e e8 0 2 3 u 标准,一个m i i 包括1 6 个引脚用于数据和控制,r m i i 则减少为7 个。2 2 4 1r m i i 时钟资源s t m 3 2 f 1 0 7 能够通过m c o 输出引脚提供5 0 m h z 时钟信号,这个时钟信号需要通1 6第2 章嵌入式w e b 服务器开发平台的构建过配置p l l 倍频获得。2 2 5m i i r m i i 选择图2 1 lr m i i 时钟m i i 或者r m i i 的选择通过配置a f i o m a p r 寄存器中的b i t 2 3 ( m i i r m i i s e l 位)来实现。当以太网控制器在复位状态下或者在开启时钟之前,应用程序不能设置m i i r m i i 模式。2 2 6m i i r m i i 外部时钟方案时钟方案要求同时支持m i i 和r m i i 。图2 1 2m i i r m i i 外部时钟方案1 7哈尔滨丁程大学硕十学位论文2 2 7 以太网功能实现m a c 子层执行下面的数据链路控制相关的步骤( 1 ) 数据封装( 传送和接收)( 2 ) 边界划界,帧同步( 3 ) 寻址( 处理源地址和目的地址)( 4 ) 错误检查( 5 ) 介质访问管理( 6 ) 介质分配( 冲突避免)( 7 ) 竞争解析( 冲突处理)m a c 子层有两种基本操作模式( 1 ) 半双工模式:工作站使用c s m a c d 算法争夺物理介质的使用。( 2 ) 全双工模式:同步传输和接收,当所以以下情形满足的时候没有竞争解析( 不用c s 删d 算法)丸物理介质容量支持同时传送和接收b 两个工作站恰好连接到l a nc 所有工作站配置在全双工模式操作下d m a 控制所有传输路径的处理。从系统内存中读取的以太网帧被d m a 压入f i f o队列,然后从f i f o 队列传递到m a c 核中。当最后一帧传递完,传递的状态信息从m a c核中读出来并传回d m a 。整个传递f i f o 队列有2 k b ”e ,f i f 0 填充数据数量可以由d m a 获得,使用a h b 接口可以将需要的数据传递到内存的字符数组中,反之可以将内存中的数据送入f i f o 队列。s t m 3 2 f 1 0 7 系列并没有附带物理层设备p h y ,需要外接p h y 才能连接到以太网,由于p h y 输入抖动要求,这里选用了太网芯片d p 8 3 8 4 8 。它符合m c u 输出抖动规范。2 3 本章小结本章首先简单介绍了硬件平台的核心s t m 3 2 f 1 0 7 r c ,然后给出了硬件平台各部分电路图,接着针对与嵌入式w e b 服务器密切相关的网络接口部分作了详细讲解,s t m 3 2 f 1 0 7 自带m a c 核,对简化系统设计起了至关重要的作用,并且该核心通过d m a与内部存储器连接,简化了软件对数据的处理。1 8第3 章嵌入式实时操作系统t t c o s i i 的移植第3 章嵌入式实时操作系统l - t c o s i i 的移植g c o s i i 是一款著名的源代码开放、可裁剪、移植方便、可固化的轻量级嵌入式实时多任务操作系统,由于其体积小巧、执行效率高、实时性能优秀、具有较高的可靠性与稳定性等优点,特别适用于小规模以及存储空间有限的嵌入式体统中i l9 1 。p c o s u特点如下:( 1 ) 开放源代码:源代码开放对于开发人员来说,能够更清楚的了解此操作系统的运行机制,以便使其更好地与自己的硬件平台兼容。( 2 ) 可移植性强:p c o s i i 的绝大部分源代码是使用标准的a n s i c 编写的,为了最大程度的提高可移植性,仅使用了最低限度的汇编语言编写与处理器硬件相关代码。目前为止,t t c o s i

温馨提示

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

评论

0/150

提交评论