欢迎来到天天文库
浏览记录
ID:10336091
大小:68.00 KB
页数:8页
时间:2018-07-06
《基于sx单片机实现webserver和网络协议栈》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于SX单片机实现WebServer和网络协议栈
2、第12.主要芯片介绍 (1)SX52BD100 SX52BD100是UBI公司生产的一款RISC指令集的单片机,片上带有4K×16位的Flash存储器和262×8位的RAM。由于采用CPU并行流水线方式及单时钟周期指令,在100MHz晶振驱动下指令执行速度可达100MIPS。该单片机的最大特点就是虚拟外设功能,即通过软件对I/O口进行灵活的配置,CPU执行虚拟软件模块就可以驱动普通的I/O口来模拟外设的功能,比如UART、SPI、IIC和FSK等。当然,令人惊奇的是,SX52BD100可以通过虚拟外设功能来运行网络协议栈
3、,例如TCP、IP、HTTP以及SMTP等。 (2)RTL8019AS RTL8019AS是RealTek公司出品的一种全双工以太网控制器。它自带16KB的SRAM,工作在EtherII和IEEE802.3、10Base5、10Base2、10BaseT下,与NE2000兼容。 (3)24LC256 24LC256是Microchip公司生产的一种串行32KB的E2PROM存储器,采用CMOS工艺,通过2根数据线和外界通信,兼容I2C总线接口,可设为硬件写保护,10万次的擦写,200年以上的数据保护。3.工作流程和软件设计500)this.style.ouseg(t
4、his)"> RJ45为此系统与局域网的接口。由于大部分局域网都采用以太网,这里的RTL8019AS就是处理以太网协议(IEEE802.3)的。数据的流向为:请求信息从局域网中来,通过RJ45送到RTL8019AS,处理后的数据包送入SX52BD100协议栈,由协议栈对数据包进行解析,得到原始请求信息。请求信息再经过SX52BD100的处理,产生回复信息。回复信息到局域网的过程与上面正好相反。 整个系统的软件流程如图2所示。 图1中的E2PROM24LC256用来存储P协议(Inter互联网控制报文协议)以及IGMP协议(Inter组管理协议)。这里主要讨论IP协议。
5、 (3)传输层主要为两台主机上的应用程序提供端到端的通信。TCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。 (4)应用层负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些应用: ①HTTP超文本传输控制协议; ②TEL远程登录; ③FTP文件传输协议; ④SMTP简单邮件传送协议; ⑤SNMP简单网络管理协议。 这里主要讨论HTTP协议。 因为数据链
6、路层主要是网络接口卡及驱动,由RTL8019AS来实现,所以下面讨论网络层、传输层和应用层协议栈的实现。1.网络层 (1)IP协议 IP是TCP/IP协议族中最为核心的协议。Inter所有的数据都以IP数据报格式传输。IP协议最大的特点是提供不可靠的和无连接的数据包传送服务。 不可靠(unreliable)的意思是它不能保证IP数据报能成功地到达目的地。IP仅提供最好的传输服务。若发生某种错误时,如某个路由器暂时用完了缓冲区,IP有一个简单的错误处理算法:丢弃该数据报,然后发送ICMP(Inter控制报文协议)消息报给信源端。任何要求的可靠性必须由上层来提供(如TCP
7、)。 无连接(connectionless)的意思是IP并不维护任何关于后续数据报的状态信息。每个数据报的处理是相互独立的。这也说明,IP数据报可以不按发送顺序接收。如果一信源向相同的信宿发送两个连续的数据报(先是A,然后是B),每个数据报都是独立地进行路由选择,可能选择不同的路线,因此,B可能在A到达之前先到达。 IP数据包的格式如图4所示。 500)this.style.ouseg(this)"> 版本是指IP协议的版本号。目前的协议版本号是4,因此IP也称作IPV4。 首部长度指的是首部占32bit字的数目。由于它是一个4位字段,因此首部最长为60个字节。在这
8、里,IP数据报字段的值是5。 服务类型字段包括一个3位的优先权子字段(现在已被忽略)、4位的TOS子字段和1位未用位但必须置0。4bit的TOS分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。4bit中只能置其中1bit。如果所有4bit均为0,那么就意味着是一般服务。 总长度字段是指整个IP数据报的长度,以字节为单位。利用首部长度字段和总长度字段,就可以知道IP数据报中数据内容的起始位置和长度。 标识字段唯一地标识主机发送的每一份数据报。 标志字段用来指定目的地址是一个完整的主机地址还是一个网络地址
此文档下载收益归作者所有