问题标签 [software-serial]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
435 浏览

string - 使用ESP8266的软件串口

我正在使用 UART 线上的 STM32F103 将保存在 SD 卡上的 CSV 文件传输到 ESP8266,文件读取和 UART 传输片段如下。 STM32f103 的 While 循环用于读取/传输文件。

使用 ESP8266 代码上的软件串行代码,我可以从 STM32F103 读取传输的字符串,传输字符串的实际长度为 59,但我在串行监视器 ESP8266 串行监视器输出上得到以下输出

软件代码如下

我已经使用上面的代码进行读取,但是在第一个字符串大约 125 之后长度显示不同,并且因为第一次它被复制到 char 缓冲区但进一步显示为空。

如果有人能说明导致此问题的原因以及如何解决它,将不胜感激,谢谢!

0 投票
0 回答
974 浏览

arduino - 带有 ESP8266 的 EspSoftwareSerial:错误没有匹配函数调用“SoftwareSerial::SoftwareSerial()”

我正在尝试使用 EspSoftwareSerial 库(目标 ESP8266)使用 Arduino IDE 1.8.13 进行编程。无论提供我尝试编译的示例,我都会收到一个错误(例如对于程序“servoTester”):

我不熟悉 C++ 和 Arduino(但我很了解微控制器上的 C)。我有点无聊,我到处寻找解决方案,感觉不是唯一一个遇到这个问题的人,但我还没有找到有效的解决方案。

我尝试过了 :

  • 将 <> 更改为 ""
  • 安装 EspSoftwareSerial 库后重启 Arduino
  • 重新安装 Arduino
  • 和各种荒谬的事情%-(

有人有想法吗?

0 投票
0 回答
47 浏览

string - 在 Arduino SoftwareSerial (iSerial.println(String_Variable)) 中使用/操作字符串变量

根据主题,如何操作通过 SoftwareSerial Print/Println 函数传递的字符串?我之所以尝试使 URL 参数动态化以访问不同的网页。

*注意:如果不使用字符串变量,下面的代码片段可以正常工作

*工作是指可以使用SIM900(AT+HTTPPARA)通过simcard访问网页

我什至尝试使用 malloc() 和 toCharArray() 将字符串转换为数组,但是当我使用 SoftwareSerial 打印函数时它仍然无法正常工作。

我是 Arduino 的新手。好心提醒。谢谢!:)

0 投票
0 回答
289 浏览

arduino - 在 Arduino 和 ESP8266 之间处理 GET 请求

您好 :) 我知道有一些关于我要解释的问题的主题。我试图在 Stackoverflow 和其他网站上理解类似的问题,但我没有成功,所以如果有人能帮助我,我会非常感激。

我想通过 ESP8266 将一些值从 Arduino 通过 GET 请求发送到我的网站。在IP之后手动写GET请求,网站正常,所以我丢弃了我的php文件的问题(你可以检查底部的图片)。

但是,通过 Arduino 和 ESP8266,我可以建立 TCP 连接,但我的 HTTP 请求没有发送。

在 SerialMonitor 中,我得到了这个:

在此处输入图像描述

在IP后面手动引入GET请求,就可以了:

在此处输入图像描述

非常感谢您!

0 投票
1 回答
108 浏览

mp3 - YX5300串口mp3播放器模块如何连接esp32?

我对 IOT 和 esp32 还很陌生,但到目前为止我还是自己学习,但是,当我尝试将 YX5300 串行 mp3 模块连接到我的 esp32 时,我什至很难让 #include 库正常工作。

我将 vscode 与 platformio 一起使用,并在我的项目中安装了“SerialMP3Player”库以使其工作。

将库安装到我的项目后,我收到错误说还需要安装“SoftwareSerial”库,所以我安装了它,现在,在这样做之后,我当前的错误是:

安装两个库后我收到的构建错误

所以我的问题是现在该怎么办?继续查找并安装在构建错误中弹出的库,还是我只是遗漏了一些明显的东西?

另外,是否可以将此模块连接到 esp32 板?我只遇到过使用 arduino 板变体的示例。

谢谢!

0 投票
1 回答
60 浏览

arduino - Arduino SoftwareSerial Write蓝牙切断静态短信回写

我对 Arduino 很陌生,所以这可能是一些我不知道的非常简单的 C/C++ 问题

我正在研究一个 RGB LED Cube,它是根据 GreatScott 的视频制作的。它工作正常。我决定通过添加蓝牙来改进可以用它完成的事情。我正在使用来自 DSD 技术的 HM-11。

