gpt4 book ai didi

lua - 如何使用Nodemcu(Lua)进行多个串口通信

转载 作者:行者123 更新时间:2023-12-02 19:36:50 24 4
gpt4 key购买 nike

____________
| |
| N |
| O Rx2|<------Tx EnergyMeter(Returns value based on command)
| D Tx2|------>Rx EnergyMeter(Receive command)
| E |
| |
| M Rx1|<------Tx Gsm(For MQTT)
| C Tx1|------>Rx Gsm(For MQTT)
| U |
| |
-----------

我正在尝试将 Gsm 模块和电表与我的 Nodemcu 连接起来,如图所示。虽然可以通过 Arduino 编码实现,但我只想使用 lua 来实现。

在lua脚本的情况下,如果我使用“uart.alt()”这个函数,然后单击“保存到Esp”,那么在“uart.alt()”行,保存过程会跳转到不同的usart并且代码没有完全保存到 ESP 中。

那么在nodemcu中使用多个usart的有效方法是什么(类似于arduino中的软件串行)?

I am using
Nodemcu model : ESP8266
Nodemcu Version : 3
& NodeMCU custom build by frightanic.com branch: 1.5.4.1-fina

我没有得到任何符合我的要求的完美例子。所以,请给我一个关于这个问题的完美文档或示例。

谢谢。

最佳答案

您没有给出 NodeMCU 的品牌,但由于 ESP32 上没有 uart.alt,我猜是 8266
因此,如果您的 NodeMCU 是 ESP8266,则您的设置存在问题:
来自 ESP8266 documenation :
尽管 NodeMCU 有两个 UART(0 和 1)可用,但 UART 1 无法接收数据,因此只能发送。我不是 LUA 专家,但我想这就是编译器想告诉你的。
是的,有一个 ESP32 version of NodeMCU OP 只是声明他使用 NodeMCU 并没有提供更多信息。

uart.alt()  Change UART pin assignment. 

-表示您可以分配UART 0的引脚

 uart.alt(on)
Parameters

on

0 for standard pins
1 to use alternate pins GPIO13 and GPIO15

因此,这只适用于 NodeMCU ESP8266 上的一个 uart (UART 0)。

如果您使用基于 ESP32 的 NodeMCU
启用UART 1会导致ESP32崩溃!原因是默认情况下,UART 1 使用与 ESP32 闪存相同的引脚。

查看官方documentation of the NodeMCU ESP32 dev board
因此,在提问时请务必提供 NodeMCU 的版本和主板类型。

关于lua - 如何使用Nodemcu(Lua)进行多个串口通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60919044/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com