ESP8266基于Lua开发点灯示例

news2025/1/20 0:58:23

ESP8266基于Lua开发点灯示例


  • ✨基于ESPlorer IDEhttps://github.com/4refr0nt/ESPlorer/releases
  • 🔧固件烧录工具:NodeMCU-PyFlasher
  • 🌿esp8266烧录工具下载:https://github.com/marcelstoer/nodemcu-pyflasher/releases/tag/v5.0.0

🛠在线生成固件

  • 📍固件生成网址:https://nodemcu-build.com/
    在这里插入图片描述
  • 🌿根据需求选择对应的组件:(这个和合宙的Lua云编译类似)
    在这里插入图片描述
  • 🔖提交后,一般1-3分钟就可以完成云编译。
    在这里插入图片描述

在这里插入图片描述

  • 🌿会生成两个版本的固件:一个整数型的和一个浮点型的。(针对调试信息输出)
    在这里插入图片描述
  • 🌿使用NodeMCU-PyFlasher工具进行烧录
    在这里插入图片描述

ESPlorer IDE使用

  • 🌿运行ESPlorer
    在这里插入图片描述
  • 🌿esp8266连接电脑上,打开对应的串口号。
    在这里插入图片描述
    在这里插入图片描述
  • 🌿Lua ESP8266引脚定义
-- GPIO0
gpio0 = 3

-- GPIO2
gpio2 = 4

-- GPIO4
gpio4 = 2

-- GPIO5
gpio5 = 1

-- GPIO9
gpio9 = 11

-- GPIO10
gpio10 = 12

-- GPIO12
gpio12 = 6

-- GPIO13
gpio13 = 7

-- GPIO14
gpio14 = 5

-- GPIO15
gpio15 = 8

📝点灯程序

  • ⚡需要注意的是这里的4号引脚对应的esp8266上面的GPIO2,也就是nodemcu上面的板子led灯。延时函数形参单位是微秒。
-- 设置D2为输出模式
pin = 4
gpio.mode(pin, gpio.OUTPUT,gpio.PULLUP)

-- 定义循环函数
local function blink()
  while true do
    gpio.write(pin, gpio.HIGH)
    tmr.delay(200000)
    gpio.write(pin, gpio.LOW)
    tmr.delay(200000)
  end
end

-- 开始循环
blink()
  • 📋利用定时器控制led闪烁程序
-- 设置D2为输出
gpio.mode(4, gpio.OUTPUT)

-- 闪烁函数
function blink()
  if gpio.read(4) == gpio.LOW then
    gpio.write(4, gpio.HIGH)
  else
    gpio.write(4, gpio.LOW)
  end
end

if not tmr.create():alarm(1000, tmr.ALARM_AUTO, function()
  print("hey there")
  blink()
end)
then
  print("whoopsie")
  blink()
end

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LabVIEW CompactRIO 开发指南2 CompactRIO软件架构

第一章 CompactRIO软件架构 几乎所有的CompactRIO系统都至少有三个顶层VIs在三个不同的目标上异步执行:FPGA、实时操作系统(RTOS)和主机PC。如果开始软件开发时没有某种架构或流程图可供参考,那么可能会发现跟踪所有软件组件和通信路径是具有挑战性的。拥有一个在…

CentOS7上使用yum搭建LNMP架构并实现wordpress博客实战

前言 🏠个人主页:我是沐风晓月 🧑个人简介:大家好,我是沐风晓月,阿里云社区博客专家😉😉 💕 座右铭: 先努力成长自己,再帮助更多的人 &#xff0c…

魔兽worldserver.conf 服务端配置文件说明

魔兽worldserver.conf 服务端配置文件说明 我是艾西,今天把很多小伙伴需要的魔兽worldserver.conf 服务端配置文件说明分享给大家,大家可以自己研究参考下 worldserver.conf 这个文件是服务端的配置文件,可以在这里做很多个性化修改 注意&a…

SpringSecurity跌坑指南

SpringSecurity跌坑指南 1,事情原委 这两天开始了毕业设计,但是突然发现自己的java方面的基础比较薄弱,于是决定自己从头到尾的开发一个java项目 要说跌的最惨的坑,莫过于springsecurity,如果你只是想要在项目里面配…

〖ChatGPT实践指南 - 零基础扫盲篇⑦〗- 基于 Python 实现的 OpenAI-Library 的简单使用

文章目录 ⭐ python 安装 OpenAI library⭐ 创建 openai.py 进行测试⭐ openai.Completion.create() 方法的小拓展 该章节我们呢来学习一下 OpenAI-Library 的使用,OpenAI-Library 是 OpenAI 官方给我们提供的各种开发语言的库,供我们使用。在前面的章节…

【无标题】基于matlab的长短期神经网络lstm的股票预测

