六基于ARM的嵌入式系统硬件结构设计_第1页
六基于ARM的嵌入式系统硬件结构设计_第2页
六基于ARM的嵌入式系统硬件结构设计_第3页
六基于ARM的嵌入式系统硬件结构设计_第4页
六基于ARM的嵌入式系统硬件结构设计_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

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

文档简介

嵌入式系统设计与实例开发——ARM与C/OS-Ⅱ第六讲基于ARM的硬件系统结构设计中国矿业大学信电学院电子信息学系程健本节提要132546基于ARM的硬件系统体系结构存储器接口设计网络接口设计I/O接口设计人机交互接口设计其它通讯接口设计基于ARM的硬件设计主要介绍基于ARM7的嵌入式硬件开发平台的设计方法,包括结构、主要接口、存储器选用方案以及外设、显示等方面的内容。嵌入式硬件开发平台的体系结构外围存储器接口设计方法键盘、LCD等人机交互接口的设计触摸屏的设计以太网设计CAN总线设计SamsungS3C44B0XSamsungS3C44B0X微处理器是三星公司专为手持设备和一般应用提供的高性价比和高性能的微控制器解决方案,它使用ARM7TDMI核,工作在66MHZ。为了降低系统总成本和减少外围器件,这款芯片中还集成了下列部件:8KBCache、外部存储器控制器、LCD控制器、4个DMA通道、2通道UART、1个多主I2C总线控制器、1个IIS总线控制器,5通道PWM定时器及一个内部定时器、71个通用I/O口、8个外部中断源、实时时钟、8通道10位ADC等。基于ARM的嵌入式硬件平台体系结构基于ARM架构的32位微处理器SamsungS3C44B0X2MBNORFlash(BIOS)8MBSDRM(系统内存)16MBNANDFlash(硬盘)USB接口PDIUSBD12两个RS-232串行通信接口JTAG调试端口LCD显示键盘输入TCP/IP协议CANBUS芯片体系结构S3C44B0X存储系统的特征支持数据存储的大/小端选择(通过外部引脚和程序进行选择)地址空间:具有8个存储体,每个存储体可达32Mb,总共可达256MB。对所有存储体的访问大小均可进行改变(8位/16位/32位)8个存储体中,Bank0-Bank5可支持ROM、SRAM;Bank6、Bank7可支持ROM、SRAM和FP/EDO/SDRAM等。复位后的S3C44B0X的存储器映射表

32MB

32MB

32MB

32MB

32MB

28MB

256MB

SA[27:0]

可存取

区域

特殊功能

寄存器(4MB)

SROM

(nGCS0)

SROM

(nGCS1)

SROM

(nGCS2)

SROM

(nGCS3)

SROM

(nGCS4)

SROM

(nGCS5)

SROM/DRAM/SDRAM

(nGCS6)

SROM/DRAM/SDRAM

(nGCS7)0x1000_0000

0x0e00_0000

0x0c00_0000

0x0e00_0000

0x0800_0000

0x0600_0000

0x0400_0000

0x0200_0000

0x01c0_0000

0x0000_0000

