单片机TCP IP协议栈实现的原理(1)


对已TCP IP协议栈,我们已经说了很多关于它的原理相关的知识了。但是只有原理是不够的,在这方面我们将要举出一个实际操作实例为大家讲解,那么首先我们来看一下有关于单片机TCP/IP就是在单片机上运行的TCP IP协议栈。由于嵌入式联网设备越来越多,需要在嵌入式设备上实现TCP IP协议栈,但是嵌入式设备不同于PC机,它们一般采用MCU也就是单片机而不是CPU作为核心处理器。这就需要在单片机上实现TCP IP协议栈。对于高端的32位单片机,由于其性能已经接近于低端PC机CPU(例如奔腾II系列),所以和在PC上实现TCP IP协议栈没有多大区别;这里主要讲述低端8位(例如51单片机)、16位单片机TCP IP协议栈。

单机片TCP IP协议栈实现的原理

单片机TCP/IP的特点

在单片机上实现TCP/IP与在PC机上实现TCP/IP是有所不同的,它的特点是:

1. 速度慢:12M晶振的51单片机的最快网络传送速度为25KB/s。其中的关键在于TCP/IP需要对传送的每个字节进行校验和计算,以及必要的拷贝。这样51单片机的处理速度就不够了。为了提高单片机TCP/IP的速度一般的方法是要对协议栈进行精简。

2. 程序存储空间和外部RAM空间不大:一般的单片机的最大程序和数据空间为64KB。TCP IP协议一般需要对发送的数据进行缓存,而一个最大的数据包就有1500B左右,当网络速度很大的时候内存消耗将很大。对于非嵌入式TCP IP协议栈,64KB的程序和数据空间是不够的。

3. 单片机体系结构:51单片机是8位机,所以对于需要完成同一个数据操作,32位的PC机可能只需要10条指令,而51单片机可能需要几百条指令。


相关内容