物联网起步----esp8266本地点灯

2024-06-10 23:58

本文主要是介绍物联网起步----esp8266本地点灯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

物联网起步----esp8266本地点灯

  • 准备
    • 硬件准备
    • 通讯准备
  • 程序上手
    • GPIO点选择
    • 完整代码
  • 上传代码
  • 最后的效果

准备

物联网编程,不像我们纯粹的软件编程,还需要硬件的支持。

硬件准备

需要esp8266板子一个,杜邦线若干条。(这是必须的)
我这里有一个三色LED ( KY-016 3色 LED),就拿它来试试手。

ky-016  三色LED

通讯准备

esp8266用数据线直连电脑是COM通讯的,直接连接电脑usb后,板子电源灯常亮,(如果不亮就要看看板子说明书了),这时候

右击我的电脑
管理
系统工具
设备管理器
端口COM和LPT

设备管理器端口查看
记住 端口号 !!!

打开Arduino进行端口设置:

打开Arduino
工具
端口
选择对应端口号

端口设置

程序上手

GPIO点选择

选择的三色灯,需要三正一负。就随便选D2(GPIO4)、D3(GPIO0)、D4(GPIO2)、GND;

在这里插入图片描述

完整代码

/*ESP8266 Blink by Simon PeterBlink the blue LED on the ESP-01 moduleThis example code is in the public domainThe blue LED on the ESP-01 module is connected to GPIO1 (which is also the TXD pin; so we cannot use Serial.print() at the same time)Note that this sketch uses BUILTIN_LED to find the pin with the internal LED
*/
int LED_PIN2 = 2;//GPIO2
int LED_PIN3 = 0;//GPIO0
int LED_PIN4 = 4;//GPIO4
void setup() 
{Serial.begin(115200);pinMode(LED_PIN2, OUTPUT);     // Initialize the BUILTIN_LED pin as an outputpinMode(LED_PIN3, OUTPUT);pinMode(LED_PIN4, OUTPUT);
}// the loop function runs over and over again forever
void loop() 
{int i=0;for(i;i<8;i++){switch(i){case 0:digitalWrite(LED_PIN2, 0);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 0);digitalWrite(LED_PIN4, 0);break;case 1:digitalWrite(LED_PIN2, 0);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 0);digitalWrite(LED_PIN4, 1);break;case 2:digitalWrite(LED_PIN2, 0);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 1);digitalWrite(LED_PIN4, 0);break;case 3:digitalWrite(LED_PIN2, 0);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 1);digitalWrite(LED_PIN4, 1);break;case 4:digitalWrite(LED_PIN2, 1);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 0);digitalWrite(LED_PIN4, 0);break;case 5:digitalWrite(LED_PIN2, 1);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 0);digitalWrite(LED_PIN4, 1);break;case 6:digitalWrite(LED_PIN2, 1);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 1);digitalWrite(LED_PIN4, 0);break;case 7:digitalWrite(LED_PIN2, 1);   // Turn the LED on (Note that LOW is the voltage leveldigitalWrite(LED_PIN3, 1);digitalWrite(LED_PIN4, 1);break;}delay(1000);      //间隔1000ms也就是1秒}
}

上传代码

编译 验证没问题就可以上传代码了,有了前面的准备和代码,我们就可以直接上传了。

按住esp8266板子上的 FLASH 按钮,点击上传,等出现上传进度 …。。。后可以松开 FLASH 按钮,继续等待上传完成。
在这里插入图片描述

最后的效果

ipqchase

最后 :感谢我们 胡工 一直以来的指导

这篇关于物联网起步----esp8266本地点灯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1049640

相关文章

物联网之流水LED灯、正常流水灯、反复流水灯、移动流水灯

MENU 硬件电路设计软件程序设计正常流水LED灯反复流水LED灯移动流水LED灯 硬件电路设计 材料名称数量直插式LED1kΩ电阻杜邦线(跳线)若干面包板1 每一个LED的正极与开发板一个GPIO引脚相连,并串联一个电阻,负极接GND。 当然也可以选择只使用一个电阻。 软件程序设计 正常流水LED灯 因为要用到多个GPIO引脚,所以最好把所有的GPI

本地如何快速启动静态服务器

