Web 服务器试验
这个功能很有用,当然我在这里只是做个简单的测试。
当你的产品增加了Web服务器功能后,用户只需要通过浏览器,输入IP地址或网址,就可以得到你的产品信息,运行状态,或者一些服务。
希望本实验能起到抛砖引玉的作用,对大家有所帮助。
比如一些考勤机,Web Camera等都是通过此功能实现的。
我们可以把数据或网页的内容存在SD卡里,当用户访问时,读出数据,再通过网络反馈给用户。
下面试验开始:
编写以下Web服务器测试程序(当然你要把Ethernet库导进你的项目):
当然你也要根据你的路由器的设定更改程序中IP的设置
PS:下面程序中有用到编写网页所用的HTML语言,你需要有一定了解才能读懂
/*GR-SAKURA Sketch Template Version: V1.02*/
#include <rxduino.h>
#include "Ethernet.h"
byte mac[]={0x00,0x1a,0xa0,0x93,0x21,0x0d}; //set MAC
byte ip[]={192,168,5,111}; //set IP address
TEthernet myNet;
EthernetServer server = EthernetServer(80);
void setup()
{
pinMode(PIN_LED0,OUTPUT);
pinMode(PIN_LED1,OUTPUT);
pinMode(PIN_LED2,OUTPUT);
pinMode(PIN_LED3,OUTPUT);
digitalWrite(PIN_LED0, 1);
digitalWrite(PIN_LED1, 0);
digitalWrite(PIN_LED2, 1);
digitalWrite(PIN_LED3, 0);
myNet.setHostname("EEPW");
myNet.begin(mac,ip);
server.begin();
}
void loop()
{
EthernetClient client = server.available();
if (client)
{
while(client.connected())
{
if (client.available())
{
char colour=client.available();
client.println("HTTP/1.1 200 OK"); //send new page
client.println("Content-Type: text/html");
client.println();
client.println("<HTML>");
client.println("<HEAD>");
client.println("<TITLE>Welcome to Campo's Home Page</TITLE>");
client.println("</HEAD>");
client.println("<BODY>");
client.println("<H1><font colour=blue>Welcome to link to below address</font></H1>");
client.println("<a href='http://www.eepw.com.cn' target=_blank>www.eepw.com.cn</a>");
client.println("<p></p>");
client.println("<a href='http://www.baidu.com' target=_blank>www.baidu.com</a>");
client.println("<p></p>");
client.println("<a href='mailto:campozeng@gmail.com'>My email</a>");
client.println("</BODY>");
client.println("</HTML>");
delay(1);
//stopping client
client.stop();
}
}
}
}
编写完成后,编译,下载程序到你的Sakura板中去
用网线把你的Sakura板和路由器连接起来。
上电,最简单就是用USB线给它供电了,呵呵
注意,要先连接好网线再上电
这样Web服务器就已经在运行了,怎么测试它是否正常工作呢??
下面,我们用连接在同一个路由器下的电脑来进行测试
打开IE,输入网址,也就是IP,稍等了一下我们就看到下图的运行结果了:
哈哈,这就是我用Sakura板做的个人主页了。实在是世界上最简单的网站了。
如果你在路由器里设定WEB映射功能,把外网的IP映射到你内网IP。这样后,你把外网IP告诉你的网友,这样远方的他就可以访问你的主页了。
这个功能很有用,当然我在这里只是做个简单的测试。
当你的产品增加了Web服务器功能后,用户只需要通过浏览器,输入IP地址或网址,就可以得到你的产品信息,运行状态,或者一些服务。
希望本实验能起到抛砖引玉的作用,对大家有所帮助。
比如一些考勤机,Web Camera等都是通过此功能实现的。
我们可以把数据或网页的内容存在SD卡里,当用户访问时,读出数据,再通过网络反馈给用户。
下面试验开始:
编写以下Web服务器测试程序(当然你要把Ethernet库导进你的项目):
当然你也要根据你的路由器的设定更改程序中IP的设置
PS:下面程序中有用到编写网页所用的HTML语言,你需要有一定了解才能读懂
/*GR-SAKURA Sketch Template Version: V1.02*/
#include <rxduino.h>
#include "Ethernet.h"
byte mac[]={0x00,0x1a,0xa0,0x93,0x21,0x0d}; //set MAC
byte ip[]={192,168,5,111}; //set IP address
TEthernet myNet;
EthernetServer server = EthernetServer(80);
void setup()
{
pinMode(PIN_LED0,OUTPUT);
pinMode(PIN_LED1,OUTPUT);
pinMode(PIN_LED2,OUTPUT);
pinMode(PIN_LED3,OUTPUT);
digitalWrite(PIN_LED0, 1);
digitalWrite(PIN_LED1, 0);
digitalWrite(PIN_LED2, 1);
digitalWrite(PIN_LED3, 0);
myNet.setHostname("EEPW");
myNet.begin(mac,ip);
server.begin();
}
void loop()
{
EthernetClient client = server.available();
if (client)
{
while(client.connected())
{
if (client.available())
{
char colour=client.available();
client.println("HTTP/1.1 200 OK"); //send new page
client.println("Content-Type: text/html");
client.println();
client.println("<HTML>");
client.println("<HEAD>");
client.println("<TITLE>Welcome to Campo's Home Page</TITLE>");
client.println("</HEAD>");
client.println("<BODY>");
client.println("<H1><font colour=blue>Welcome to link to below address</font></H1>");
client.println("<a href='http://www.eepw.com.cn' target=_blank>www.eepw.com.cn</a>");
client.println("<p></p>");
client.println("<a href='http://www.baidu.com' target=_blank>www.baidu.com</a>");
client.println("<p></p>");
client.println("<a href='mailto:campozeng@gmail.com'>My email</a>");
client.println("</BODY>");
client.println("</HTML>");
delay(1);
//stopping client
client.stop();
}
}
}
}
编写完成后,编译,下载程序到你的Sakura板中去
用网线把你的Sakura板和路由器连接起来。
上电,最简单就是用USB线给它供电了,呵呵
注意,要先连接好网线再上电
这样Web服务器就已经在运行了,怎么测试它是否正常工作呢??
下面,我们用连接在同一个路由器下的电脑来进行测试
打开IE,输入网址,也就是IP,稍等了一下我们就看到下图的运行结果了:
哈哈,这就是我用Sakura板做的个人主页了。实在是世界上最简单的网站了。
如果你在路由器里设定WEB映射功能,把外网的IP映射到你内网IP。这样后,你把外网IP告诉你的网友,这样远方的他就可以访问你的主页了。
回复
有奖活动 | |
---|---|
【有奖活动——B站互动赢积分】活动开启啦! | |
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |