问题标签 [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 回答
1781 浏览

arduino - Arduino 发送 ascii 字符而无需回车

我正在使用 Ciseco srf 模块,试图从 arduino nano 发送“+++”。我的代码是

<CR>问题是 Arduino 似乎发送回车 Serial.write("+++")或其他组合。有人可以帮我关闭 Arduino 上的回车并严格编程串行通信吗?

0 投票
1 回答
326 浏览

arduino - Arduino Yun 和软件串行错误

我正在尝试将一个 nrf24L01 模块连接到 arduino yun,它的打印结果是乱码。

这是我的代码:


这是输出:

它应该是:

不确定数字,但我确定文字

0 投票
1 回答
1346 浏览

arduino - Arduino 软件串行与 SPI 冲突?

我有一个 Arduino 项目,它在 SPI 上使用 nRF24l01+ 无线电模块(使用此库:http ://tmrh20.github.io/RF24/ )和在软件序列上的 RFID 阅读器。我正在睡觉我的 Arduino,并让他们在收到消息或准备读取 RFID 标签时通过中断将其唤醒。RFID 位于引脚 4 和 5 上,而 nRF 覆盖引脚 9 - 13 以及用于中断的 2 号引脚。

这两个模块都可以分别与睡眠和中断代码一起正常工作,但是当组合成一个草图时,Arduino 会由于 RFID 标签而唤醒,读取它,然后尝试通过无线电发送一些东西,然后就挂了,等待库调用 write() 返回。

我已经深入研究了这两个库,但我大多无法确定软件序列库的正面或反面。它似乎可能在幕后使用与我的 nRF 模块相同的 ISR,但我没有立即明白为什么这应该是一个大问题,我不明白为什么它会导致收音机挂起。

我知道这可能是一个很长的镜头,但有人知道会发生什么吗?也许有人知道这些库?关于变通的任何想法?谢谢。

0 投票
3 回答
1134 浏览

c++ - Arduino/c++ 在另一个类中使用 SoftwareSerial 类

我正在尝试建立一些课程,自从我制作 OOP 以来已经有很长时间了,而且大部分时间我都忘记了一切;)

我正在尝试在我从 SoftwareSerial 中读取的内容中构建类,然后用它来做一些事情。

我制作了这段代码:

但是得到这个:

我试图自己找到解决方案,但不知何故我迷路了......

最好的问候!

0 投票
2 回答
433 浏览

arduino - 使用 intel galileo gen2 时 SoftwareSerial.h 库消失

每次我将 intel galileo gen2 与 arduino 一起使用时,SoftwareSerial.h 库都会从标准 arduino 库列表中消失。我已经卸载并重新安装了新的 arduino IDE,检查了库,我可以清楚地看到库存在。但是当我连接我的 Intel Galileo gen2 时,它就消失了。我该如何解决?我真的需要使用那个特定的库。

0 投票
2 回答
718 浏览

arduino-uno - Arduino SoftwareSerial 库不起作用

我有一段非常简单的 Arduino Uno 代码。使用 SoftwareSerial 库。

rxPin 和 txPin 直接相互连接。Arduino 也通过 USB 连接到 PC。我没有来自 mySerial.available() 循环的响应,mySerial.read() 返回 -1。有谁知道,问题可能出在哪里?SoftwareSerial 对我不起作用。

0 投票
1 回答
5732 浏览

arduino - SoftwareSerial 示例未按预期工作

我最近买了一个 Arduino UNO 来读取我的 Smart Meter 输出的数据。仪表使用串行通信,我想在我的笔记本电脑屏幕上看到输出的值。我想我需要使用 SoftwareSerial 库来读取传入的数据,并使用 Arduino IDE 中的硬件串行和串行监视器在我的屏幕上打印该数据。为了熟悉 Arduino 上的(软件)串行通信,我查看了 SoftwareSerial 库的文档。问题是,我无法让最基本的示例工作,而且我已经坚持了很长一段时间。示例代码如下,示例可以在这里找到

据我了解,应该会发生以下情况: - 在串行监视器窗口中键入文本。-Serial.read()读取此数据并将其写入软件序列号。- 软件串行读取此数据并将其写回串行。- 所写的内容出现在屏幕上。

但无论我尝试什么,都没有任何反应。在我试图遵循的事情中: - 更改软件和硬件串行的波特率(例如 9600)。- 尝试了不同的 SoftwareSerial 库 (AltSoftSerial)。- 为 SoftwareSerial 尝试了不同的 RX 和 TX 引脚。- 而不是Serial.write(mySerial.read());,将结果存储在char第一个。

我可能遗漏了一些明显的东西。我将感谢任何能够对此有所了解或提供另一种方式让我从我的智能仪表读取数据的人。

编辑

我没有接线,因为示例指定“此示例没有电路”。我尝试了@slash-dev 建议的所有三个选项,但没有一个具有预期的行为:

SoftwareSerial用电线将针脚 1 连接到针脚 10,针脚 0 连接到针脚 11。它打印出奇怪的字符:

AltSoftSerial用电线连接 1-8 和 0-9。首先打印Goodnight moon!,然后继续打印Ô당¥�¡Ñ�moon!

NeoSWSerial用电线连接 1-10 和 0-11。相同AltSoftSerial但继续打印Ôë‹–+ë¡Ñ�j½½¹…j

0 投票
1 回答
251 浏览

arduino - Arduino函数执行时间

我有一个 Arduino 和一个 APC220 无线收发器。我正在编写一个使用 SoftwareSerial 类从 APC 读取数据的库。我最初从下面的(不正确的)代码开始,它导致了段错误,因为i即使没有可读取的数据,变量也会递增。如果它碰巧起作用(碰巧当数据立即可用时),这个函数大约需要 6 毫秒来执行。当我将i++;语句放在适当的位置(在它正上方的右大括号上方)时,该函数需要超过 270 毫秒才能运行。速度对于此功能至关重要,所以我想知道该语句的位置是什么导致时间如此显着增加。

对于下面的代码,buff被声明为char buff[10];并且 sSerial 是SoftwareSerial

0 投票
2 回答
1133 浏览

avr - 为什么 SoftwareSerial 在 Atmega128 上不起作用

我正在 Atmel Studio 7 中编写一个我刚刚安装并开始使用的程序。我已经为 Arduino 建立了工作室,并将 Atmega128 添加到支持的芯片库中。那里一切都很好。当我尝试使用 SoftwareSerial 库并编译时,我收到 Atmega128 和 Atmega64 不支持 SoftwareSerial 的错误。为什么是这样?这个 AVR 与 atmega328 等有什么不同,以至于它不支持该库。在 atmega128 上使用 SoftwareSerial 或 SoftUart 是否有更好的方法?谢谢

0 投票
0 回答
592 浏览

arduino - 软件系列问题

我有一个 Genuino101 板和 HM-11 模块。我试图设置模块的参数,如名称等。所以我从一个简单的代码开始,但它不起作用。如我们所见,我的串行监视器应该显示“SETUP 1”和“SETUP 2”。但这就是我的串行监视器所显示的。

SETUP 1

它没有显示或打印“SETUP 2”。所以我猜问题介于两者之间。我试图评论mySerial.begin(4800);并看到这一点。

它可以正常工作,只是我删除了mySerial.begin(4800).

这是软件序列问题吗?我也尝试将波特更改为 9600,但仍然出现问题。看起来像mySerial.begin(4800)暂停了arduino。请帮忙。

编辑:

问题是代码中途暂停,因为 RX/TX 引脚互换导致软件串行初始化错误。该问题在交换 RX/TX 引脚后自动修复。