Arduino、ESP8266、HTML相关知识点记录

C代码

const char *ssid = "********";                                // 这里定义将要建立的WiFi名称。

const char *password = "********";                       // 这里定义将要建立的WiFi密码。

多WiFi连接:

  wifiMulti.addAP("********", "********"); 

wifiMulti.addAP("********", "********");                //调用函数addAP来记录3个不同的WiFi网络信息。

  wifiMulti.addAP("********", "********");

char auth[] = "********";    //换成APP获取到的密匙

char ssid[] = "********";    //WiFi账号              

char pswd[] = "********";       //WIFI密码

库:

#include <ESP8266WiFi.h>                                // 本程序使用 ESP8266WiFi库

#include <ESP8266WiFiMulti.h>                           //  ESP8266WiFiMulti库

#include <ESP8266WebServer.h>                        //  ESP8266WebServer库

#include <FS.h>                        //闪存

串口:

Serial.begin(9600);          // 启动串口通讯

引脚:

digitalRead( );                                                 // 获取引脚状态

digitalWrite( , );                                       

浏览器:

ESP8266WebServer esp8266_server(80);

esp8266_server.begin();                 

  esp8266_server.on("/", handleRoot);                //  ‘/’ 首页信息

  esp8266_server.onNotFound(handleNotFound);

esp8266_server.on("/", HTTP_GET, handleRoot);     // 设置服务器根目录即'/'的函数'handleRoot'

  esp8266_server.on("/LED", HTTP_POST, handleLED);

esp8266_server.handleClient();                       // 处理http服务器访问

esp8266_server.send(200, "text/plain", "Hello from ESP8266");     // 200 相应状态码   “text” 纯文本  

                     "text/html"

String displayPinState;                                                                 // 存储按键状态的字符串变量

    displayPinState = "Button State: HIGH";                                              // 字符串赋值信息 

esp8266_server.send(200, "text/plain", displayPinState);                 // 向浏览器发送按键状态信息 

HTML多时:

String sendHTML(bool buttonState){

 

  String htmlCode = "<!DOCTYPE html> <html>\n";

  htmlCode +="<head><meta http-equiv='refresh' content='5'/>\n";

  htmlCode +="<title>ESP8266 Butoon State</title>\n";

  htmlCode +="<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}\n";

  htmlCode +="body{margin-top: 50px;} h1 {color: #444444;margin: 50px auto 30px;} h3 {color: #444444;margin-bottom: 50px;}\n";

  htmlCode +="</style>\n";

  htmlCode +="</head>\n";

  htmlCode +="<body>\n";

  htmlCode +="<h1>ESP8266 BUTTON STATE</h1>\n";

  if(buttonState)

    {htmlCode +="<p>Button Status: HIGH</p>\n";}

  else

    {htmlCode +="<p>Button Status: LOW</p>\n";}

  htmlCode +="</body>\n";

  htmlCode +="</html>\n";

  return htmlCode;

}

闪存文件系统:

File dataFile = SPIFFS.open(file_name, "w");   // 建立File对象用于向SPIFFS中的file对象(即/notes.txt)写入信息

File dataFile = SPIFFS.open(file_name, "r");   //读取文件内容并且通过串口监视器输出文件信息

Arduino:

C++:

pinMode( 1 , INPUT_PULLUP);                            // 将按键引脚设置为输入上拉模式    

digitalWrite(LED_BUILTIN, HIGH);                      //写 高电平

Serial.begin(9600);

Serial.println(bright);

Serial.print(bright);

  if(Serial.available()>0)      //  检测串口缓存是否有数据等待传输

  {

    char serialData=Serial.read();                      //1个数

    Serial.println(serialData);

  }

serialData=Serial.parseInt();                               //多位数

         if(Serial.available()>0)      //  检测串口缓存是否有数据等待传输

         {

           int serialData=Serial.parseInt();

           Serial.print("serialData:");

         Serial.println(serialData);

           }

analogWrite(D1,bright);                                      //数模转换

