如何在Arduino IDE中运行Lua脚本?(使用Arduino Uno板作为ESP8266的串行提供程序)

我是一个完全的微控制器新手,也只是一个勉强中级的程序员。

如果我通过串行监视器发送这些命令,一切都正常。但是,如果我尝试使用下面的代码,它就不能正常工作,显示错误或其他信息。

#include <SoftwareSerial.h>

SoftwareSerial mySerial(2, 4); // RX, TX

void setup()
{
    // 打开串行通信端口并等待端口打开:
    Serial.begin(9600);
    Serial.println("Goodnight moon!");

    // 设置 SoftwareSerial 端口的数据速率
    mySerial.begin(9600);
    mySerial.println("conn=net.createConnection(net.TCP, 0)");
    mySerial.println("conn:on('receive', function(conn, payload) print(payload) end)");
    mySerial.println("conn:connect(80,'50.87.151.128')");
    mySerial.println("conn:send('GET /devashishproject/time.php HTTP/1.1\\r\\n')");
    mySerial.println("conn:send('Host: kartikkhattar.com\\r\\n')");
    mySerial.println("conn:send('Accept: */*\\r\\n')");
    mySerial.println("conn:send('User-Agent: Mozilla/4.0 (compatible; esp8266 Lua; Windows NT 5.1)\\r\\n')");
    mySerial.println("conn:send('\\r\\n')");
}
void loop() // 循环运行
{
    if (mySerial.available())
        Serial.print((char)mySerial.read());
    if (Serial.available())
        mySerial.write((char)Serial.read());
}

它只会显示乱码。我错在哪里?是电源供应的问题吗?但是,当我通过串行监视器输入这些命令时,它正常工作。为什么我将其放在上述代码中就无法正常工作呢?

原文链接 https://stackoverflow.com/questions/31669507

点赞