问题标签 [arduino-c++]

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 投票
2 回答
130 浏览

c++ - 如何使用函数作为 C++ 中类的初始化程序

我正在尝试创建一个在初始化时接受函数作为参数的类。理想情况下,该功能应该已经存在。我知道在 Python 中,我可以这样做:

我怎样才能在 C++ 中做到这一点?(如果重要的话,我正在使用 Arduino)

0 投票
1 回答
276 浏览

button - 如何仅在释放按钮时使连续旋转伺服移动45度?

由于millis()函数,我有一个程序每100毫秒更新一次。该程序正在等待一个按钮被按下,当它发生某些事情时。现在,我想知道按钮何时被释放,等待大约半秒钟,然后将连续旋转伺服移动大约 45 度。

我怎么做?附上我的部分代码。

0 投票
2 回答
1768 浏览

arduino - 如何为 Arduino 代码提供条件编译?

我正在研究基于 Arduino 的代码,其中我需要为串行命令提供条件编译以在串行终端上打印数据。

我在代码开头使用“#define DEBUG”,如果它被定义,那么所有的串行打印命令都将被执行,并且在串行监视器上会有数据,否则它将跳过代码中的串行打印命令。

现在,我需要开发一个代码,以便用户可以输入是否在代码中包含“#define DEBUG”语句,以选择DEBUG模式/非DEBUG模式在串行终端上打印数据。意思是需要为条件编译语句提供条件。

下面是我的代码

目前,当我不需要在终端上打印串行命令时,我正在手动注释“#define DEBUG”语句。

请建议。

感谢和问候...

0 投票
2 回答
52 浏览

arduino-c++ - 使用指针 Arduino 调用函数时出现问题

我对 C++ 和除了 Arduino 的基础知识还很陌生,所以我坚持这一点。我收到了一个函数,可以包含在我的代码中,对我正在读取的传感器值进行一些计算。我在这里和网上搜索并阅读了很多类似的主题,但没有找到任何可以帮助我解决我缺乏理解的东西。

我设置了一个带有循环的基本 Arduino 草图,以读取传感器值。然后我#included头文件并将函数添加到循环外的代码底部,只是为了查看它是否会编译,它没有任何错误。所以现在需要调用函数并向它传递 2 个值,millis()以及我刚刚读取的传感器值。

部分头文件...

草图的循环部分

提供的功能...

编译错误...

所以结构是在头文件中设置的,但问题似乎出在指针上?还是我只是没有正确调用该函数?

0 投票
2 回答
615 浏览

arduino - Serial.print() 使用什么类型的变量?

在 arduino 上,我需要在类似的函数中使用 Serial.print();

Serial.print可以接受任何类型的变量,例如int,doubleString. 我怎样才能获得相同的行为,serial_send所以我不必指定类型?

0 投票
2 回答
1799 浏览

arduino - 用键盘输入一个数字并将一个数字存储到 EEPROM

嗨,我在编码方面没有太多经验,只是一个基本的员工,所以我需要帮助

但我需要修改如下:首先,当用户按下“#”键时,他必须写出类似于产品价格的数字,其次,当用户按下“A”键时,价格/数字必须存储到 EEPROM 存储器中,第三,当用户按下“B”键时,必须从 EEPROM 存储器中读取价格/编号,

当我按下“*”键时,它可以工作,但这不是内存中的数字,这只是 LCD 上的打印数字,

我的问题是当我按下 LCD 上的“B”键时,我得到了一些奇怪的字符

我需要使用 EEPROM 的代码

这是我的代码:

0 投票
1 回答
2330 浏览

c++ - 如何在arduino中将十六进制UTF-16字符转换为字符串

我正在开发一个在显示器/LCD 上正确显示阿拉伯语单词的功能。(阿拉伯字母有四种不同的模式。)我有一组Map array不同状态的阿拉伯字母 ( )。识别阿拉伯语字母后,我需要重新对齐字母。我的问题是如何将 Unicode 字符通过表 ( Map Table)放入String variable(pBuffer)?

例如:要写单词باب,您需要从中选择字母Map table并将其放在 aString中以发送到显示器/LCD。

不幸的是,上面使用的方法不起作用。如何从上面的“地图”表中选择字符并将它们放在一个String变量中?

0 投票
0 回答
1088 浏览

esp32 - 从 WiFi 到 ESP32 上的蜂窝 3/4G

我正在使用 ESP32 模块上的 Wifi 构建一个项目。使用 RTOS,我在 1 个内核上运行 Web 服务器,在另一个内核上运行 Web 客户端。这很好用,我可以通过浏览器和 WiFi 提供的 IP 地址远程访问 Web 服务器。Web 客户端读取一些传感器并通过 WiFi 将数据发送到我的数据库。一切都很好,一切都按预期工作。

现在我需要进行下一步,超越 WiFi 的范围,并通过 3/4G 蜂窝网络重现相同的结果。我查看了使用工业 3/4G WiFi 路由器的“简单”解决方案,并简单地保留我所拥有的。这些“工业”型路由器的成本偏高,其中还包括 GPS 芯片的 3/4G 模块约为一半或更少。问题是我无法理解如何用这些模块之一“替换”我当前的 WiFi 功能。这些模块似乎希望您通过串行 (rs232) 连接并使用调制解调器 AT 命令建立与 Internet 的连接。问题是,连接到互联网后,如何继续拥有“网络功能” 与内置 WiFi 一样吗?是否有一些库可以通过串行端口进行以太网?我还能让 WiFi 和“串行以太网”同时运行或在两者之间切换吗?

谢谢!

0 投票
0 回答
277 浏览

c++ - Arduino 缺少数据 Serial.println()

我正在使用通过 SoftwareSerial 连接到 Arduino Uno 的 ESP8266 向模块 DHT22 捕获的温度值的 API 发出发布请求。我在通过 TCP 连接发送数据时遇到问题,我认为它来自数据的构造方式(变量 postRequest)。

我总是得到输出:“--> ESP8266 没有监听传入的数据”。让我认为问题出在 postRequest 变量的另一件事是因为当我尝试将变量打印到 Serial.monitor 时,字符串中缺少一些行。我已经尝试通过添加 Serial.flush(), 延迟来解决这个问题,但这些都不是解决方案。

0 投票
1 回答
151 浏览

arduino - 为什么我的音频声音没有在我的 arduino 代码中播放,但是如果我单独播放它,它开始工作得很好

我正在尝试设置计时器,之后音频将自动播放一次,但它不会播放任何噪音,但是当我单独运行音频程序时,它工作得非常好

这是我的代码,请帮助我找出我做错的地方。

我的预期输出是它应该在我设置时间时播放声音