Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
arduino_lahendused [2015/12/10 14:01] raivo.sellarduino_lahendused [2020/07/20 09:00] (current) – external edit 127.0.0.1
Line 161: Line 161:
  
 </code> </code>
 +
 ====== Harjutus #3.1 ====== ====== Harjutus #3.1 ======
 +Koostada programm, mis trükib potentsiomeetri väärtuse rea algusesse. Vajutades nupule vahetatakse rida ja jooksev väärtus kirjutatakse uuele reale. Vajutades uuesti nuppu vahetatakse aktiivse kirjutamise rida tagasi.
 +
 +<code c>
 +#include <LiquidCrystal.h> // include needed library
 + 
 +// Initialize LCD
 +LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
 +const int nupp = A0; // Viik kuhu on ühendatud nupp
 +int pote_sisend = A1; // set potentiometer pin
 +int y=0;
 + 
 +void setup() {
 +  lcd.begin(16, 2); // set LCD column and row
 +  pinMode(nupp, INPUT); // define button pin as input
 +  digitalWrite(nupp, HIGH); // turn on internal pull-up resistor on button pin
 +}
 + 
 +void loop() {
 +
 +  if (digitalRead(nupp) == LOW) { // if button pressed 
 +   while (digitalRead(nupp) == LOW){} // wait for button release
 +   if (y) y=0; else y=1;
 +  } 
 +  lcd.setCursor(0, y); //set cursor position first row and column 0 (1. rida on indeksiga 0)
 +  lcd.print(analogRead(pote_sisend)); //Print out potentiometer value to LCD
 +  lcd.print("    "); //Print out empty spaces 
 +  delay (100);  
 +}
 +</code>
 +
 +====== Harjutus #4.1 ======
  
 Modifitseerida programmi nii, et potentsiomeetriga määratakse temperatuuri nivoo, mis salvestatakse nupuga programmi mällu ja selle nivoo hilisemal ületamisel käivitatakse täiturmehhanism (milleks on LED). Modifitseerida programmi nii, et potentsiomeetriga määratakse temperatuuri nivoo, mis salvestatakse nupuga programmi mällu ja selle nivoo hilisemal ületamisel käivitatakse täiturmehhanism (milleks on LED).
Line 235: Line 267:
   }   }
 } }
- 
- 
- 
- 
- 
 </code> </code>
-====== Harjutus #3.2 ======+====== Harjutus #4.2 ======
  
 Kombineerida LED-i heleduse programm ja eelnev temperatuuri juhtimise programm, kus LED-i heledus sõltub sellest, kui palju nivootemperatuuri ületati (1 kraad: heledus 25 %, 2 kraadi: heledus 50 %, 3 kraadi: heledus 75 % ja 5 kraadi: heledus 100 %) Kombineerida LED-i heleduse programm ja eelnev temperatuuri juhtimise programm, kus LED-i heledus sõltub sellest, kui palju nivootemperatuuri ületati (1 kraad: heledus 25 %, 2 kraadi: heledus 50 %, 3 kraadi: heledus 75 % ja 5 kraadi: heledus 100 %)
Line 342: Line 369:
  
  
-====== Harjutus #3.1 ====== 
-Koostada programm, mis trükib potentsiomeertis väärtuse rea algusesse. Vajutades nupule vahetatakse rida, kus jooksev väärtus kirjutatakse uuele reale. Vajutades uuesti nuppu vahetatakse jälle aktiivse kirjutamise rida. 
  
-<code c> +====== Harjutus #5.1 ======
-#include <LiquidCrystal.h> // include needed library +
-  +
-// Initialize LCD +
-LiquidCrystal lcd(8, 9, 4, 5, 6, 7); +
-const int nupp = A0; // Viik kuhu on ühendatud nupp +
-int pote_sisend = A1; // set potentiometer pin +
-int y=0; +
-  +
-void setup() { +
-  lcd.begin(16, 2); // set LCD column and row +
-  pinMode(nupp, INPUT); // define button pin as input +
-  digitalWrite(nupp, HIGH); // turn on internal pull-up resistor on button pin +
-+
-  +
-void loop() { +
- +
-  if (digitalRead(nupp) == LOW) { // if button pressed  +
-   while (digitalRead(nupp) == LOW){} // wait for button release +
-   if (y) y=0; else y=1; +
-  }  +
-  lcd.setCursor(0, y); //set cursor position first row and column 0 (1. rida on indeksiga 0) +
-  lcd.print(analogRead(pote_sisend)); //Print out potentiometer value to LCD +
-  lcd.print("    "); //Print out empty spaces  +
-  delay (100);   +
-+
-</code> +
- +
-====== Harjutus #4.1 ======+
  
 Luua programm, mis võimaldab servomootori positsiooni muuta vastavalt nuppudega seadistatud suurusele. Luua programm, mis võimaldab servomootori positsiooni muuta vastavalt nuppudega seadistatud suurusele.
Line 405: Line 402:
 } }
 </code> </code>
-====== Harjutus #4.2 ======+====== Harjutus #5.2 ======
  
 Luua programm, mis servomootori baasil ehitatud radariga ja fotoanduriga leiaks ruumist kõige eredama punkti. Luua programm, mis servomootori baasil ehitatud radariga ja fotoanduriga leiaks ruumist kõige eredama punkti.
Line 458: Line 455:
 } }
 </code> </code>
-====== Harjutus #======+====== Harjutus #======
  
 Luua programm, mis jadaliidesest saadetud teksti kirjutaks LCD ekraanile. Märk „+“ vahetab rida ning märk „-“ kustutab kogu ekraani. Luua programm, mis jadaliidesest saadetud teksti kirjutaks LCD ekraanile. Märk „+“ vahetab rida ning märk „-“ kustutab kogu ekraani.
arduino_lahendused.1449756062.txt.gz · Last modified: 2020/07/20 09:00 (external edit)
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0