- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在寻找其他开发平台来处理基于 Atmel (Arduino/ATTiny) 和 Espressif (ESP8266) 的设备。最近,我安装了 PlatformIO。但是我在似乎是对全局范围的认可方面遇到了麻烦。不确定...
我有一个头文件,其中包含配置结构的 typedef:
typedef struct {
char idPrefix[8];
char defPass[16];
char targetSSID[32];
char targetPass[64];
uint8_t beepInRange;
uint8_t beepOutofRange;
} devConfig;
我想在我的 ino 文件中分配一个配置变量:
devConfig myConfig;
但是当我尝试在我的设置或循环中访问它时,例如:
void setup() {
strncpy(myConfig.defPass, "somepass", 16);
}
当我尝试平台运行时,它吐出“错误:‘myConfig’未在此范围内声明”
这个东西是不是和arduino一样不支持全局变量?我究竟做错了什么?感谢您的帮助。
最佳答案
我想你一定忘记了在主代码中添加#include "Arduino.h"
头文件。另外,请注意 Platform IO 编译的是 cpp 文件而不是 ino 文件。
main.cpp
// Without Arduino.h this code will not compile
#include "Arduino.h"
#include "demo.h"
devConfig myConfig;
void setup() {
strncpy(myConfig.defPass, "somepass", 16);
}
void loop() {
}
演示.h
typedef struct {
char idPrefix[8];
char defPass[16];
char targetSSID[32];
char targetPass[64];
uint8_t beepInRange;
uint8_t beepOutofRange;
} devConfig;
关于c++ - PlatformIO 的范围问题(?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44004422/
我一直在寻找其他开发平台来处理基于 Atmel (Arduino/ATTiny) 和 Espressif (ESP8266) 的设备。最近,我安装了 PlatformIO。但是我在似乎是对全局范围的认
我有几个用于家庭自动化的微 Controller 项目。我的每个节点都有一个在代码中手动设置的版本号。这个版本号是在节点启动的时候上报的,通知我运行的是哪个代码。 有时在对代码进行一些更改后会忘记更改
我安装了 PlatformIO 来为 ESP32 开发程序。 PlatformIO 自动安装“一切”来创建 ESP-IDF 项目。 部分可行,但有些东西(如 menuconfig)在 Platform
如何将 STM32F103C8 配置为使用内部 RC 振荡器/HSI 和 PLL 运行,即没有外部晶体振荡器(如“蓝色药丸”板上的那样)和 PlatformIO 中的 Arduino 框架? http
我是新使用platformio IDE关于开发arduino。我用的是Arduino UNO。在初始化时,我添加了这个平台-arduino uno。但我没有看到端口 tty.usbmodem1411。
我正在尝试使用 PlaformIO 中 ESP-IDF 框架库中的示例来设置无线更新(OTA)更新。 ota simple_example main.c 文件导入一个名为 esp_http_clien
如果我尝试在库中执行它,我无法包含它,但如果我在 main.cpp 中执行它,它工作正常 这里是树的输出(文件夹结构) . ├── include │ └── README ├── lib │
当我在 PlatformIO(Atom 的微 Controller 插件)的 src 文件夹中创建两个代码文件时,在构建和上传到我的 Arduino 时出现错误。有没有办法在没有错误的情况下执行此操作
我正在使用PlatformIO package ,并且我想覆盖允许我在嵌入式终端中聚焦和聚焦的快捷方式。默认快捷键是 ctrl + alt + f。我想将其更改为 esc。 我在我的 keymap.c
我对 Atom/PlatformIO 相当陌生,并尝试使用它与 Arduino 一起开发作为 Arduino IDE 的替代品。 ~规范~ base code used: Arduino ESP sa
我目前正在尝试通过 Atom 上的 Platformio IDE 在 C++ 上的 BBC microbit 上进行开发。 我已经让该软件与其他板(我拥有的各种 NUCLEO 板)一起工作,并且 mi
我正在使用 PlatformIO 和 CLion 对 ATMega324P 微 Controller 进行编程。该项目是在 mac 上使用 PlatformIO 创建的,并在 CLion 中打开。我可
我正在使用 PlatformIO 作为 AVR MCU 编程的 IDE。我正在开始 AVR 编程(我有 C/C++ 背景和在操作系统上编程,而不是嵌入式,尽管我过去做过一些 Arduino 的东西)并
我有 VSCode 和 PlatformIO 插件。 当我启动串行监视器时,它总是以 9600 波特率开始。我想改变它,所以它总是以 115200 开头。 我可以通过按 CTRL+T, b, 1152
我正在尝试使用 PlatformIO 让 Kafka 在 Esp32 上工作。 我尝试使用 platformio.ini 文件中表达的构建标志将 C 库链接到 PlatformIO 中构建的项目。我正
今天早上,当我尝试从 platformio-ide-terminal 包中的 atom-editor 中打开终端时,它只是一片空白。我卸载了软件包,当我尝试重新安装它时,显示了以下失败消息: Inst
我最近不得不删除我的电脑,在让所有东西都启动并运行之后,是时候打开我之前正在处理的一些 ESP32 程序了,我发现 VSCode 上的 Platform IO 将不再编译。运行编译器后出现以下错误:
在 Windows 上,Atom's Platformio-Ide-Terminal 的默认终端是 Powershell(至少,这是我在没有任何配置的情况下得到的)。 我更喜欢使用 unix 类型命令
我是一名优秀的程序员,十分优秀!