C++
C++ — это стандартный язык, используемый для программирования Arduino IDE. Большая часть кода Arduino в Интернете написана на этом языке.
C++ — один из самых популярных доступных языков кодирования, поскольку он является кроссплатформенным. Однако перенести код Arduino в код ПК (и наоборот) очень сложно, даже если игнорировать тот факт, что ваш компьютер не может запустить двигатель. Например, в коде C++ первым вызывается main. В Arduino C++ по-прежнему вызывается main, однако вызываются библиотеки Arduino, а не ваш скетч. Эти библиотеки затем вызывают setup , а затем несколько раз loop после завершения всех задач инициализации, которые они должны выполнить, прежде чем Arduino сможет запустить код вашего скетча.
Произносится как "С плюс плюс".
Вопросы, связанные с [c++]:
- Целочисленное деление ардуино Я хочу разделить два целых числа и получить, как часто одно из них полностью вписывается в другое, так что на выходе всегда будет целое число. В python вы выполняете такого рода операции с помощью…
- RxCpp на Arduino? Я хотел бы использовать некую шину событий на Arduino. В последнее время я использую Reactive Extensions на различных платформах: Android, Angular, iOS и т. д., и нахожу их очень полезными. Я…
- Датчики TFmini с Arduino У меня есть три датчика TFmini, и мне нужно, чтобы все они были обнаружены. У меня на работе только один , контакт 4,5 . Моя информация в области кодирования является базовой . Я действительно ценю…
- Кнопка не нажата, но продолжает печатать или вводить 1/HIGH У меня есть код Arduino, который выводит 1 в последовательный монитор и даже выводит две единицы. Я даже не нажимал и не щелкал кнопку, но она уже установлена в состояние HIGH и даже активируется в…
- `sprintf` %04d и %03x одновременно на Arduino У меня есть этот код , работает отлично! uint32_t id , id2; char s[64]; // Должно быть достаточно ... id2 = id = CAN.getCanId(); sprintf (s, "%04d : ", id ); // !!! ЗДЕСЬ !!…
- Будет ли .ino-скетч ардуино компилироваться непосредственно на GCC-AVR? Хорошо, мы все видели эти вопросы по всему Интернету, такие как Arduino против C++ или другие подобные вопросы. И подавляющее большинство ответов даже не касаются различий в компиляции, кроме…
- Почему использование serial.readBytes увеличивает размер программы на 10 КБ? Если я добавлю это в свою программу Arduino, в main.cpp, у меня внезапно закончится память для размера флэш-программы: if(msgSize > 2) { //sr::sequentialRead(&serialRead, newTram…
- Может ли увеличение размера программного буфера RX вызвать проблемы в Arduino Uno? Если бы я увеличил размер буферного массива с 64 до, скажем, 512, возникли бы какие-либо долгосрочные проблемы в Arduino Uno? Изменение с этого: #ifndef _SS_MAX_RX_BUFF #define…
- Как работают прерывания на Arduino Uno и аналогичных платах? Пожалуйста, объясните, как работают прерывания на Arduino Uno и подобных платах с процессором ATmega328P. Например, на таких платах: Уно Мини Нано Про Мини Кувшинка В частности,…
- Доступ к неверному ключу в ArduinoJson приводит к перезагрузке ESP32 Я работаю над проектом, в котором несколько плат ESP32 взаимодействуют через WebSockets. Для этого я использую Arduino IDE 2.3.4. В основном, обмен данными осуществляется через JSON, данные…
- Режимы открытия файлов на SD-карте Arduino добавление/перезапись При запуске Arduine IDE Пример SD DataLogger мои данные добавляются в текстовый файл. File dataFile = SD.open("datalog.txt", FILE_WRITE); if (dataFile) { dataFile.println(dataString); …
- Передача массива в качестве аргумента функции Пожалуйста, помогите, как это сделать. int myArray1[] = {10, 11, 12}; int myArray2[] = {15, 16, 17}; void setup() { Serial.begin(9600); } void loop() { myFunction(myArray1); delay(1000);…
- Показания датчика давления ESP32 (RFP602 ) Я использую два датчика RFP602. Один подключен к GPIO2, другой к GPIO4, каждый подключен к сопротивлению 1 МОм. Датчик, подключенный к GPIO2, считывает данные так, как мне нужно. Мне приходится…
- Как использовать пользовательские модули C++ в Arduino Поддерживает ли Arduino функцию импорта модулей C++, т.е. что потребуется для реализации чего-то вроде этого в Arduino: import std; ?
- Полностью ли поддерживается C++ STL на Arduino? У меня пока нет платы Arduino для запуска кода, и, как следует из заголовка, мне интересно, поддерживается ли C++ STL полностью на Arduino и является ли он частью Arduino IDE. STL, вероятно,…
- Отображение двоичных данных на светодиодах Я написал программу для Arduino UNO и 3 светодиодных лампочек. Программа должна преобразовывать введенное число в двоичное, а затем отображать его на светодиодах, вкл. - 1, выкл. - 0. Я просматривал…
- Значения частных переменных класса недоступны в публичной функции Я экспериментирую с классами в коде Arduino. У меня есть следующий небольшой фрагмент кода: #include "Motor.h" #include "Arduino.h" Motor::Motor() { } void…
- Как работает последовательная связь на Arduino? Относительно плат Arduino Uno, Mega2560, Leonardo и аналогичных: Как работает последовательная связь? Насколько быстр последовательный порт? Как установить связь между отправителем и…
- Проблема с переменной char* malloc/free. Пустое содержимое в переменной получателя после использования free Я работаю над пользовательским регистратором данных SD-карты, используя следующую функцию и структуру: char *filenameCreator(const char *prefix, const char *num, bool addExtension) { char…
- Проблема с чтением данных из ELM327 Идея заключалась в создании устройства Bluetooth на базе Arduino для считывания данных с машины (ELM327 v2.1) с использованием модуля Bluetooth HC-05. В этом коде модуль bluetooth переключается в…
- deserializeJson() не удалось: NoMemory при отправке последовательного json с использованием ArduinoJson Привет всем! У меня есть скетч, который занимает 99% места на моем диске, так как я использую Arduino Nano. Хотя все в моем коде подходит как есть, похоже, есть проблема с отправкой строки json…
- Как отправить несколько декодированных ИК-сигналов в одном скрипте? Моя конечная цель — использовать мой микроконтроллер Arduino в качестве «автоматического пульта дистанционного управления». Сейчас я хотел бы узнать, как отправлять декодированные протоколы NEC…
- Как определить, было ли нажато более одной кнопки Я проектирую велосипедный указатель поворота, использующий в качестве входных данных две кнопки, по одной с каждой стороны, с соответствующей подсветкой для каждой кнопки. Идея такова: Нажатие…
- Почему функция server.on() из "ESPAsyncWebServer.h" выполняется на стороне setup(), а не на стороне loop()? Я реализую пример, в котором 2 ESP32 обмениваются данными друг с другом, используя протокол HTTP. Один действует как Сервер, другой - как Клиент. В приведенных примерах мне интересно узнать об…
- Объявленная переменная внутри void setup не видится в void loop Если я объявлю переменную в void setup() и попытаюсь что-то с ней сделать в void loop(), он просто скажет, что переменная не объявлена. вот код: #include "Servo.h" void setup() { Servo…
- Ввести идентификатор чипа ESP32 в строковую переменную (новичок в Arduino/C++) Прошло всего несколько дней с тех пор, как я начал использовать Arduino IDE ( программирование ESP32 ). По мере того, как я учусь, я пытаюсь написать несколько фрагментов. Я хотел сохранить…
- Перечисление классов не было объявлено в этой области Я программирую Arduino. В том же файле .ino , что и setup() и loop () , я определил следующее: void setup() { // код настройки } enum class CYCLE { TypeA, TypeB }; String cycleToString…
- Куда должны идти модульные тесты в Arduino IDE У меня есть проект Arduino, файловая структура которого выглядит так myProject/ myProject.ino ImportantClass1.hpp ImportantClass1.cpp ImportantClass2.hpp ImportantClass2…
- Ошибка: expected unqualified-id before 'if' Это мой скетч или код: const int EchoPin = 5; const int TriggerPin = 6; const int LedPin = 13; void setup() { Serial.begin(9600); pinMode(LedPin, OUTPUT); pinMode(TriggerPin, OUTPUT); …
- Избегайте математических вычислений с плавающей запятой, чтобы ускорить Arduino Я читал и слышал, что математические вычисления с плавающей запятой выполняются намного медленнее, чем математические вычисления с целыми числами. И я видел здесь процесс конвертации от чисел с…
- Альтернатива опросу флага прерывания из основного цикла? Я использую ISR, который написан как можно более минимальным: volatile bool interrupt1{}; void ISR1() { interrupt1 = true; } Прерывание обрабатывается путем опроса переменной прерывания1…
- Использование Adafruit RTClib без фрагментации кучи Я готовлюсь добавить поддержку DS1307 в свое приложение Arduino и был в ужасе , когда посмотрел на исходный код класса RTC_DS1307 в библиотеке RTClib от Adafruit... DateTime RTC_DS1307::now() { …
- Как использовать два пьезоэлемента одновременно? Я пытаюсь воспроизвести короткий музыкальный клип с двумя пьезоэлементами и хочу, чтобы они воспроизводились одновременно. Пока играет правый пьезо, я хочу, чтобы левый продолжал зацикливаться.…
- Условие «если» проблема/вопрос Я новичок в Arduino, и мой вопрос скорее теоретический. У меня есть плата Arduino Nano (процессор Atmega168), кнопка, дисплей. Я написал обработчик кнопки, который не останавливает выполнение кода.…
- Как написать эффективные функции обратного вызова на Teensy 4.0? Я рассматриваю возможность рефакторинга своего кода путем реализации функций обратного вызова, чтобы иметь возможность повторно использовать абстрактную логику других функций/классов. Однако я…
- Правильное использование * и & при передаче объектов в методах. В C# указатели несколько незнакомы, хотя я понимаю эту концепцию. Правильно ли создавать методы следующим образом и передавать объект (в качестве параметра), созданный по ссылке? Если нет, то…
- Клиент ESP32 SocketIO не подключается к серверу Flask-SocketIO Я пытаюсь подключить клиент ESP32 с помощью SocketIO к серверу Flask-SocketIO , но он не подключается. Сервер использует SSL. Адрес локального сервера: https://192.168.1.137:3000 . Является ли …
- 6-контактный BME280 не дает сигнала 12C Я создаю пакет телеметрии для модели моей мамы с MPU6050, BME280 и устройство чтения/записи SD. Весь код, который я нашел для BME, не считывает никакой информации. Когда я загружаю средство…
- Почему char «расширяется» до int? Я знаю, что упускаю что-то очень простое, но не могу этого понять. Если я сделаю char Letter = 'A'; , то letter = Letter << 8 , буква = 0, как и следовало ожидать, поскольку мы…
- Как работать с аналоговыми контактами в цикле? Я хочу сделать что-то в духе for (int i = 0; i < 4; i++) { analogRead(i); } Что, по-видимому, работает, но следующее-нет: for (int i = 0; i < 4; i++) { pinMode(i, INPUT); …
- Как восстановить числовые данные, отправленные Arduino в двоичном виде Я разработчик C#, и эти преобразования данных C++ меня убивают. У меня есть Arduino, отправляющий двоичные данные через LoRaWAN в AzureIOT. Я пытаюсь декодировать полезные данные Temp/Humid/Bat,…
- преобразовать строку, представляющую двоичное число, в двоичное У меня есть последовательный вход "1111111" и я хотел бы преобразовать это в двоичный файл B1111111, который я могу отправить в светодиодную матрицу. Я пытался выполнить поиск, но все результаты…
- Считывание данных нескольких датчиков из текстового файла, расположенного на SD-карте в Arduino/ESP32 Я работаю над небольшим домашним проектом "глюкометр" с помощью неинвазивных методов. Я использую четыре датчика, таких как цветовой датчик RGB, два многоволновых фотодиода (A & B) и датчик…
- ESP32 не предоставляет IP-адрес шлюза в точке доступа У меня есть esp32-cam-модуль m5stack Wide Сейчас Я веду поток с камеры в режиме точки доступа. в Linux он получает IP-адрес шлюза, но на моем Mac или любом другом устройстве это не работает …
- Недопустимое использование нестатической функции-члена Чтобы объяснить мою проблему, я использовал 3 класса: Actions , Triggers и Combine . Действия имитирует функцию действия, определенную извне. Триггеры имеют ту функцию, которую…
- C++ против языка Arduino? Каковы преимущества каждого языка при использовании Arduino? Я думаю, что это хороший общий вопрос, но я добавлю немного о том, почему я спрашиваю, не хочет ли кто-нибудь дать мне совет. У…
- Чтение двоичного файла на SD-карте Почему я не могу прочитать последний байт файла, когда использую код Arduino ide? Код в cpp работает без ошибок. Это мой код в Arduino ide: vector<unsigned char> text; unsigned char…
- Накладные расходы на использование «нового» для создания объекта в динамической памяти по сравнению с автоматическим созданием в стеке Предположим, у меня есть класс с именем Foo , а размер sizeof(Foo) составляет 10 байт. Насколько я понимаю, создание Foo с «автоматической» областью действия (в стеке) не имеет накладных…
- Использование без паузы с ультразвуковым датчиком HR-S04 Как я могу измерить расстояние ультразвукового датчика HR-S04 с помощью миллиметров и микросекунд?
- Понимание глобальных переменных на Arduino Я переписываю набор функций манипулирования светодиодами, чтобы они были более объектно-ориентированными, и обнаружил, что каким-то загадочным образом пространство моей памяти для глобальных…