完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
如何在 init.lua 文件中存储更改的变量?
例如:- 假设我使用了 GPIO 05 和 GPIO 04 ,其中第一次在 init.lua 中都是低电平。 但随后 GPIO 05 为高电平且 GPIO 04 为低电平 ,因此如何将最后更改的(板载)值更改为 init.lua,当模块重新启动时,先前的引脚值与启动时的值相同。 |
|
相关推荐
1个回答
|
|
|
要在 init.lua 文件中存储更改的变量,可以使用 NodeMCU提供的文件系统API。可以使用file.open()函数打开一个文件,使用file.write()将更改的变量写入文件,使用file.close()关闭文件,以保存更改。例如,如果要保存GPIO 05和GPIO 04的状态,可以编写以下代码:
```lua file.open("gpio_status.lua", "w+") file.write("gpio_05_status = "..gpio.read(5)) file.write("n") file.write("gpio_04_status = "..gpio.read(4)) file.close() ``` 这将创建一个名为“gpio_status.lua”的文件,并将GPIO 05和GPIO 04的状态写入其中。在模块重新启动时,您可以使用file.exists()函数检查是否存在该文件,并使用dofile()函数读取其中的变量以恢复先前的状态。例如: ```lua if file.exists("gpio_status.lua") then dofile("gpio_status.lua") gpio.write(5, gpio_05_status) gpio.write(4, gpio_04_status) end ``` 这将检查是否存在名为“gpio_status.lua”的文件,如果存在,则使用dofile()函数读取其中的变量,并将GPIO 05和GPIO 04的状态恢复为先前保存的值。 |
|
|
|
|
只有小组成员才能发言,加入小组>>
479 浏览 0 评论
1006 浏览 0 评论
1716 浏览 0 评论
请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗
1375 浏览 1 评论
1258 浏览 1 评论
为blufi_device设置自定义名称,但是无法修改,为什么?
1295浏览 4评论
请问ESP32-S2-WROOM怎么获得ESP32-S2外接FLASH的唯一序列号?
945浏览 3评论
2396浏览 3评论
ESP-IDF的VScode插件的build按钮点击会报错的原因?
2585浏览 3评论
ESP-Jumpstart例程中第5个工程:5_cloud连接报错是哪里的问题?
1077浏览 2评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-18 03:25 , Processed in 1.326893 second(s), Total 70, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
341
