嵌入式Web服务器

从上面的框图中我们可以清晰地了解整个硬件系统的结构以及各部分的连接。首先最重要的部分是调用Microchip公司的TCP/IP库来实现PIC32位单片机与Internet的通信,接受用户的请求并根据Http Request()的返回值通过Http Response()来与用户进行交互,例如显示时间、温度、湿度,或者控制LED灯的亮或灭。更进一步可以用按键来模仿嵌入式服务器侧的各种外设的参数变化,使其实时的显示到用户的Web浏览器上。

 

下图是简化了的Web服务器原理图,服务器的事物逻辑部分是嵌入式服务器的核心部分,它根据不同的Http Socket来读取SD存取卡上的HTML源文件或其他外设的输入值,来响应用户的请求,这是物联网的基础。

 

SD存取卡及文件系统

SD存取卡及文件系统是整个系统中仅次于嵌入式Web服务器的重要模块,它主要用来存放Web服务器管理员编写的HTML源文件,提供给Web服务器来响应用户的请求。SD卡的读写可以利用PIC32位单片机上的USB Host来方便的实现。并且Microchip 公司提供的文件系统的库函数的支持,更加方便了SD存取卡及文件系统模块的实现。

 

其示意性原理框图如下所示:

 

LCD显示部分

同时与PIC32 位单片机相连的LCD用来显示嵌入式Web服务器的网络连接信息以及传感器的输入值。嵌入式Web服务器的网络连接信息不仅包括当前IP地址,网关等基本网络信息,还包含了当前用户连接数,用户的Web请求等。管理者可以根据这些基本的信息来判断当前Web服务器的工作状态,以及系统错误的检查。

 

LCD显示内容的总体布局如下图所示:

 

 

 

4.传感器模块及LED控制模块

传感器主要用于测量当前系统所处环境的各种参数,比如温度,湿度等。测量的数据一方面送到LCD显示;另一方面送到Web服务器的事物逻辑控制中心以响应用户的Web请求。而LED控制部分则接受来自Web服务器的控制信号以控制LED灯的亮或灭。

 

5.测试

1. 当上电或用户复位后所有PIC32 位单片机配置自动设置好,并正常工作;

2. 网络连接通过板卡上的Ethernet 接口实现,相关的IP地址,子网掩码(Subnet mask),网关(Gateway)等网络配置能够通过DHCP(Dynamic Host Configuration Protocol)自动实现;

3. 相关外设(温湿度传感器及LED)正常工作。