Помогите, затуп!
- Войдите на сайт для отправки комментариев
Чт, 11/09/2014 - 23:34
не могу использовать стандартные функции Arduino. Например, Serial.
пример: создаю библиотеку Hello.cpp
#include <avr/io.h>
#include "hello.h"
void Hello()
{
Serial.println("Hello");
}
из скетча вызываю :
loop
{
Hello();
}
компилятор выдает: \Arduino\libraries\Hello\hello.cpp:7: error: 'Serial' was not declared in this scope
Почему???
потому что нет функции Serial в io.h?
потому что нет функции Serial в io.h?
Солнце еще высоко. Не отвлекайтесь.
Окей, в корне программы (в скетче) никаких доп библиотек не нужно подгружать. В чем причина? Понятно, что не только в Serial дело-то. Просто этот пример сам для себя делал, разбираюсь... И, подскажите, плиз, какая библиотека?
Посмотрите, для начала, стандартные примеры, идущие с ArduinoIDE.
Народ, а просто ответить - сложно? М? Наверное, просмотрел простые примеры. Наверное, скачал пару-тройку. И в их тело вставил свое необходимое. Там работает. Делаю с "нуля" - болты. Нужна суть - понять почему так.
Окей, в корне программы (в скетче) никаких доп библиотек не нужно подгружать.
Потому что "в корне программы" пишут чайники. Которые, на старте ничего про существование библиотек могут и не знать. Им нужно что-бы "все сразу запустилось из коробки". Поэтому базовые библиотеки, ардуиноIDE подключает к главному скетчу сама.
А если вы столь умный, что знаете что такое .cpp, .h и можете их сами написать, то.... сами обо всем и беспокойтесь. Никакой "ардуино магии", в них уже нет. Честный c/c++ . Что написали - то и будет. Сами обязаны следить что-бы все что используется было объявлено.
В конце концов, если уж взялись за "писать библиотеку", то может имеет смысл посмотреть в сущеcтвующие библиотеки?
Вообщем:
1. Научитесь вставлять код на форум
2. Что это за "обрывки кодо-мысли?". Что это loop() без void? В конце концов, если хотите что-бы вам помогли, то может стоит постараться, что-бы другим можно было воспроизвести у себя вашу проблему как можно меньшими усилиями?
3. #include "arduino.h"
Спасибо. Непривычно, что в скетче все подгружается автоматом, после C Builder сложности))
Спасибо. Непривычно, что в скетче все подгружается автоматом, после C Builder сложности))
Угу. И функции main() - не видно. А она есть :)