我可以毫无问题地通过蓝牙将命令从手机写入 arduino,并使用它来交换模式。

我面临的问题是当我尝试通过蓝牙回写手机时。我正在通过蓝牙发回帮助文本,以便连接到它并发送帮助的任何人都可以找到支持的命令列表。使用 SoftwareSerial,我有以下(问题区域的片段):

当它运行时,串口接收:

============== RGBCube 蓝牙帮助 =============== 命令:
mode:# 选择在
帮助中操作的模式 拉起帮助屏幕(this)模式仅限 4:
reset 将立方体重置为黑色
pt:x,y,z=r,g,b 将 (x,y,z) 处的 LED 设置为 rgb set:r,g,b;r,g,b... 设置整个立方体到
指定的颜色
64 色长。
比 64 点呼叫更快

但我的手机最多接收:

============== RGBCube 蓝牙帮助 =============== 命令:
mode:# 选择在
帮助中操作的模式 拉起帮助屏幕(this)模式仅限 4:
reset 将立方体重置为黑色
pt:x,y,z=r,g,b 将 (x,y,z) 处的 LED 设置为 rgb set:r,g,b;r,g,b... 设置整个立方体到

如您所见,这是被截断的。我尝试了很多事情,包括将字符串推入 progmem,将其分割成更小的字符串,用于循环的 Char 数组,强制将其保存在闪存中等。将其切割成更小的字符串是可行的,但我真的不想那样做,因为我要添加的下一件事是从手机到 arduino 的类似长度写入。

有时也会出现更少的字符,但这是平均值和最大值,这让我觉得有某种形式的限制,但它不是 2 的倍数(我最后数了一下大约 80ish)

任何帮助将不胜感激。

0 投票
1 回答
50 浏览

arduino - Arduino 顺序软件serial.print() 覆盖自身

我仍然无法从 DSD 技术的 HM-11 蓝牙写入手机应用程序(Play 商店中的串行蓝牙终端 1.35)。

根据我上一篇文章的结果,我的代码目前将一个大字符串切成 2,因为 BLE 的最大缓冲区约为 252 字节。我面临的问题是目前需要delay(450)来防止乱码。

延迟输出:

============== RGBCube 蓝牙帮助 =============== 命令:
mode:# 选择在
帮助中操作的模式 拉起帮助屏幕(this)模式仅限 4:
reset 将立方体重置为黑色
pt:x,y,z=r,g,b 将 (x,y,z) 处的 LED 设置为 rgb set:r,g,b;r,g,b... 设置整个立方体到
指定的颜色
64 色长。
比 64 点呼叫更快

不延误:

============== RGBCube 蓝牙帮助 =============== 命令:
mode:# 选择在
帮助中操作的模式 拉起帮助屏幕(this)模式仅限 4:
reset 将立方体重置为黑色
,b;r,g,b... setspt:x,y,z=r,g,b 整个立方体到

我认为这与清除串行的速度有关,但是花那么长时间没有意义,因为 450 毫秒在计算机时间中非常长,尤其是在蓝牙的 115200 波特时

0 投票
0 回答
96 浏览

esp8266 - ESP8266 SoftwareSerial 丢失从 Nextion 返回的最后一个字节(但适用于 Nano)

我从连接到 esp8266(Nodemcu v0.9)的 Nextion 返回的数据有问题。我正在以 9600 b/s 的速度与 Nextion 通信。

我有代码可以解析通过 IDE 的串行控制台输入的命令,并将适当的命令发送到 Nextion。这里的相关命令是“getn xxxx”,它要求从 Nextion 获取数值

例如,“getn 123”发送一个“get 123”,期望得到一个数字结果。(有一个 'gets 123' 发送一个 'get "123"' 但这里没有使用)

当我发送一个“getn 123”后跟一个“getn 222”时,这就是我得到的

请参阅下面的代码清单。

任何有关上述内容的帮助将不胜感激!

0 投票
0 回答
58 浏览

arduino - 带有 DFPlayer 的 Arduino Nano BLE 33 不工作

我对 Arduino 电路很陌生,我正在尝试将 DFPlayer Mini 连接到 Arduino Nano BLE 33 Sense。如果我理解正确,库“SoftwareSerial”在 BLE Sense 上不起作用,并且我无法找到使 DFPlayer 正常工作的方法(我也尝试使用 HardwareSerial,但由于某种原因它不起作用) . 你知道有什么方法可以修复连接或找到替换库吗?这是我的代码

我通过编译得到的错误是这个

先感谢您!