2MB/4MB/8MB/16MB/32MB2MB/4MB/8MB/16MB/32MB系统的存储空间分配Bank0:1片2MBNORFlash,放置系统引导程序,系统上电复位后,PC指针自动指向Bank0的第一个单元,进行系统自举。。Bank1:K9F2808(三星16MbyteFlash),非线性寻址。具体的时序可以参考K9F2808的datasheetBank2:PDIUSBD12。USB设备端接口芯片,占用系统外部中断0。8位数据总线。Bank3、Bank4未接设备。可以供扩展使用Bank5:RTL8019AS,ISA总线兼容的10M以太网(PHY+MAC层)控制芯片。占用系统外部中断1,16位数据总线;扩展IO口Bank6:SDRAM,起始地址为0xC000000。在SDRAM中,前512Kbyte的空间划分出来,作为系统的LCD显示缓冲区使用(更新其中的数据,就可以更新LCD的显示)。系统的程序存储空间从0xC080000开始。也就是,引导系统的时候,需要把system.bin文件复制到0xC080000开始的地址空间,把PC指针指向0xC080000。Bank7:未使用。可以扩展另一片SDRAM,或者其他的外设。系统的同步串行口(SIO),连接着触摸屏控制芯片FM7843(与ADS7843完全兼容);CAN总线控制芯片MCP2510;Max504(D/A);键盘和LED扫描芯片ZLG7289。在同步串行口上,还可以扩展其他的芯片。通过IO口控制设备的片选信号(CS)来防止设备的冲突。注:系统的外部总线主要有16位和8位。原理图设计的时候需要注意16总线和8位总线的区别。在连接不同总线宽度的外设,地址是否需要依次向后错位。本节提要132546基于ARM的的硬件系统体体系结构存储器接口设设计网络接口设计计I/O接口设设计人机交互接口口设计其它通讯接口口设计S3C44B0X与FLASH的连连接(HalfWord方式)使用Bank0上的1片片2MBflash来来放置系统BIOS,系系统上电以后后,PC指针针自动指向Bank0的的第一个单元元,开始进行行系统自举。。系统自举完完成以后,便便从硬盘中将将系统文件和和用户应用程程序复制到SDRAM内内存中执行。。Bank1上上接16MNANDFlash,当做系统统硬盘使用,,可以构造文文件系统,存存放海量数据据。用SDRAM当作系统内内存,只有Bank6/Bank7能支持SDRAM,所所以将SDRAM接在Bank6上上。如果同时时使用Bank6/Bank7,则则要求连接相相同容量的存存储器,而且且其地址空间间在物理上是是连续的。存储器接口设设计NAND和NOR——性NOR和NAND是现在在市场上两种种主要的非易易失闪存技术术NOR的读速速度比NAND稍快一些些NAND的写写入速度比NOR快很多多NAND的擦擦除速度远比比NOR的快快大多数写入操操作需要先进进行擦除操作作NAND的擦擦除单元更小小,相应的擦擦除电路更少少接口差别NORflash带有有SRAM接接口,线性寻寻址,可以很很容易地存取取其内部的每每一个字节NANDflash使使用复用接口口和控制IO多次寻址存存取数据NAND读和和写操作采用用512字节节的块,这一一点有点像硬硬盘管理此类类操作易于取取代硬盘等类类似的块设备备容量和成本NANDflash生生产过程更为为简单,成本本低常见的NORflash为128KB~16MB,而NANDflash通通常有8~128MBNOR主要应应用在代码存存储介质中,,NAND适适合于数据存存储NAND在CompactFlash、SecureDigital、PCCards和MMC存存储卡市场上上所占份额最最大可靠性和耐用用性在NAND中中每块的最大大擦写次数是是100万次次,而NOR的擦写次数数是10万次次位交换的问题题NANDflash中更突出,,需要ECC纠错NANDflash中中坏块随机分分布,需要通通过软件标定定——产品量产的问问题关于BOOTROMBank0::系统的启动动ROM(FlashRom)。。在系统复位位的时候,处处理器的PC(程序计数数器)指针指指向0x0地地址。在Bank0的起起始地址的程程序,就是系系统的初始化化程序。此程程序的主要任任务是:1、管理处理理器的中断服服务程序处理器的中断断是从0x0地址开始,,引导ROM负责把这一一部分的中断断映射到另一一个区域,以以便系统处理理。具体的做做法,可以参参考44binit.s里面的代码码。(这部分分代码是三星星主页可以提提供,它把系系统的中断,,映射到了不不同的指针所所指向的地址址空间(主要要就是系统RAM的空间间))。2、初始化硬硬件平台,配配置其他的BankS3C44B0X的Bank0是通通过外部的一一个管脚提供供的上拉、下下拉电阻来配配置的。主要要包括:数据据位数(8位位、16位、、32位),,数据格式((大端、小端端)。而其他他的Bank的配置,以以及读写周期期等信息是靠靠Bank0内部的代码码配置相应的的寄存器来实实现的。同时时,系统的引引导Rom也也负责配置系系统的其他的的一些寄存器器,比如,系系统的PLL(锁频环))配置,系统统的IO口等等一些端口功功能的配置等等等。3、系统自动动检测引导Rom负负责检测系统统的启动所必必须的外设是是否正常。主主要是系统的的SDRAM的检测。4、系统的软软件设置,更更新系统(system.bin))用户可以在系系统启动的时时候,按任意意键,进入系系统的软件设设置状态。通通过引导Rom设置或者者查看系统的的一些软件信信息。包括::通过开启USB端口;;更新系统文文件system.bin;LCD显示测试;;演示程序的的装载测试;;键盘测试;;触摸屏的坐坐标校准;触触摸屏测试;;以太网地址址的设置等本节提要132546基于ARM的的硬件系统体体系结构存储器接口设设计网络接口设I/O系统设设计人机交互接口口设计其它通讯接口口设计I/O子系统统的层次模型型I/O子系统统:I/O设设备、相关的的设备驱动程程序和I/O子系统组成成嵌入式I/O子系统。。I/O子系统统的目标是对对RTOS和和应用程序员员隐藏设备特特定的信息,,并且对系统统的外围I/O设备提供供一个统一的的访问方法。。从不同角度看看I/O系统统从系统软件开开发者角度看看,I/O操作意意味着与设备备的通信、对对设备编程初初始化和请示示执行设备与与系统之间的的实际数据传传输以及操作作完成后通知知请求者。系系统软件工程程师必须理解解设备的物理理特性,如寄寄存器的定义义和设备的访访问方法。从RTOS的的角度看,I/O操作意意味着对I/O请求定位位正确的设备备,对设备定定位正确的设设备驱动程序序,并解决对对设备驱动程程序的请求。。有时要求RTOS保证证对设备的同同步访问。RTOS必须须进行抽象,,对应用程序序员隐含设备备的特性。从应用程序员员角度看,目标是找到一一个简单、统统一和精练的的方法与系统统中出现的所所有类型的设设备。I/O接口的的编址方式———端口映射射1)I/O接接口独立编址址——端口映映射方式这种编址方式式是将存储器器地址空间和和I/O接口口地址空间分分开设置,互互不影响。设设有专门的输输入指令(IN)和输出出指令(OUT)来完成成I/O操作作。主要优点:内存地址空间间与I/O接接口地址空间间分开,互不不影响,译码码电路较简单单,并设有专专门的I/O指令,所以以编程序易于于区分,且执执行时间短,,快速性好。。缺点:只用I/O指指令访问I/O端口,功功能有限且要要采用专用I/O周期和和专用I/O控制线,使使微处理器复复杂化。I/O接口的的编址方式———内存映射射1)2)I/O接口与存存储器统一编编址方式———内存映射这种编址方式式不区分存储储器地址空间间和I/O接接口地址空间间,把所有的的I/O接口口的端口都当当作是存储器器的一个单元元对待,每个个接口芯片都都安排一个或或几个与存储储器统一编号号的地址号。。也不设专门门的输入/输输出指令,所所有传送和访访问存储器的的指令都可用用来对I/O接口操作。。主要优点:访问内存的指指令都可用于于I/O操作作,数据处理理功能强;同同时I/O接接口可与存储储器部分共用用译码和控制制电路。缺点:一是I/O接接口要占用存存储器地址空空间的一部分分;二是因不不用专门的I/O指令,,程序中较难难区分I/O操作。DMAI/ODMA允许设设备直接访问问内存而不用用包含处理器器,在数据传传输操作开始始之前,处理理器设置DMA控制器,,在数据传输输期间,读写写操作均不通通过处理器。。DMA传输速速度取决于I/O设备的的传输速度、、内存设备的的速度和DMA控制器的的速度。通过指定源地地址、目的内内存地址和传传输到DMA控制器长度度,处理器建建立传输操作作。I/O接口设设计I/O接口电电路也简称接接口电路。它它是主机和外外围设备之间间交换信息的的连接部件((电路)。它它在主机和外外围设备之间间的信息交换换中起着桥梁梁和纽带作用用。设置接口口电路的必要要性:a)解决CPU和外围设设备之间的时时序配合和通通信联络问题题。b)解决CPU和外围设设备之间的数数据格式转换换和匹配问题题。c)解决CPU的负载能能力和外围设设备端口选择择问题。S3C44B0X的I/O接口ARM系统完完成I/O功功能的标准方方法是使用存存储器映射I/O。这种种方法使用特特定的存储器器地址。当从从这些地址加加载或向这些些地址存储时时,它们提供供I/O功能能。典型情况况下,从存储储器映射I/O地址加载载用于输入,,而向存储器器映射I/O地址存储用用于输出。S3C44B0X有71个多功能能输入\输出出管脚,构成成了7组I/O接口:两个9位的输输入/输出接接口(E和F)两个8位的输输入/输出接接口(D和G)一个16位的的输入/输出出接口(C))一个10位的的输出接口((A)一个11位的的输出接口((B)本节提要132546基于ARM的的硬件系统体体系结构存储器接口设设计网络接口设计计I/O接口设设计人机交互接口口设计其它通讯接口口设计嵌入式开发板板与PC机的的串行通讯嵌入式开发板板和PC机的的通讯电缆可可以按照如图图所示的方式式连接。键盘接口设计计键盘模块可能能用来输入数数字型数据或或者选择控制制设备的操作作模式。键盘有两种方方案:一是采采用现有的一一些芯片实现现键盘扫描;;再就是用软软件实现键盘盘扫描。嵌入入式控制器的的功能很强,,可能允分利利用这一资源源。一个瞬时接触触开关(按钮钮)放置在每每一行与线一一列的交叉点点。矩阵所需需的键的数目目显然根据应应用程序而不不同。每一行行由一个输出出端口的一位位驱动,而每每一列由一个个电阻器上拉拉且供给输入入端口一位。。键盘扫描阵列列键盘扫描过程程就是让微处处理器按有规规律的时间间间隔查看键盘盘矩阵,以确确定是否有键键被按下。每每个键被分配配一个称为扫扫描码的唯一一标识符。应应用程序利用用该扫描码,,根据按下的的键来判定应应该采取什么么行动。消抖算法:组合键处理键盘扫描方法法LCD接口设设计LCD显示模模块液晶显示是一一种被动的显显示,它不能能发光,只能能使用周围环环境的光。它它显示图案或或字符只需很很小能量。液液晶显示所用用的液晶材料料是一种兼有有液态和固体体双重性质的的有机物,它它的棒状结构构在液晶盒内内一般平行排排列,但在电电场作用下能能改变其排列列方向。LCD的背光光:EL(场致发发光):2000-3000小时和LED光源源:字符模式式,50000小时LCD的显示示方式反射型LCD:底偏光片片后面加了一一块反射板,,它一般在户户外和光线良良好的办公室室使用。透射型LCD:底偏光片片是透射偏光光片,它需要要连续使用背背光源,一般般在光线差的的环境使用。。透反射型LCD:是处于于以上两者之之间,底偏光光片能部分反反光,一般也也带背光源,,光线好的时时候,可关掉掉背光源;光光线差时,可可点亮背光源源使用LCD。反射型LCD的结构LCD通常由由两种方式,,一种是带有有驱动芯片的的LCD模块块,基本上属属于半成品一些新型的嵌嵌入式处理器器也可以直接接使用芯片上上的内置LCD控制器来来构造显示模模块,比如::s3c44b0可以支支持STN的的彩色/灰度度/单色三种种模式,灰度度模式下可支支持4级灰度度和16级灰灰度,彩色模模式下最多支支持256色色,LCD的的实际尺寸可可支持到640X480。LCD的驱动动方式嵌入式处理器器与LCD的的连接嵌入式处理器器LCD模块数据总线寄存器选择使能信号有LCD控制制器的嵌入式式处理器LCDLCD控制信信号线从系统结构上上来讲,由于于显示器模块块中已经有显显示存储器。。显存中的每每一个单元对对应LCD上上的一个点,,只要显存中中的内容改变变,显示结果果便进行刷新新。于是便存存在两种刷新新:1.直接根据据系统要求对对显存进行修修改,一种是是只需修改相相应的局部就就可以,不需需要判断覆盖盖等;另一种种就是有覆盖盖问题,计算算起来比较复复杂,而且每每做一点小的的屏幕改变就就进行刷新,,将增加系统统负担。2.专门开开辟显示内存存,在需要刷刷新时候由程程序进行显示示更新。这样样,不但可以以减轻总线负负荷,而且也也比较合理,,在有需要的的时候进行统统一的显示更更新,界面也也可以比较美美观,不致由由于无法预料料的刷新动作作导致显示界界面闪烁。LCD模块块的显显示控控制前后台台双重重显示示缓存存的显显示模模块结结构触摸屏屏接口口设计计触摸屏屏的分分类电阻式式触摸摸屏表面声声波触触摸屏屏红外式式触摸摸屏电容式式触摸摸屏电阻式式触摸摸屏电阻技技术触触摸屏屏是一一种对对外界界完全全隔离离的工工作环环境,,故不不怕灰灰尘、、水汽汽和油油污,,可以以用任任何物物体来来触摸摸,比比较适适合工工业控控制领领域及及办公公室内内有限限人的的使用用。分为四四线电电阻和和五线线电阻阻触摸摸屏四线电电阻触触摸屏屏原理理测量原原理在触摸摸点X、Y坐标标的测测量过过程中中,测测量电电压与与测量量点的的等效效电路路图所所示,,图中中P为为测量量点XVYY触摸屏屏芯片片FM(ADS)7843的特特点实现触触摸屏屏的驱驱动选选择控控制((X、、Y通通道))对于输输入电电压或或附加加电压压进行行AD转换换同步串串行接接口最大转转换速速率125KHz可编程程控制制8位位或者者12位转转换模模式工作电两个附附加的的输入入端口口FM7843与与ARM的的连接接AD7843的的工作作时序序同步串串口((SIO))向ADS7843发送送控制制字转换完完成后后从ADS7843串口口读出出电压压转换换值A/D转换换时序序(每每次转转换需需要24个个时钟钟周期期)触摸屏屏的驱驱动#defineADS7843_CTRL_START0x80#defineADS7843_GET_X0x50#defineADS7843_GET_Y0x10#defineADS7843_CTRL_12MODE0x0#defineADS7843_CTRL_8MODE0x8#defineADS7843_CTRL_SER0x4#defineADS7843_CTRL_DFR0x0#defineADS7843_CTRL_DISPWD0x3//Disablepowerdown#defineADS7843_CTRL_ENPWD0x0//enablepowerdown#defineADS7843_PIN_CS(1<<6)//GPF6#defineADS7843_PIN_PEN(1<<5)//GPG5//#defineADS7843_PIN_BUSY(1<<6)/////////触摸摸屏动动作////////#defineTCHSCR_ACTION_NULL0#defineTCHSCR_ACTION_CLICK1//触摸摸屏单单击#defineTCHSCR_ACTION_DBCLICK2//触摸摸屏双双击#defineTCHSCR_ACTION_DOWN3//触触摸屏屏按下下#defineTCHSCR_ACTION_UP4//触摸摸屏抬抬起#defineTCHSCR_ACTION_MOVE5//触触摸屏屏移动动#defineTCHSCR_IsPenNotDown()(rPDATG&ADS7843_PIN_PEN)voidTchScr_init(void);voidTchScr_GetScrXY(int*x,int*y);函数TchScrGetScrXY(int*x,int*y)的的结构构本节提提要132546基于ARM的硬硬件系系统体体系结结构存储器器接口口设计计网络接接口设设计I/O接口口设计计人机交交互接接口设设计其它通通讯接接口设设计以太网网接口口的基基本知知识1、传传输编编码曼彻斯斯特编编码差分曼曼彻斯斯特编编码以太网网协议议以太网网MAC层层物理理传输输帧((IEEE802.3))PRSDDASATYPEDATAPADFCS56位8位48位48位16位不超过1500字节可选32位PR::同同步位位,收收发双双方的的时钟钟同步步,也也指明明传输输的速速率((10M、、100M)SD:分隔位位,表表示下下面跟跟着的的是真真正的的数据据,而而不是是同步步时钟钟DA:目目的地址址,以以太网网的地地址为为48位地地址。。如果果为都都为F,则则是广广播地地址SA:源地址址,48位位,表表明该该帧的的数据据是哪哪个网网卡发发的,即发发送端端网卡卡地址址TYPE::类型型字段段,表表明该该帧的的数据据是什什么类类型。。如::0800H表表示示数据据为IP包,0806H表示示数据据为ARP包,,814CH是是SNMP包,,8137H为为IPX/SPX包包DATA::数据据段,,该段段数据据不能能超过过1500字节节。PAD:填填充充位。。以太太网帧帧传输输的数数据包包最小小不能能小于于60字节节,当当数数据段段不足46字节节时,,后面面补000000.....(当当然也也可以以补其其它值值)FCS:32位CRC数据据校验验位。。该校校验由由网卡卡自动动完成成以太网网的数数据传传输特特点PR,SD,PAD,FCS这几几个数数据段段是由由网卡卡自动动产生生的;;只需需要理理解DA、、SA、TYPE、、DATA四个段段的内内容所有数数据位位的传传输由由低位位开始始(传传输的的位流流使用用曼彻彻斯特特编码码)以太网网的冲冲突退退避算算法是是由硬硬件自自动执执行的的DA+SA+TYPE+DATA+PAD最小小为60字字节,最大大为1514字字节以太网网卡可可以接接收三三种地地址的的数据据,一一个是是广播播地位位,一一个是是多播播地址址(在在嵌入入式的的环境境中一一般不不用),一一个是是它自自已的的地址址任何两两个网网卡的的物理理地址址都是是不一一样的的,是是世界界上唯唯一的的,网网卡地地址由由专门门机构构分配配。嵌入式式的以以太网网方案案嵌入式式处理理器++网卡卡芯片片(RTL8019)对嵌入入式处处理器器没有有特殊殊要求求,通通用性性强处理器器和网网络数数据交交换通通过外外部总总线,,速度度慢,,不适适合于于100M网络络带有有以以太太网网络络接接口口的的嵌嵌入入式式处处理理器器处理理器器面面向向网网络络应应用用处理理器器和和网网络络数数据据交交换换通通过过内内部部总总线线,,速速度度快快RTL8019的的原原理理框框图图嵌入入式式网网络络接接口口的的特特点点与常常规规的的网网卡卡设设计计思思路路不不同同的的是是,,在在嵌嵌入入式式系系统统中中,,系系统统的的精精简简一一直直是是个个主主要要的的原原则则。。RTL8019AS作作为为网网卡卡,,时时需需要要一一片片EEPROM作作为为配配置置存存储储器器,,来来确确定定通通讯讯的的端端口口地地址址,,中中断断地地址址,,网网卡卡的的物物理理地地址址,,工工作作模模式式,,制制造造厂厂商商等等信信息息;;而在在嵌嵌入入式式系系统统中中,,可可以以使使用用RTL8019AS的的默默认认配配置置和和一一些些管管脚脚作作为为网网卡卡的的初初始始化化方方法法。。这这样样可可以以节节省省配配置置存存储储器器,,减减小小嵌嵌入入式式硬硬件件平平台台的的体体积积。。基于于RTL8019的的嵌嵌入入式式以以太太网网设设计计1RTL8019AS的的初初始始化化RTL8019支支持持即即插插即即用用模模式式和和非非即即插插即即用用模模式式。。在在嵌嵌入入式式系系统统中中,,网网卡卡的的外外设设通通常常是是不不经经常常插插拔拔的的,,所所以以,,为为了了系系统统的的精精简简,,配配置置RTL8019为为非非即即插插即即用用模模式式。。有有着着固固定定的的中中断断,,有有着着固固定定的的端端口口地地址址,,假假设设是是端端口口是是0x300((这这里里的的端端口口是是相相对对于于ISA总总线线来来说说的的端端口口,,对对于于ARM的的总总线线,,需需要要重重新新计计算算地地址址))。。这这些些配配置置可可以以通通过过RTL8019的的外外部部管管脚脚,,在在系系统统上上电电复复位位的的时时候候,,自自动动配配置置起起来来。。关于于RTL8019的的RAMRTL8019含含有有16K字字节节的的RAM,,地地址址为为0x4000-0x7fff(指指的的是是RTL8019内内部部的的存存储储地地址址,,是是RTL8019工工作作用用的的存存储储器器,,可可以以通通过过远远程程DMA访访问问)),,每每256个个字字节节称称为为一一页页,,共共有有64页页。。页页的的地地址址就就是是地地址址的的高高8位位,,页页地地址址为为0x40--0x7f。。这这16k的的ram的的一一部部分分用用来来存存放放接接收收的的数数据据包包,,一一部部分分用用来来存存储储待待发发送送的的数数据据包包2通通过过RTL8019AS发发送送数数据据作为为一一个个集集成成的的以以太太网网芯芯片片,,数数据据的的发发送送校校验验,,总总线线数数据据包包的的碰碰撞撞检检测测与与避避免免是是由由芯芯片片自自己己完完成成的的。。我我们们只只需需要要配配置置发发送送数数据据的的物物理理层层地地址址的的源源地地址址、、目目的的地地址址、、数数据据包包类类型型以以及及发发送送的的数数据据就就可可以以了了。。3、通过过RTL8019AS接收数数据在RTL8019的初初始化程程序中已已经设置置好了接接收缓冲冲区的位位置,并并且配置置好了中中断的模模式。当当有一个个正确的的数据包包到达的的时候,,RTL8019会产产生一个个中断信信号,在在ARM中断处处理程序序中,接接收数据据。数据的接接收比较较简单,,即通过过远端DMA把把数据从从RTL8019的RAM空空间读回回ARM中处理理。TCP/IP协协议的的层次应用层(Application)BSD套接字(BSDSockets)传输层(Transport)TCP、UDP网络层(Network)IP、ARP、ICMP、IGMP数据链路层(DataLink)IEEE802.3EthernetMAC物理层(Physical)嵌入式以以太网中中主要处处理的协协议ARP(AddressResolationProtocol)地地址解析析协议ICMP(InternetControlMessagesProtocol)网网络控制制报文协协议IP(InternetProtocol)网网际协协议TCP(TransferControlProtocol)传传输输控制协协议UDP(UserDatagramProtocol)用用户数数据包协协议ARP地地址解析析协议网络层用用32bit的IP地址来来标识不不同的主主机,而而链路层层使用48bit的的物理((MAC)地址址来标识识不同的的以太网网接口。。只知道道目的主主机的IP地址址并不能能发送数数据帧给给它,必必须知道道目的主主机网络络接口的的MAC地址才才能发送送数据帧帧。ARP的的功能是是实现从从IP地地址到对对应物理理地址的的转换。。源源主机发发送一份份包含目目的主机机IP地地址的ARP请请求数据据帧给网网上的每每个主机机,称作作ARP广播,,目的主主机的ARP收收到这份份广播报报文后,,识别出出这是发发送端在在寻问它它的IP地址,,于是发发送一个个包含目目的主机机IP地地址及对对应的MAC地地址的ARP回回答给源源主机。。每台主机机上都有有一个ARP高高速缓存存,存放放最近的的IP地地址到硬硬件地址址之间的的映射记记录。通通常每一一项的生生存时间间为20分钟ICMP网络控制报文文协议IP层的的附属协协议,IP层用用它来与与其他主主机或路路由器交交换错误误报文和和其他重重要控制制信息。。ICMP报文是是在IP数据包包内部被被传输的的。两个实用用的网络络诊断工工具,Ping和Traceroute(Tracert),,都是利利用该协协议工作作的。IP网际际协议IP工作作在网络络层,是是TCP/IP协议族族中最为为核心的的协议。。所有的的TCP,UDP,ICMP以及IGMP数据都都以IP数据包包格式传传输。IP数据据包最长长可达65535字节节,其中中报头占占32bit的数目目。包含含各32bit的源源IP地地址和目目的IP地址。。在嵌入入式应用用中,简简化设计计,IP数据包包长度等等于数据据链路层层的数据据长度。。TCP传传输控制制协议TCP是是一个面面向连接接的可靠靠的传输输层协议议。TCP为两台主机提供供高可靠靠性的端端到端数数据通信信。主要要包括:发送方把把应用程程序交给给它的数数据分成成合适的的小块,,并添加加附加信信息(TCP头头),包包括顺序序号,源源、目的的端口,,控制、、纠错信信息等字字段,称称为TCP数据据包。并并将TCP数据据包交给给下面的的网络层层处理。。接受方确确认接收收到的TCP数数据包,,重组并并将数据据送往高高层。UDP协协议UDP是是一种无无连接不不可靠的的传输层层协议。。把应用程程序传来来的数据据加上UDP头头(包括括端口号号,段长长等字段段),作作为UDP数据据包发送送出去,,但是并并不保证证它们能能到达目目的地。。可靠性性由应用用层来提提供。就就象发送送一封写写有地址址的一般般信件,,却不保保证它能能到达。。关于端口口TCP和和UDP采用16位的的端口号号来识别上上层的TCP用用户,即即上层应应用协议议如FTP,TELNET等等。常见的TCP/IP服服务都用用1-255之之间的端端口号。。例如FTP服服务的TCP端端口号都都是21,Telnet服务务的TCP端口口号都是是23256--1023之间间的端口口号通常常都是提提供一些些特定的的Unix服务务TCP/IP临临时端口口分配1024-5000之之间的端端口号基于ARM和uCOS-II的TCP/IP协议议向ARM和uC/OS移植一一个TCP/IP协议议栈采用uC/OS自带的的TCP/IP协议栈栈BSD套套接字(BSDSockets)BSDSockets使用用的最广广泛的网网络程序序编程方方法,主主要用于于应用程程序的编编写,用用于网络络上主机机与主机机之间的的相互通通信UNIX,Linux,VxWorks均均支持BSDSockets,Windows的Winsock基基本上是是来自BSDSocketsSocket分分为StreamSockets和DataSocketsStreamSockets是可可靠性的的双向数数据传输输,使用用TCP协议DataSockets是是不可靠靠连接,,使用UDP协协议套接字的的使用UDP服服务器端端和一个个UDP客户端端通信的的程序过过程创建一个个SocketsFd=socket(AF_INET,SOCK_DGRAM,0)把Socket和本机机的IP,UDP口绑绑定bind(sFd,(structsockaddr*)&serverAddr,sockAddrSize)循环等待待,接收收(recvfrom)或者发发送(sendfrom)信信息关闭Socket,通通信终止止close(sFd)本节提要要132546基于ARM的硬硬件系统统体系结结构存储器接接口设计计网络接口口设计I/O接接口设计计人机交互互接口设设计其它通讯讯接口设设计CAN总总线

温馨提示

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

评论

0/150

提交评论