原创 让你的WizFi250适应各种气候

2014-8-29 17:19 1017 20 20 分类: 消费电子

这篇文章会详细描述怎样立即得到指定城市的天气状况(比如首尔),由OpenWeatherMap提供。用JSON(由OpenWeatherMap提供),XML和一个以太网模块,使WIZnet-WizFi250运行起来。

首先,在OpenWeatherMap上检查API内容。

由城市的名称调用。API用一列结果应答,来匹配一个搜索词。在JSON中:

api.openweathermap.org/data/2.5/weather?q=London,uk 在XML:

api.openweathermap.org/data/2.5/weather?q=London&mode=xml http://openweathermap.org/current

然后,跟随上面的指导,在电脑上将JSON和XML格式中的首尔天气数据提取出来。下面有一个网络数据包的截屏可以作为参考。

openweathermap

红色高亮部分的数据是由PC发送的。我们准备消除不必要部分,并使用请求数据输入以下数据。

在这步, \r(Carriage return, 0x0d), \n(Line Feed, 0x0a)必须准确输入,并且传送数据(72 Byte, 81 Byte)也要特别注意。

* JSON
GET /data/2.5/weather?q=Seoul HTTP/1.1\r\n
Host: api.openweathermap.org\r\n\r\n
(72 Byte)
* XML
GET /data/2.5/weather?q=Seoul&mode=xml HTTP/1.1\r\n
Host: api.openweathermap.org\r\n\r\n
(81 Byte)

既然初始化设置已完成,我们将运行WizFi250.首先,在AP上建立联接。

AT+WSET=0,Team Wiki
[OK] AT+WSEC=0,,12345678
[OK] AT+WNET=1
[OK] AT+WJOIN
Joining : Team Wiki
Successfully joined : Team Wiki
[Link-Up Event] IP Addr : 192.168.101.33
Gateway : 192.168.101.1
[OK]

提取OpenWeatherMap API 服务器的IP地址。

AT+FDNS=api.openweathermap.org,3000
128.199.164.95
[OK]

与OpenWeatherMap API 服务器连接。

AT+SCON=O,TCN,128.199.164.95,80,,0
[OK] [CONNECT 0]

发送JSON请求数据到 OpenWeatherMap API服务器。

AT+SSEND=0,,,72
[0,,,72] (여기에서 위에 설명된 72 Byte를 전송하면 된다.)
[OK]

然后,OpenWeatherMap API 服务器将用一个JSON回复(如下)来应答。

{0,128.199.164.95,80,857}HTTP/1.1 200 OK
Server: nginx
Date: Wed, 06 Aug 2014 00:06:49 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
X-Source: redis
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST
221
 

继续阅读:http://www.iwiznet.cn/blog/?p=6406

欢迎登陆WIZnet官方网站:http://www.iwiznet.cn

WIZnet官方博客:http://weibo.com/wiznet2012

文章评论0条评论)

登录后参与讨论
我要评论
0
20
关闭 站长推荐上一条 /2 下一条