微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于网络单片机PIC18F97J60的开发与应用

基于网络单片机PIC18F97J60的开发与应用

时间:12-22 来源:互联网 点击:

sk管理地址解析协议(Address ResohJtion Protocol,ARP)层的服务。Microchip TCP/IP协议栈使用了协同式多任务处理技术。在协同式多任务处理系统中,同时存在多个任务,每个任务执行自己的作业然后交回控制权,这样下一个任务才能够执行作业。StackTask和ARPTask都是协同式任务。Microchip TCP/IP协议栈尽管没有实现通常TCP/IP协议栈中的所有模块,但是在需要时可以将它们作为单独的任务或模块来实现。

  

  2.4 Stack Manager

  Microchip TCP/IP协议栈由多个模块组成。在使用模块之前,用户必须查阅并了解它的用途和API。函数的语法、参数、返回值、前提条件等具体问题可以在编程时针对具体的问题单独查阅。

  使用Microchip TCP/IP协议栈的任何应用程序都必须执行一定的步骤,以确保在适当的时间调用相应的模块(例如IP、TCP、UDP和ICMP)。无论主应用程序逻辑如何,管理协议栈模块的任务都始终相同。

  为了减轻主应用程序管理各个模块的负担,Micro—chip TCP/IP协议栈使用了一个特殊的应用程序层模块,称为“StackTask”或“Stack Manager”。Stack Manager以协同式任务处理方式来实现。被赋予处理时间后,它将轮询MAC层是否存在有效的数据包。若接收到一个包,它将对其进行解码并路由到相应的模块做下一步的处理。

  Stack Manager。不是Mirochip TCP/IP协议栈的一部分,它与协议栈一起提供给用户。这样主应用程序除了自己的工作以外,不需要管理协议栈模块。执行StackManager任务之前,必须通过调用StackInit()函数来对其进行初始化。这个函数按正确的顺序初始化Stack Man—ager变量和各个模块。一旦调用Stacklnit(),主程序就必须定期调用StackTask()函数,以确保及时处理所有进入的包,以及所有的超时和错误条件。

  2.5 MicrOChip HTTP服务器

  Microehip HTTP服务器以协同式任务处理方式实现,它与Microchip TCP/IP协议栈以及用户的主应用程序共存。这个服务器自身在源文件“HTTP.c”中实现,使用一个用户应用程序实现2个回调函数。

  这里提供的HTTP服务器不会实现所有的HTTP功能,它是面向嵌入式系统的最小型服务器。用户可以按需要方便地添加新功能。HTTP服务器主要功能包括:支持位于内部程序存储器或外部串行EEPROM中的网页、简单文件系统(MPFS)、动态网页内容生成和基于PC的程序,以及从给定目录创建MPFS映像等。

  对于Microchip协议栈及其HTTP服务器,特定格式是MPFS。如果MPFS映像要存储在外部EEPROM中,则可能需要在应用程序中包含编程方法。HTTP服务器使用文件“index.htm’’作为它的缺省网页。这要求所有应用程序都将名为“index.htm"的文件作为它们MPFS映像的一部分。

  3、系统开发过程

  3.1 动态HTTP页面生成

  本应用系统实例中服务器端网页的设计涉及2项网页开发技术:AJAX和CGI。篇幅所限,网页编程代码略。AJAX全称为“Asynchronoous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。与传统的Web应用不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP或其他一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,因此就能看到响应更快的应用。同时,很多的处理工作可以在发出请求的客户端机器上完成,所以web服务器的处理时间也缩短了。

  CGI(Common Gate Interface,通用网关接口)是Web服务器与客户端HTML页面的接口。通俗地讲,CGI就像是一座桥,把网页和Web服务器中的执行程序连接起来,把HTML接收的指令传递给服务器,同时把服务器执行的结果返还给HTML页。CGI可以实现处理表格、据库查询、送电子邮件等许多操作,常见的cGI就是计数器。CGI使网页不再是静态的,而变成是交互式的。

  3.2 集成环境设计

  MPLAB IDEv8.OO提供了一个编程环境,由于使用C语言编程,故下载并安装了免费的C编译器MPLAB—C18一Student Edition—v3_16.exe。MPLAB集成环境是Micro—chip公司为其所有的开发工具研发的,使用前需要选择MPLAB ICD2。ICD2可以充当调试器和烧写器,debug—ger和programmer在菜单中都可以进行选择。在debug—ger模式下,Program按钮表示把目标文件和监控程序一起烧写入待调试的MCU中。

  MPLAB ICD2通过USB线连接主机,但不能使用默认的驱动。手动在MPLAB IDE软件中找到ICD2_USB驱动。这个路径包含1CD2W2K.INF、ICD2W2K.SYS、ICD2W2K L.SYS等文件。

运行MPLAB.exe后,选择PICl8F97J60及MPLABICD2,则系统可下载配合该芯片使用的硬件操作系统。完成下载后,系

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top