文档章节

使用Arduino UART-WiFi模块做web服务器

simpower
 simpower
发布于 2014/11/01 14:29
字数 1071
阅读 514
收藏 6
一、硬件准备
          1.选择硬件,主要有2种:
  • 一种是官方推荐的Arduino WiFi Shield(比较贵,大概要300~400块 淘宝网 ;但是资料齐全);
  • 一种是UART-WiFi模块,不仅支持Arduino,而且支持所有串口的单片机都可以和其模块通信(大概100块左右,淘宝网,资料较少)。
  最后选择了UART-WIFI模块,也走了条坎坷的路,也许到了不少东东。
     
2.   UART-WIFI模块介绍
  • 图片
   
  • 接口
       双排(2 x 4)插针式接口
       支持波特率范围:1200~115200bps
       支持硬件 RTS/CTS  流控
       单 3.3V  供电 、300mA
  • 无线
       支持 IEEE802.11b/g  无线标准
       支持频率范围:2.412~2.484 GHz  
       支持两种无线网络类型:
       基础网(Infra )和自组网(Adhoc)
       支持多种安全认证机制:
       WEP64/WEP128/ TKIP/CCMP(AES)
       WEP/WPA-PSK/WPA2-PSK
       支持快速联网
       支持无线漫游
  • 其它
       支持多种网络协议:
       TCP/UDP/ICMP/DHCP/DNS/HTTP 
       支持自动和命令两种工作模式
       支持串口透明传输模式
       支持 AT+控制指令集
       支持多种参数配置方式:
       串口/WEB  服务器/ 无线连接
3.   UART-WIFI模块配置
      由于   UART-WIFI模块需要3.3V和300mA的输入,而Arduino只能提供3.3V和50 mA,直接连接到Arduino,会导致arduino的3.3v输出,实际测量只有2.3V左右,不能正常使用   UART-WIFI模块。


  • 3种配置
    • 配置一:外接电源
                      
    • 配置二:可以使用兼容官方Arduino的升级版开发板(Freaduino).Freaduino使用1117-3.3输出3.3V供电,最大电流800mA。Arduino只提供500mA的5V供电,而Freaduino更改原有LDO设计为DCDC,最多可以提供2A的5V供电。


                    

    • 配置三:转接板(没找到合适的转接板,未验证,不过原理应该是一样的,提高电流 )
                   

二、测试UART-WiFi模块
  • 方法一:使用UART-WIFI配置管理程序进行管理
    • 将 UART-WIFI 模块和串口连接板连接好,连接好串口线后打开电源
      • 小技巧:1.可以把Arduino的reset和gnd连接,作为串口转接板使用;2.Arduino作为串口转接板使用时,必须RX连接UART-WIFI 模块RX;TX连接UART-WIFI 模块TX。
    • 启动 UART-WIFI配置管理程序,从端口列表中选择模块的连接端口号,如果不确定可以选择自动(频率设置为9600)
                      
    • 点击“退出透传模式”
    • 点击“搜索模块”,如果连接端口选择“自动”且计算机有多个串口时,可能会花费较长的搜索时间,完成后如下图所示:
  •      
    • 修改该模块相应的配置
  • 方法二:通过内置WEB服务器,使用IE浏览器通过网页进行参数配置功能
    • 使用pc,搜索并连接到该模块的ap。必须保证模块已经成功连接到网络;
    • WEB服务器默认端口号为 80,因此在浏览器的地址栏仅输入地址即可。比如:192.168.1.100
    • 输入WEB服务器的账号密码(默认账号:admin 默认密码:000000)
       
    • 网页的配置页面如下图所示,如果要修改无线模块的配置参数,只需在修改完成后点击相应的“ save”按钮即可提交修改
                        
   
三、实现wifi webserver
  • 第一步:配置参数(使用管理程序和web后台均可)
    • 无线参数
      • sta模式
      • SSID名称
      •  加密模式
      • 无线路由器密码
    • 自动工作模式
      • 协议类型:TCP
      • C/S模式:server
      • TCP过期时间:2s
      • 端口号:8080
  • 第二步:编写arduino并上传代码到板子上
 
void setup()  
{  
Serial.begin(9600);  
}  
void loop()  
{  
boolean currentLineIsBlank = true;  
while(1){   
if (Serial.available()) {  
char c = Serial.read();  
// if you've gotten to the end of the line (received a newline  
// character) and the line is blank, the http request has ended,  
// so you can send a reply  
if (c == '\n' && currentLineIsBlank) {  
// send the webpage  
Serial.println("HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<html><body><center><h1>Hello World!! I am WiFi WebServer</h1></center></body></html>");  
break;  

}  
if (c == '\n') {  
// you're starting a new line  
currentLineIsBlank = true;  
 
else if (c != '\r') {  
// you've gotten a character on the current line  
currentLineIsBlank = false;  
}  
}  
}  
}

注意:不要连续输入三个“!”,这会导致上传到mega2560失败。

示意图:  
  • 第三步:打开浏览器,访问板子的ip地址, 验证结果。以192.168.103:8080 为例
         


本文转载自:http://my.oschina.net/u/68250/blog/93323

simpower
粉丝 28
博文 669
码字总数 50544
作品 0
海淀
程序员
私信 提问
使用Arduino UART-WiFi模块做web服务器

一、硬件准备 1.选择硬件,主要有2种: 2.UART-WIFI模块介绍 3.UART-WIFI模块配置 UART-WIFI模块需要3.3V和300mA的输入,而Arduino只能提供3.3V和50 mA,直接连接到Arduino,会导致arduino的...

开源机器人
2012/12/01
20.4K
3
1-学习GPRS_Air202(Air202开发板介绍)

记得自己第一次实现远程通信是在学校里用SIM900A实现的,随着WIFI模块的普及自己就开始用WIFI模块了,当然WIFI模块已经用的很... WIFI模块要想实现远程控制必须连接路由器,其实在做王哥的项目的...

杨奉武
2018/04/28
0
0
物联网APP开发利器之APICloud

本文由嵌入式企鹅圈原创团队成员-华南师范大学物联网创新中心Hende_Zhu先生执笔。 前面文章提到,庆科物联系统为APP端开发提供两种SDK,分别用于Native APP开发和基于APICloud平台的混合模式...

yueqian_scut
2016/10/21
0
0
NodeMCU开发笔记一

Nodemcu是一个基于乐鑫ESP-12E WiFi模块的扩展板,由于ESP12-E的设计不太适合一般玩家的开发调试(pin口间距为2mm、需要使用AT指令),因而出现了很多使 ESP8266能更方便地使用的开发板,Nod...

linshaoneng
2016/07/17
1K
0
51单片机连接ESP8266串口WiFi模块

烧录固件 引脚连接 烧录固件 打开烧录软件,选择配置选项卡,点击第二栏的小齿轮图标 - 加载固件地址 点击其他选项的选择栏,取消选中,只选择第二个选项(固件地址) 返回操作选项卡,选择正...

pop1586082213
2017/01/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
44分钟前
4
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
8
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
11
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
10
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部