当前位置:主页 > 毕业论文 >

以太网接口驱动的设计与实现

请输入课题关键词,搜索相关范文

文档下载

网盘链接 https://pan.baidu.com/s/16WL-FZVgYo10JbbiyiEY0g

提取码: as7h


部分内容展示

随着互联网技术的快速发展,网络控制已经逐渐开始取代传统的 RS-485,CAN等总线的各种集散控制系统,它采用统一的 TCP/IP 协议,从而避免了不同的协议之间通信障碍的困扰,可以直接与局域网中的计算机相连而不需要其他的设备,方便数据的传输与共享。本文对以太网接口驱动进行了设计,本文主要分析了国内外工业以太网的研究方案,在查阅和研究了大量相关资料的基础上根据实际情况实现了将低端 MCU 和常用的网络控制芯片相结合起来构建嵌入式以太网系统的方案。在充分学习和理解 MCU 以及网络控制芯片后,对系统整体框架及相关的软硬件设计进行了具体的分析,并详细分析了网络控制芯片的驱动程序和低端MCU 嵌入 TCP/IP 协议栈的设计,设计出最小的系统来实现工业现场数据的采集、监控和传输以及发送相应的控制信号的功能,具有价格低廉、功能丰富、超便携性、实用性强的优良性能。

关键词:以太网;接口驱动;C8051F340;更多范文
以太网接口驱动的设计与实现
CP2200 具有 4KB 空间的 FIFO 循环接收缓冲区以及 8 个转换表缓冲区(TLB),最多可以存储 8 个数据包。其中每个 TLB 能够存储一个接收包的起始地址、长度以及其它信息。包接收会在 MAC 接收被使能而且接收缓冲区未满的时候自动的进行。在收到一个包时,主控制器得到中断请求引脚的通知。此时主机就通过自动读接口来读取数据包,把包中内容复制到它局部的存储器中,也可以向 RXSKIP(RXCN.1 接收接口控制寄存器)写 1 以跳过这个包。存储器会继续保留这个被跳过的包,但是新数据包的到来会将其覆盖[37]。 接收接口本身具有接收过滤器、哈希表,因此能把计划外的包排除到接收缓冲区之外。不被接收过滤器支持的包的类型,CP2200 允许接收缓冲器被主控制器进行随机的访问,主控制器通过检查包中特定的字节来决定是否进行该数据包的复制。 当 MAC 接收被使能而且接收缓冲区没有满的时候,CP2200 会自动进行包接收。如果收到数据包,主机就会收到包接收中断的通知。通过自动读接口主机可以读取数据包,它的过程是:读 RXVALID(CPINFOH.7)和 RXOK(CPNFOL.7),用来检查包被接收与否。若当前包没有被接收就跳过,也就是要向跳过当前包的位 RXCLRV(RXCN.2)写 1,丢弃当前包。若被接收,就读当前包长度寄存器 CPLENH:CPLENL,以此得到包的长度。整个数据包通过接收数据自动的读寄存器 RXAUTORD 来读取,数据包读完后,往有效位清除标志位 RXCLRV(RXCN.2)写 1,清除当前包的有效信息,以此为接收新数据包释放缓冲区。若在缓冲区中还存在未读的字节,就向 RXSKIP 写 1 以跳过当前的包,把自动读缓冲区的指针前移至下一个数据包开始的位置。如图 4.2 所示为具体的读取数据包的流程。

  • 添加微信,提供课题关键词,帮你找

猜你喜欢

热搜课题