Witam serdecznie na drugiej części kursu z programowania Arduino. Dziś zbudujemy sobie układ złożony z 3 diod i 2 przycisków.

Do budowy układu potrzebujemy:

Lub zestaw startowy dostępny na naszej stronie.

Całość montujemy na płytce stykowej wg schematu poniżej:

Dioda zielona podłączona do Arduino pod port 8, dioda żółta pod port 9, dioda czerwona pod port 10, przycisk lewy pod port 2 i przycisk prawy pod port 4. Nasz układ zmontowany z przyciskami więc możemy w tym momencie rozpocząć pisanie programu. Oczywiście jak podłączymy nasze Arduino do komputera to uruchomi nam się program z części Pierwszej, który został wgrany wówczas. Ale to nic nie szkodzi, po części będziemy wykorzystywać częściowo poprzedni program a mianowicie rozbudowywać go.

w void setup() musimy dopisać jeszcze nasze przyciski:

pinMode(9, OUTPUT);
pinMode(10, OUTPUT);

Następnie kasujemy wszystko co znajduje się w void loop() między { } i tu będziemy pisać nasz program.

 

Pierwszym naszym wyrażeniem będzie if czyli po angielsku jeżeli. Czyli nasz program ma to widzieć w ten sposób. Jeżeli zostanie wciśnięty przycisk lewy to mam załączyć diodę zieloną. Natomiast jeżeli wciśnięty zostanie przycisk prawy to mam załączyć diodę czerwoną.

Wyrażenie else natomiast określone jest wszystko to co ma zostać wykonane pomimo if.

Czyli np:

po naciśnięciu przycisku lewego zapala nam się dioda zielona gdyż mamy wyrażenie:

if (digitalRead(2) == LOW){
digitalWrite(8, LOW);
}

natomiast program aby wiedział, że gdy puścimy przycisk to ma ją zgasić i to jest nasz zapis do wyłączenia diody po puszczeniu przycisku:

else {
digitalWrite(8, HIGH);

Upiększenie naszego programu wizualnie

Kolejny krok to upiększenie naszego programu wizualnie tak aby był jak najbardziej przejrzysty i czytelny. Czyli zamiast pisać porty np: digitalWrite(8, LOW); to ładniej będzie wyglądać w tej formie: digitalWrite(DiodaZielona, LOW);

Prawda, że przyjemniej to wygląda?

Abyśmy mogli w ten sposób pisać nasze nazewnictwo to przed void setup() musimy wpisać tzw. definicje czyli np:

#define DiodaZielona 8

gdzie #define oznacza wprowadzenie definicji dotyczącej naszej nazwy, którą będziemy posługiwać się w programie, natomiast 8 oznacza port do którego w naszym przypadku dioda zielona została podłączona do Arduino.

Definicji #define nigdy nie kończymy „;” to jest jeden z wyjątków gdzie się nie kończy wiersza programu „;”.

Całość będzie wyglądać w ten sposób:

 

Taki zapis jest bardziej przejrzysty i gołym okiem widać o który przycisk i diodę chodzi w programie 🙂

Następny krok to monitor portu szeregowego:

Jego możemy wywołać skrótem klawiszowym w kombinacji Shift + Ctrl + M.

Natomiast wpis w programie jaki będziemy potrzebować to:

 

W void setup() {

Serial.begin(9600);

}

Dlaczego wartość „9600”, a dlatego, że jest to prędkość z jaką nasze Arduino komunikuje się z naszym komputerem.

Natomiast w void loop() wpisujemy :

Serial.println(„Hello World”);

delay(1000);

Po wgraniu naszego programu i po uruchomieniu monitora portu szeregowego Shift + Ctrl + M ukaże się informacja jaką nasze Arduino przesyła do naszego komputera.

Poniżej w linku znajduje się filmik z całej zabawy.

Zachęcam do obejrzenia, jest tam dość dokładnie wszystko omówione i w miarę możliwości wytłumaczone.

Kurs II z programowania w języku Arduino (diody, przyciski i monitor portu szeregowego)

 

Leave a Comment

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *