新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ARM微处理器TCP/IP协议栈LwlP实现

基于ARM微处理器TCP/IP协议栈LwlP实现

作者:时间:2009-12-18来源:网络收藏

3 底层网络驱动的
底层网络驱动的框架Lw已经为我们了绝大部分(如图2所示),我们只需要在作者设计好的框架中完成与底层硬件相关的部分即可。即我们只需要与硬件相关的网卡初始化函数网络数据包发送函数和网络数据包接收函数。

本文引用地址:http://www.eepw.com.cn/article/152206.htm

本文所采用的底层网络芯片CS8900A是C IRRU SLO G IC公司生产的低功耗、性能优越的16位以太网控制器,功能强大。突出特点是使用灵活,其物理层接口、数据传输模式和工作模式等都能根据需要而动态调整,通过内部寄存器的设置来适应不同的应用环境。它的主要特点是符合IEEE 802.3以太网标准;片内带有4K字节的RAM来存储发送和接收数据;与主机之间的数据通讯方式有I/O模式、Memory模式和DMA模式,在电路设计时可根据具体情况灵活选择;带有传送、接收低通滤波的10Base2T连接端口;支持10Base2,10Base5和10Base2F的AU I接口;自动生成报头,自动进行CRC检验,冲突后自动重发;全双工和半双工可选模式。
CS8900A初始化部分的主要内容如下:
・软件复位,并检查复位完成标志是否置位;
・设定Memory工作模式,使其4K内存地址映射到主机内存中;
・设定临时使用的以太网物理地址,真实地址需要向权威机构申请;
・设定接收帧的类型,至少要能接收广播;
・确定数据的传送方向,一般设为全双工方式;
・中断使能允许;
・使能接收中断;
・确定CS8900A的中断管脚号,根据硬件线路使用情况来确定;
・接收发送使能。
其中需要说明的是由于通信非常频繁,在arm中接收发送数据采用中断模式占用资源太多,因此本文采用的是查询方式,也可以保证数据的基本通信。

CS8900A的数据发送基本流程如下:在收到由主机发来的数据报后,侦听网络线路。如果线路忙,它就等到线路空闲为止,否则,立即发送该数据帧。发送过程中,首先,它添加以太网帧头(包括先导字段和帧开始标志),然后,生成CRC校验码,最后,将此数据帧发送到以太网上。数据发送流程图如图3所示。

tcp/ip相关文章:tcp/ip是什么




评论


相关推荐

技术专区

关闭