本地快速启动静态服务器 有许多第三方库可以帮助你快速启动一个静态服务器,甚至无需编写代码。通过命令行运行这些库后,它们会自动启动一个服务器并打开指定端口,展示当前目录下的文件内容: 电脑得提前安装NodeJS 1、http-server http-server 是一个轻量级的命令行工具,允许你快速启动一个静态文件服务器。 安装 npm install -g http-server

4G模块、WIFI模块、NBIOT模块通过AT指令连接华为云物联网服务器(MQTT协议)

MQTT协议概述 MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息传输协议,它被设计用来提供一对多的消息分发和应用之间的通讯,尤其适用于远程位置的设备和高延迟或低带宽的网络。MQTT协议基于客户端-服务器架构,客户端可以订阅任意数量的主题,并可以发布消息到这些主题。服务器(通常称为MQTT Broker)则负责接受来自客户端的连接请求,并转发消

【20240907问题记录(未解决)】Conda环境问题:SSH与本地环境变量不一致

Conda 允许用户在同一系统上创建多个独立的Python环境。然而,最近遇到了一个奇怪的问题:通过SSH连接到远程Ubuntu机器时,Conda环境变量的行为与本地机器不一致。以下是具体遇到的问题: 1. 问题描述 在本地Ubuntu机器上,我的conda的python版本是3.6,而pip版本可以通过命令 pip --version 查看,显示为: pip 21.3.1 from /ho

我成功在本地打开了Cesium啦!

1首先下载Node.js,我是跟着这篇下载的,https://zhuanlan.zhihu.com/p/77594251,不过这后面的我没弄对Cesium环境配置也没影响。 另外:我看其他推文说,在终端写node -v和npm-v查node和npm的版本可以检测node和npm是否下载成功。 2然后我在CesiumB站官号看的教学视频,跟着下载Cesium源代码。 Cesium基础入门1-零

html 本地存储(localStorage and sessionStorage)

刚刚学习anjularJS和html的项目开发,其中在ui库中使用一种步骤类型的样式,其实就是form表单的ng-if判断显示,样式好用但也伴随着很多的问题,其中一个bug就是刷新会回到第一步,回到第一步的原因是刷新时会从新加载js代码,因为状态没变,所以就会出现无论刷新的哪一步,都会回到第一步,解决该问题的方法就是本地存储。 百度发现有两种存储方式,一个是sessionStorage,还有个

k8s 存储(PV、PVC、SC、本地存储、NFS)

存储持久化相关三个概念: PersistentVolume (PV) 是对具体存储资源的描述,比如NFS、Ceph、GlusterFS等,通过PV可以访问到具体的存储资源;PersistentVolumeClaim (PVC) Pod想要使用具体的存储资源需要对接到PVC,PVC里会定义好Pod希望使用存储的属性,通过PVC再去申请合适的存储资源(PV),匹配到合适的资源后PVC和PV会进行绑定

git如何灵活切换本地账号对应远程github的两个账号

git如何灵活切换本地账号对应远程github的两个账号 问题: 有时候我们会同时维护两个github的账号里面的仓库内容,这时候本地git需要频繁的切换ssh,以方便灵活的与两个账号的仓库可以通信。这篇日记将阐述我是怎么解决这个问题的。1. 第一个账户 生成本地SSH2. 注意 我们要设置第二个账户的 本地 SSH 时3. 两个账号来回切换 问题: 有时候我们会同时维护两个git

vscode从本地安装插件

1. 打开VSCode。 2. 点击左侧菜单中的“扩展”(或按Ctrl+Shift+X)。 3. 点击“更多操作”(三个点)> “从VSIX安装”。 4. 选择下载的.vsix文件。 5. 点击“安装”即可安装插件。

Java传输本地目录到远程服务器

在使用Java进行开发时,有时需要将本地目录中的文件复制或传输到远程服务器上。这种场景在部署应用程序或进行数据迁移时尤为常见。JSch库提供了一种简便的方法来实现这一功能。以下是从Codekru网站获取的信息摘要,并结合相关内容,展示如何使用JSch库实现从本地计算机复制整个目录到远程服务器的过程。 准备工作 首先,确保您的项目中已经包含了JSch库的依赖。如果您使用Maven作为构建工具,可