目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 基于长短期神经网络LSTM的股票预测 MATALB编程实现,附有代码 效果图 结果分析 展望 参考论文 背影 股票市场的波动十分巨大,由于一些不确定因素的影响,导致很难对股票进行投资盈利。因此&…

数据库 SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确 解决方法

目录 一、错误提示信息: 二、原因分析: 三、解决方法: 四、执行完成结果: 五、重要说明 一、错误提示信息: 本文验证是数据库中的baiduAi_0258表无法通过select语句ID条件查询, 如执行 select * fro…

远程桌面,openGL

x11、xserver看另一篇博客 openGL是一种规范,用于绘制图像 OpenGL是Khronos Group开发维护的一个规范(也就是提供了一种接口),它主要为我们定义了用来操作图形和图片的一系列函数的API,需要注意的是OpenGL本身并非API。…

vscode 配置有误导致的一次Linux 崩溃

一、问题描述 1. 要实现的功能 编写一个Linux 按键驱动,按下按键时,产生中断,在中断中启动定时器进行防抖处理。 2. 出现的问题 在中断处理函数中,调用 add_timer 函数设置定时器超时函数,并启动定时器。编写完驱动…

【消息队列】Apache Pulsar存储计算分离

前言 对于一个互联网项目来说,一般除了在语言层面的技术选型外,也会引入各种中间件,比如缓存、消息队列、搜索、NoSQL等,但是跳出语言层面来看的话,其实我们庖丁解牛之后,每个中间件都解决了特定的问题。 …

计组 作业九

作业9 题量: 36 满分: 100 作答时间:04-27 10:56至05-10 23:59 89.5分 一. 单选题(共18题,39分) 1. (单选题, 2分)Intel80486是32位微处理器,Core是______位微处理器。 A. 16B. 32C. 48D. 64 我的答案…

20.网络爬虫—Scrapy-Redis分布式爬虫

网络爬虫—Scrapy-redis详讲 Redis的安装与使用分布式概念和作用分布式爬虫分布式爬虫特点redis的使用Redis 操作/启动 Redis Desktop Manager下载特点和架构安装和使用Scrapy-redis 代码部署spider文件 settings文件 前言: 🏘️🏘️个人简介…

wsl2使用open3d等进行图像绘制

在~/.bashrc文件中添加两个环境变量 export DISPLAY"grep nameserver /etc/resolv.conf | sed s/nameserver //:0" export LIBGL_ALWAYS_INDIRECT0 第一行是让wsl将openGL命令(图形绘制命令)输出到哪里,也就是x-server的位置&…

【Linux】指令(上)

⭐博客主页:️CS semi主页 ⭐欢迎关注:点赞收藏留言 ⭐系列专栏:Linux ⭐代码仓库:Linux 家人们更新不易,你们的点赞和关注对我而言十分重要,友友们麻烦多多点赞+关注,你们的支持是我…

机器学习在生态、环境经济学中的应用及论文写作

近年来,人工智能领域已经取得突破性进展,对经济社会各个领域都产生了重大影响,结合了统计学、数据科学和计算机科学的机器学习是人工智能的主流方向之一,目前也在飞快的融入计量经济学研究。表面上机器学习通常使用大数据&#xf…

08_ThreadPool线程池

1. 架构说明 Java中的线程池是通过Executor框架实现的,该框架中用到了Executor,ExecutorService,ThreadPoolExecutor这几个类。 Executor接口是顶层接口,只有一个execute方法,过于简单。通常不使用它,而是…

什么是shell脚本和简单shell脚本练习

文章目录 什么是shell脚本和简单shell脚本练习什么是shell脚本为什么要学习shell脚本第一个脚本编写与执行编写第一个脚本 简单的shell脚本练习简单案例交互式脚本:变量内容由用户决定随日期变化:利用date建立文件数值运算:简单的加减乘除数值…

java内存占用过大分析,mat内存快照分析

背景 最近功能模块上线后,生产内存占用显著提升,查看gc日志发现年轻代频繁从2G回收到60M左右,猜测是在方法中频繁创建大对象导致,由于一时间无法通过review代码找出问题所在,只好将生产jvm内存快照dump后通过java mem…

Zotero+坚果云打造多设备同步的文献管理工具(保姆级教程)

Zotero坚果云打造多设备同步的文献管理工具(保姆级教程) 文章目录 Zotero坚果云打造多设备同步的文献管理工具(保姆级教程)Zotero介绍所需软件或插件实现方式步骤1:坚果云配置步骤2:Zotero配置步骤3&#x…

细讲shell中的循环语句--for语句

目录 一:何为循环 1.循环概述 2.使用循环的好处 二:for循环语句 1.for语句的用法 ​2. 语法结构 (1)一般格式 (2)类C语言格式 (3)死循环 3.事例 ​4.常用转义符 5.制作九九乘法表 三&…