ethercard php_关于EtherCard的webClient代码分析
以下代码摘自EtherCard的webClient实例,主要功能是打开指定网址,
Serial.print((const char*) Ethernet::buffer + off);这一行显示服务器返回的数据。当输出一个没有任何格式的页面的时候,也返回一些服务器的信息,我的想法是过滤掉服务器的信息,看这里谁做过类似的方案。
能取得数据的话,就可以在web上面设置Arduino程序里面的参数了。
ARDUINO
01.//>>> The latest version of this code can be found at https://github.com/jcw/ !!
02.
03.// Demo using DHCP and DNS to perform a web client request.
04.// 2011-06-08 http://opensource.org/licenses/mit-license.php
05.// $Id: webClient.pde 7763 2011-12-11 01:28:16Z jcw $
06.
07.#include
08.
09.// ethernet interface mac address, must be unique on the LAN
10.static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x31 };
11.
12.byte Ethernet::buffer[700];
13.static uint32_t timer;
14.
15.char website[] PROGMEM = "www.google.com";
16.
17.// called when the client request is complete
18.static void my_callback (byte status, word off, word len) {
19. Serial.println(">>>");
20. Ethernet::buffer[off+300] = 0;
21. Serial.print((const char*) Ethernet::buffer + off);
22. Serial.println("...");
23.}
24.
25.void setup () {
26. Serial.begin(57600);
27. Serial.println("\n[webClient]");
28.
29. if (ether.begin(sizeof Ethernet::buffer, mymac) == 0)
30. Serial.println( "Failed to access Ethernet controller");
31. if (!ether.dhcpSetup())
32. Serial.println("DHCP failed");
33.
34. ether.printIp("IP: ", ether.myip);
35. ether.printIp("GW: ", ether.gwip);
36. ether.printIp("DNS: ", ether.dnsip);
37.
38. if (!ether.dnsLookup(website))
39. Serial.println("DNS failed");
40.
41. ether.printIp("SRV: ", ether.hisip);
42.}
43.
44.void loop () {
45. ether.packetLoop(ether.packetReceive());
46.
47. if (millis() > timer) {
48. timer = millis() + 5000;
49. Serial.println();
50. Serial.print("<<< REQ ");
51. ether.browseUrl(PSTR("/foo/"), "bar", website, my_callback);
52. }
53.}
ethercard php_关于EtherCard的webClient代码分析相关推荐
- 20145236《网络攻防》Exp4 恶意代码分析
20145236<网络攻防>Exp4 恶意代码分析 一.基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些 ...
- C#中类的继承 override virtual new的作用以及代码分析
继承中override virtual new的作用 virtual 父类中需要注明允许重写的方法: override 子类中必须显示声明该方法是重写的父类中的方法: new 子类中忽略父类的已存在的 ...
- 2017.4.18 静态代码分析工具sonarqube+sonar-runner的安装配置及使用
配置成功后的代码分析页面: 可以看到对复杂度.语法使用.重复度等等都做了分析,具体到了每一个方法和每一句代码. 四种使用方式: sonarqube + sonar-runner sonarqube + ...
- lighttpd1.4.18代码分析
lighttpd1.4.18代码分析(八)--状态机(2)CON_STATE_READ状态 posted @ 2008-09-24 10:50 那谁 阅读(2225) | 评论 (1) 编辑 lig ...
- Device Tree(三):代码分析
2019独角兽企业重金招聘Python工程师标准>>> 一.前言 Device Tree总共有三篇,分别是: 1.为何要引入Device Tree,这个机制是用来解决什么问题的?(请 ...
- 使用Hadoop和ELK进行业务代码分析!分分钟捉到Bug!
大数据是计算领域的新高地,它有望提供一种方法来应对二十一世纪不断增长的数据生成.越来越多的大数据爱好者正在涌现,越来越多的公司正在采用各种大数据平台,并希望提出以客户为中心的解决方案,帮助他们在竞争激 ...
- 20145328 《网络对抗技术》恶意代码分析
20145328 <网络对抗技术>恶意代码分析 ------看到这句话说明还没写完-------- 实践内容: 使用schtasks指令监控系统运行 使用sysmon工具监控系统运行 使用 ...
- starGAN原理代码分析
下载: git clone https://github.com/yunjey/StarGAN.git 1 cd StarGAN/ 1 下载celebA训练数据: bash download.sh 1 ...
- tensorflow笔记:多层CNN代码分析
tensorflow笔记系列: (一) tensorflow笔记:流程,概念和简单代码注释 (二) tensorflow笔记:多层CNN代码分析 (三) tensorflow笔记:多层LSTM代 ...
最新文章
- 【基础知识】如何在word中粘贴出漂亮整洁的代码
- qt串口采用队列_基于STM32的RGB调色器——STM32程序和Qt上位机全开源
- Ribbon客户端负载均衡介绍
- hibernate_day03_MySQL数据库-表与表之间的多对多关系-实例
- hadoop重启后 9000端口不在
- BugkuCTF-Crypto题小山丘的秘密
- Qt文档阅读笔记-QFuture官方解析及实例
- Ubuntu安装过程中的问题
- 转:Nginx 性能优化有这篇就够了!
- 6.5(对三个数进行排序)
- android volley 请求参数,android – Volley – 如何发送DELETE请求参数?
- 信息收集-目录扫描(7kbscan御剑版)下载及使用
- 计算机页面偏黄怎么修改,windows10电脑屏幕颜色偏黄的调节方法
- 数据分析宝典(上):四步轻松搞定指标
- 世界五大著名黑客,你都认识吗?
- ADF11g-041:禁止或允许其它网站添加ADF页面到iframe中
- jmeter实现手机号归属地接口测试案例
- MFS分布式文件系统
- X61的intel wireless 3945abg 不再掉线了
- mysql 启动 错误1053:服务没有及时响应启动或者控制请求
热门文章
- ABAP 标准培训教程 BC400 学习笔记之三:ABAP 编程语言的特性和基本构成要素
- 如何在 SAP Hybris WCMS cockpit 里创建新的 website
- 关于Angular使用http发送请求后的响应处理
- Angular里interpolation text节点的创建逻辑,单步调试
- 手动创建Github pull request
- zone-evergreen.js里的sendNative方法的target参数
- Angular应用从Component到Html的数据绑定是如何实现的 -数据流的讨论
- Business Partner Relationship Category in CRM and C4C
- Java and Jakarta - Hybris
- RenderManager - cssHook - select_all icon render logic