利用ENC28J60实现嵌入式Web服务器.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用ENC28J60实现嵌入式Web服务器   摘要:为将Internet低廉地延伸到各种嵌入式系统,实现基于Internet的远程数据采集、远程控制等,该文研究了将嵌入式系统与Web技术相结合,在无操作系统单片机环境下嵌入式Web服务器的开发,详细介绍了基于PIC18FXXX单片机以及ENC28J60以太网控制器的嵌入式Web服务器系统的设计,包括其硬件构成及软件设计。   关键词:嵌入式Web服务器;通用网关接口(CGI);单片机;太网控制器   中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)26-7551-02      二十一世纪无疑是一个信息时代。一方面,迅速发展的Web技术给Internet应用提供了一个很好的发展方向。当今的许多应用都是基于Web技术的, 如电子商务、视频会议、远程医疗诊断等。另一方面,嵌入式系统也己经成熟起来并得到了最为广泛的工业应用。在一些工业和汽车应用中,为了实现多个测控节点之间的信息交流,利用CAN(Controller Area Network)[1]、PROFIBUS、RS-485等总线将多个测控节点进行组网,但这种网络的有效通信范围比较有限,所能实现的功能也比较有限。   如果嵌入式系统能够与Web技术结合起来[2],则可以方便、低廉地将Internet延伸到各种嵌入式系统,并实现基于 Internet的远程数据采集、远程控制、自动报警等功能。也就是说,只要设备接入了Internet,我们就可以在世界上的任何地方十分方便地控制、操纵那些配备有微型Web 服务器的设备。   本文我们在对Web服务器技术、HTTP(HyperText Transfer Protocol)、CGI和ENC28J60以太网控制器进行分析的基础上,将TCP/IP[3]等网络协议嵌入单片机系统,使单片机系统能够完成Web服务器的基本功能,并实现了系统的硬件及软件设计[4]。      1 系统硬件设计      系统采用PIC18F458单片机控制,由以太网接口电路、网页存储器电路、电源电路、复位电路、看门狗电路组成,另外还有用于现场测控的辅助电路:CAN接口电路、信号调理电路、模拟和开关量输出电路等组成,由于PIC18F458单片机内部包含有11位的A/D转换以及CAN通讯模块等功能模块[5],所以大大简化了电路的设计。嵌入式Web服务器以太网接口电路如图1所示。   ENC28J60[6]是Microchip Technology(美国微芯科技公司)推出的28引脚独立以太网控制器,符合IEEE 802.3,内置10Mbps以太网物理层器件(PHY)及媒介接入控制器(MAC),可按业界标准的以太网协议可靠地收发信息包数。同时,内部包含可编程8KB双端口SRAM缓冲器,以高效的方式进行信息包的存储、检索和修改,以减轻主控单片机的内存负荷。   ENC28J60通过SPI(串行外围芯片接口)与PIC18F458单片机进行数据交换,简化了电路的设计。   由于ENC28J60是一个工作电压为3.3V 的器件。当PIC18F458单片机(运行电压为5V)与ENC28J60连接时,一方面,由于ENC28J60的SPI接口的CS,SCK和SI输入以及RESET引脚都可以承受5V的电压,所以不需进行任何处理就可连接。另一方面,由于ENC28J60 3.3V CMOS 输出驱动单片机端口时,它很可能不符合规范要求,此时需要一个单向电平转换器,才可接至PIC18F458单片机。      2 系统软件设计      程序采用C18[7]和汇编语言混合编程,包括系统初始化、TCP/IP协议栈、TCP/IP协议栈管理、Web服务、CGI处理函数、系统功能处理(数据采集和控制、CAN通讯处理)等模块程序。其中系统初始化程序主要完成PIC18FXXX单片机端口功能的初始化。系统工作流程如图2所示。   2.1 TCP/IP协议栈   由于该嵌入式Web服务器硬件结构简单,硬件资源,特别是系统程序存储空间容量有限,所以我们在该系统中采用了精简TCP/IP协议栈[7]。系统在应用层实现了HTTP协议(超文本传输协议),在传输层采用TCP协议,在网络层实现IP协议,同时,还实现能报告数据传送差错等情况的ICMP协议。以太网数据的传输采用MAC地址来识别,而ARP协议提供IP地址和数据链路层使用的MAC地址之间的转换功能,为了保证系统在以太网的通信,实现了ARP协议。   2.2 TCP/IP协议栈管理程序   由于TCP/IP协议分布在链路层、网络层、传输层和应用层上,是分层实现的,每一层只负责处理通信过程中的一部分问题,其它层不能实现其功能。我们进行TCP/IP协议

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档