库:

#include <Servo.h>                            //舵机

Servo myservo;

myservo.attach(2);

int pos;

myservo.write(pos);

ESP8266

HTML

\":      HEML代码的“前+\

快捷键:

              

              

标签

一级标题:

<h1>

    </h1>

段落标签:

   <p>

       </p>

换行:

 <br>

文本加粗:

 <b>       </b>

空格:

&nbsp;

图片标签:

<img src="32.jpg">

../                  返回文件上一级

表格:

按钮:

提交按钮

普通按钮

属性:

align="center"

width="500" height="100"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/207749.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

USB Type-C的基本原理

1 USB Type-C的基本原理 1.1 基本特性 Figure 1-1 USB Type-C接头外形 USB Type-C&#xff08;简称USB-C&#xff09;的基本特性&#xff1a; 1. 接口插座的尺寸与原来的Micro-USB规格一样小&#xff0c;约为8.3mm X 2.5mm 2. 可承受1万次反复插拔 3. 支持正反均可插入的“正反…

Python 基本语法

目录 变量 变量的使用 变量命名规范 基本语法 注释 语句分隔符 缩进 Python编码规范&#xff08;PEP 8&#xff09; 输入输出函数 基本数据类型 整型和浮点型 布尔类型 字符串 字符串转义符 长字符串 格式化字符串 序列类型操作 内置方法 类型转换 运算符 …

Elasticsearch 的使用

一、简介 1.Shard&#xff08;分片&#xff09; 数据分散集群的架构模式&#xff0c;Elasticsearch 将一个 Index&#xff08;索引&#xff09;中的数据切为多个 Shard&#xff08;分片&#xff09;&#xff0c;分布在不同服务器节点上。 默认每个索引会分配5个主分片和1个副本…

2023接口测试面试题

http接口工具有很多如&#xff1a;postman、jmeter、soupUI、Javahttpclient、robotframeworkhttplibrary等 1、什么是接口 接口就是内部模块对模块&#xff0c;外部系统对其他服务提供的一种可调用或者连接的能力的标准 接口的种类和分类:webservice和http api接口 1&#…

Leetcod面试经典150题刷题记录——数组 / 字符串篇

数组 / 字符串篇 1. 合并两个有序数组Python3排序法双指针法 2. 删除有序数组中的重复元素3. H 指数Python3排序法计数排序法二分查找 有个技巧&#xff0c;若想熟悉语言的写法&#xff0c;可以照着其它语言的题解&#xff0c;写目标语言的代码&#xff0c;比如有C/C的题解&…

Qt开发 之 安装程序错误--安装进程(qt.tool.perl)的解决办法

文章目录 1、问题描述2、问题原因3、解决方案3.1、不关闭错误弹出窗口3.2、手动安装Perl3.3、安装Perl完成后&#xff0c;点击“ignore”继续安装 1、问题描述 Win11下&#xff0c;安装qt5.12.12时遇到“安装进程(qt.tools.perl)运行期间出现错误” 问题描述&#xff1a; Err…

表的创建和管理

表的创建和管理 一条数据的存储过程标识符的命名规则MySQL中的数据类型管理和创建数据库创建数据库使用数据库修改数据库 创建表创建方式1创建方式2查看数据表结构 修改表追加一个列修改一个列重命名一个列删除一个列 重命名表删除表清空表 一条数据的存储过程 存储数据是处理数…

语义分割—FCN网络 学习笔记 (附代码)

论文地址&#xff1a;https://arxiv.org/abs/1411.4038 代码地址&#xff1a;https://gitcode.com/mirrors/wzmiaomiao/deep-learning-for-image-processing/overview?utm_sourcecsdn_github_accelerator 1.是什么&#xff1f; 全卷积网络&#xff08;Fully Convolutional N…

解决 from . import _imaging as core ImportError: DLL load failed: 找不到指定的模块。

升级pillow版本就完事了 卸载掉之前的旧版本 conda uninstall pillow升级到新的版本就解决了 pip uninstall pillow 那个错误就解决了

