完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 goyuqinghua 于 2014-10-24 16:59 编辑
当我发表这篇作为web服务器使用的Arduino教程,很多人写信给我,询问如何使用web浏览器来控制Arduino,在这篇文章,我将告诉你如何用web浏览器来控制一个led。 一些HTML语言 首先你要编写一个HTML页面,这是Arduino将要发送到你的web浏览器的页面。 这个页面是非常简单的:它显示的是Led的实际工作状态和一个按钮来改变它。 从HTML页面的源代码我们可以找到变量的元素,即根据Led状态来改变的元素。 从源文件,我们还可以了解,当用户单击按钮时发生了什么事情:浏览器会请求Arduino如下页面。
?name=value它的作用是通过GET方法向web服务器发送一个标准的表单。 Arduino 根据以上两个命令之一,Arduino代码将解析浏览器的请求,根据他们改变Led状态,然后它将根据你的模板,编写一个HTML页面发送给浏览器。 完整的代码共享在GitHub,以下分析最有趣的部分代码。
[color=rgb(51, 102, 153) !important]复制代码 定义了2个静态字符串(ON,OFF)和2个字符串变量,字符串变量将用来创建HTML页面,将2个静态字符串之一赋值给这2个变量。
[color=rgb(51, 102, 153) !important]复制代码 在setup()除了EtherCard库设置,还要配置Led的初始状态(off)。
[color=rgb(51, 102, 153) !important]复制代码 在主loop(),我们的代码解析浏览器的请求(存储在Ethernet::buffer缓存从pos开始的位置),寻找状态ON/OFF命令。
[color=rgb(51, 102, 153) !important]复制代码 更新ledPin(Arduino与Led相连的端口)状态,把statusLabel与buttonLabel两个变量关联到正确的标签。 最后,HTML页面被创建,$S为占位符,你可以用emit_p()方法插入,在$S的位置,列出对应变量的值,如第一个$S的位置会被statusLabel的值填充,第二个$S的位置会被buttonLabel填充... |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
WIO Terminal +MCP2515 实现车辆OBD的速度监控
10419 浏览 0 评论
60659 浏览 77 评论
6002 浏览 3 评论
一块扩展板完成Arduino的10类37项实验(代码+图形+仿真)
36961 浏览 219 评论
10058 浏览 0 评论
535浏览 1评论
请教:esp32中用u8g2显示shtc3传感器数据到i2c液晶屏,显示不稳定的问题
1310浏览 1评论
1452浏览 1评论
654浏览 0评论
574浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 16:50 , Processed in 0.724565 second(s), Total 71, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号