用MSP430实现的嵌入式因特网终端设计
【摘 要】本文详细描述了用TI公司的MSP430单片机实现嵌入式因特网终端的设计,包括硬件和软件两大部分。MSP430微控制器控制以太网控制器CS8900A实现本地局域网的功能,通过TCP/IP协议提供与因特网进行连接的应用接口,使用该应用接口,可以建立新的任务或改变现有的任务,实现与因特网中其它终端间的通信。在本文中,给出了硬件原理图,说明了部分模块的工作流程。
【关键词】因特网;MSP430;终端;以太网;TCP/IP
1. 介绍
计算机通信系统尤其是因特网在日常生活中的作用越来越重要,并且呈加速发展的趋势。如今,上网不再是个人电脑和网络工作站的专利,很多用微控制器(或称单片机)控制的嵌入式系统也成为了因特网网络节点中的一员,通常,这种嵌入式系统可称为嵌入式因特网终端。试想,如果通过网页浏览器,能够完成对远处的微控制器控制,并能够接收到微控制器采集的信号,那将给人们的生活带来很大的便利和极大地推动生产力的发展。打个比方,如果通过办公室的一台连接到因特网的电脑和安装在家里的嵌入式控制器,人们就可以了解到家里或者发生的一切,那么家居防盗等一系列问题将会等到很好的解决。
MSP430是由于TI(Texas Instruments,美国德州仪器公司)开发的16位微处理器,其突出的特点是强调低功耗,非常适用于各种低功率要求的应用,有多个系列和型号。由于其性价比比较高,所以,被广泛应用于家居自动化,医疗设备,安防系统,楼宇控制系统等许多领域当中。本因特网终端设计方案中使用的MSP430F149是TI公司于2000年增加的MSP430F1X中的一员。
2. 协议基础
ISO(Internet Standard Organization,国际标准组织)于1981年提出了OSI(Open System Interconnect,开放系统互连)七层网络模型。七层网络模型的最大优点是将服务、接口和协议这三个概念明确地区分开来:服务说明某一层为上一层提供一些什么功能,接口说明上一层如何使用下层的服务,而协议涉及如何实现本层的服务。
因特网采用的四层网络模型是OSI七层网络模型的一个子集,其具体的四层:应用层、传输层、因特网层和网络层,图1为因特网的四层网络模型与OSI七层网络模型的对应关系图。因特网模型通过数据分段(Segment)中的序列号保证所有传输的数据可以在远端按照正常的次序进行重组,而且通过确认保证数据传输的完整性。
图1 OSI七层协议与因特网四层模型的对应关系
javascript:window.open(this.src);" style="cursor:pointer;"/>
2.1 以太网(Ethernet)[1]
以太网是目前用得最广泛的一种局域网,它在因特网四层网络模型当中,属于网络层。以太网网络中的每个节点具有相同的访问网络的权利,它们之间对网络占用是通过具有冲突检测的载波监听多路访问( CSMA/CD )的方法来实现的。数据采用曼彻斯特编码,网络中的连接一般采用双绞线或同轴电缆。以太网中每个节点具有一个48位、唯一编号的地址。每帧数据的最大长度为1518个字节,第一个48位为目标地址,第二个48位为数据源地址,然后是2个字节的数据帧类型值,在数据帧的最后,自动生成4个字节的循环冗余码校验(CRC)值,用于保证数据帧的完整性。
2.2传输控制协议TCP(Transmission Control Protocol)
TCP提供了一种可靠的数据流服务,尽管TCP是DARAP协议组中的一员,但它却有很大的独立性。它对下层网络协议只有最基本的要求,很容易在不同的网络上建成,因而非常流行。ISO/OSI运输层标准中的第四类TP-4就是以 TCP作为原型建立的。TCP可以在众多的网络上工作,可以提供虚拟电路服务和面向数据流的传输服务。用户数据可以有序而且可靠的传送。在一个分组可能发生丢失、破坏、重复、延迟或失序情况下,TCP服务可提供一种可靠的进程间通信机制,协议可以自动纠正各种差错。
2.3网际协议IP(Internet Protocol)
第三层最重要的协议是IP。它将多个网络联成一个互连网。IP的工作是将一个以上的报文处理网络联成一个网际网。IP的基本任务是通过网际网传送数据报,各个IP数据报之间是相互独立的。主机上的IP层基于数据链路层的服务向传输层提供服务。IP从源运输实体取得数据,通过它的数据链路层服务传给目的主机的IP层。网关通过下一网络数据报传到目的主机或下一网关。
2.4地址转换协议ARP(Address Resolution Protocol)
在TCP/IP网络环境下,每个主机分配的组位IP地址只是一种逻辑地址,这样在传送时必须转换成物理地址,ARP协议就是完成这一功能的。 ARP使主机可以找到同一物理网络中任一物理主机的物理地址,只需给出该主机的网际地址即可。可见,基本网络的物理编址对网络层服务是透明的。
2.5 其它协议
在因特网网络协议当中,还有其它相关的协议,如:反向地址转换协议RARP(Reverse Address Resolution Protocol)、用户数据报协议UDP(User Datagram Protocol)、网际控制报文协议ICMP(Internetwork control Message Protocol)、超文本传输协议(hypertext transfer protocol)等,它们在因特网的数据交换当中都有什么重要的作用,本文限于篇幅,不一一详细介绍。
3. 硬件设计[1]
本设计中所用到的两个重要组件为TI公司的微处理