项目实战-编写ssm整合配置文件

1、父工程pom.xml <properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spring.version>…

【Android知识笔记】架构专题(三)

如何用工程手段,提高写代码的生产力?(元编程) 即如何写同样多的代码,花费更少的时间?如何自动生成代码,哪种代码可以被自动生成?哪些环节能够作为自动生成代码的切入点? 代码自动生成技术 代码自动生成,指的并不是让计算机凭自己的意愿生成代码。而是让预先实现好…

Unity 注释的方法

1、单行注释&#xff1a;使用双斜线&#xff08;//&#xff09;开始注释&#xff0c;后面跟注释内容。通常注释一个属性或者方法&#xff0c;如&#xff1a; //速度 public float Speed;//打印输出 private void DoSomething() {Debug.Log("运行了我"); } …

使用JDBC操作数据库时,插入数据中文乱码

如图&#xff1a; 解决办法&#xff1a; 修改连接数据库的路径&#xff0c;即url 如下&#xff1a; 设置编码格式为utf-8 urljdbc:mysql://localhost:3306/qfedu?useUnicodetrue&characterEncodingUTF-8再次运行&#xff0c;插入数据即可

CRM系统:让企业商机管理变得轻松愉快

传统企业的经常出现团队分工不合理、实施过程不可见、进度难以把控等情况。这样不仅会让项目实施周期变长&#xff0c;还会导致客户满意度降低&#xff0c;给企业的发展带来了不好的影响。因此&#xff0c;进行商机管理至关重要。那么&#xff0c;CRM系统如何进行企业的商机阶段…

速通MySql

一、简介 1、什么是数据库 数据仓库&#xff0c;用来存储数据。访问必须用SQL语句来访问 2、数据库的类型 1、关系型数据库&#xff1a;Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等 可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询&#…

TA-Lib学习研究笔记(八)——Momentum Indicators 上

TA-Lib学习研究笔记&#xff08;八&#xff09;——Momentum Indicators 上 Momentum Indicators 动量指标&#xff0c;是最重要的股票分析指标&#xff0c;能够通过数据量化分析价格、成交量&#xff0c;预测股票走势和强度&#xff0c;大部分指标都在股票软件中提供。 1. A…

SSM框架(四):SSM整合 案例 + 异常处理器 +拦截器

文章目录 一、整合流程图1.1 Spring整合Mybatis1.2 Spring整合SpringMVC 二、表现层数据封装2.1 问题引出2.2 统一返回结果数据格式 代码设计 三、异常处理器3.1 概述3.2 异常处理方案 四、前端五、拦截器5.1 概念5.2 入门案例5.3 拦截器参数5.4 拦截器链 一、整合流程图 1.1 S…

如何做一名合格的班主任

班主任是学生在校园内最直接的“家长”&#xff0c;担负着对学生全面管理和教育的责任。该如何才能成为一名合格的班主任呢&#xff1f; 一、具备扎实的专业知识 班主任是一名教师&#xff0c;扎实的专业知识是成为合格班主任的基本条件。在教学过程中&#xff0c;班主任要能够…

代码随想录算法训练营第三十七天 _ 贪心算法_738.单调自增的数字、968.监督二叉树

学习目标&#xff1a; 60天训练营打卡计划&#xff01; 学习内容&#xff1a; 738.单调自增的数字 听不懂的时候就到该动手了。必须要从后向前操作&#xff0c;才能把压力逐级传给最前面的这一位。入如&#xff1a;322 class Solution {// java中的String不能修改&#xf…

探索数据之美:深入学习Plotly库的强大可视化

1. 引言&#xff1a; Plotly 是一个交互性可视化库&#xff0c;可以用于创建各种漂亮的图表和仪表板。它支持多种编程语言&#xff0c;包括Python、R、JavaScript。在Python中&#xff0c;Plotly提供了Plotly Express和Graph Objects两个主要的绘图接口。 2. Plotly库简介&am…