Arduino Polska Forum

Pełna wersja: Jak dodać kolejne kody do Arduino IDE
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2
Witam
Mam pytanie do bardziej doświadczonych użytkowników. Kupiłem Arduino , w internecie znalazłem jak podłaczyc czujniki ruchu wraz z kodem - wszystko działa pieknie ładnie , ale bym chciał teraz do swojego arduino podłączyć coś kolejnego. Moje pytanie i problem jest taki:
,że jak kopjuje gotowy kod od czujników ruchu do Arduino IDE to wszystko działa ale np. chce pózniej dodać kolejny kod do programu Arduino IDE przykładowo z czujnikiem temperatury (kopiuje i wklejam do Arduino IDE poniżej kodu z czujnikami ruchu) , to jak prawidłowo połączyć te 2 gotowe kody ze sobą żeby program Arduino IDE przepuścił je i wgrał do pamięci arduino. Generalnie tak, wgrywam pojedyńczo te skopiowane kody do programu Arduino IDE i je program wgrywa. A jak skopjuję 2 oddzielne kody to wyrzuca mi program błędy jakieś i nie chce się wgrać.
W ogóle czy mogę tak zrobić ? Żeby te kody jakos ze soba łączyć ? dodać jakiś znak ? 
Z góry dziekuje za odpowiedz.
Witam
Jasne, że można. Musisz na początek zrozumieć z jakich sekcji składa się taki kod.
Więc na początku masz "podpinianie" potrzebnych bibliotek (np. do obsługi czujników właśnie), deklaracje wszystkich użytych w programie zmiennych, pinów Arduino, definicję wszystkich użytych nazw symbolicznych... itp.
Następnie masz sekcję (właściwie to funkcja jest) setup() { ... } To tutaj konfigurujesz potrzebne piny Arduino, powołujesz do życia obiekty, czyli czujniki na przykład, i robisz wszystko zanim uruchomi się program główny. Tutaj wszystko dzieje się tylko raz.
Następnie masz główną pętle programu loop() {....} gdzie wszystkie operacje wykonują się cyklicznie, bez końca (takie neverending story).
W każdym z Tych Twoich kodów masz właśnie te 3 sekcje. Aby połączyć to do kupy, musisz zadbać aby wszystko powkładać w odpowiednie miejsca, dbając o to aby:
- nie powtarzały się nazwy zmiennych;
- nie dublować użytych pinów Arduino;
Potem to kompilujesz i UWAŻNIE analizujesz błędy.
Po kilku ćwiczeniach z kodem dasz radę.
Pozdrawiam
I pamiętaj ze jak wklejasz kod pod kodem to tworzysz void setup i void loop podwójnie tak nie można arduino nie posiada wielowątkowość pyzatym void setup i tak występował by tylko raz

z twojego postu rozumie ze zrobiłeś tak
Kod:
void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}
void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

Ponad to wklej kod połączony przez ciebie i kody osobno zobaczymy co da się zrobić bo na tym etapie nie jesteśmy ci wstanie nic więcej pomóc.
Witam, znalazłem kod na sterowanie Bluetooth. Chciałbym dodać jeszcze kilka funkcji do tego kodu na inne piny  ale jak kopiuje i wklejam polecenie to wywala mi błąd... Dlaczego? Jestem nowy i zielony dlatego wolę się dowiedzieć tutaj Smile

Kod:
int ledPin = 13;
String readString;

void setup() {
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}

void loop() {
while (Serial.available()) {
  delay(3);  
  char c = Serial.read();
  readString += c;
}
if (readString.length() >0) {
  Serial.println(readString);
  if (readString == "on")    
  {
    digitalWrite(ledPin, HIGH);
  }
  if (readString == "off")
  {
    digitalWrite(ledPin, LOW);
  }
  readString="";
}
}


Tutaj link do screena:
http://zapodaj.net/3f66fa722dfe7.png.html
Drugi raz definiowany jest "ledPin"
u mnie kod się skompilował jakie masz arduino
(10-03-2016, 17:40)-adamek napisał(a): [ -> ]Drugi raz definiowany jest "ledPin"
Nawet jsli usunę linijkę z "ledPin" to tak samo burzy się o następną linijkę. Jestem na prawdę zielony w tym.
(10-03-2016, 23:41)adix napisał(a): [ -> ]u mnie kod się skompilował jakie masz arduino
Arguino Mega 2560
To wklej całość coby nie wróżyć z kuli bo to co jest wyżej różni się od tego na obrazku .Powyższe oczywiście kompiluje się poprawnie
Tak, powyzszy kod dziala u mnie też, ale nie wiem jak dodać kolejną funkcję. A to co jest na obrazku to skopiowalem i wkleilem x2 to samo i zmienilem "ledPin" na 12.
Stron: 1 2