Ошибка 'Serial' was not declared in this scope
Я добавляю датчик пыли в свой проект частиц-фотонов дома
Я получил это Проект GitHub, который я хочу протестировать перед реализацией окончательного кода.
Я не являюсь экспертом в cpp, я хотел объединить кодовую базу датчика пыли в отдельную библиотеку, поэтому я создал новый файл пылиSensor.cpp и сохранил код, указанный выше.
но я постоянно получаю сообщение об ошибке:
"Serial" не был объявлен в этой области
'Serial1' не был объявлен в этой области
DEBUG не был объявлен в этой области
DEC в этой области не был объявлен dustSensor.cpp:13:57:
У меня есть Serial.begin(57600), вызываемый в функции setup(), но я все равно получаю вышеуказанную ошибку
@Ciasto piekarz, 👍1
Обсуждение1 ответ
Я узнал, что мне нужно включить заголовочный файл Arduino.h
Кроме того, как я узнал о файлах .ino и .cpp, файлы .ino прозрачно включают в себя частицу.
Другое отличие состоит в том, что файлы .ino генерируют за вас предварительные объявления. Это необходимо, если вы реализовали функцию в файле позже, чем при ее первом использовании. Например, если вы передадите функцию чему-то вроде Particle.subscribe в setup(), но реализовали ее дальше в файле.
Техническое название этого — «прямая ссылка». Историческое примечание: необходимость объявлять функцию перед прямой ссылкой возникла из-за того, что ранние компиляторы C были написаны так, чтобы читать исходный код только один раз, а не один раз, чтобы найти определения функций и переменных и снова сгенерировать код, как только его компоненты были известны. Такой компилятор было легче писать, и он работал быстрее (что в то время вызывало большую озабоченность, чем сегодня)., @JRobert
- Serial.availableForWrite против Serial.flush
- Повреждение данных SoftwareSerial - поиск предложений
- Какой лучший способ объявить Serial при создании библиотеки Arduino?
- Термопринтер Adafruit печатает слабо
- Проблемы при использовании SoftwareSerial
- Найдите ОК или ОШИБКУ в последовательной строке
- HardwareSerial и SoftwareSerial несовместимы.
- Потерянные данные SoftwareSerial и HardwareSerial
добавьте
#include <Arduno.h>
в cpp, @Jurajвы можете найти ее, открыв проект частиц в настольной IDE, нажав кнопки «Просмотр и управление библиотеками» и найдя нужную библиотеку. это автоматически включает ваши библиотеки. см. эту [документацию](https://docs.particle.io/tutorials/developer-tools/dev/)., @abu-ahmed al-khatiri