Tema: Arduinininkai - pagalbon :)
Autorius: Shadowed
Data: 2015-02-01 21:32:56
jo jo zinau, tipo ne lygis Arduino programint ir t.t. Bet pasiemiau pazaist, 
pramankstint smegenus. Vienok ne viskas eina taip kaip is pypkes. del to 
prasau pagalbos ir patarimo. Schema paprasta, prie UNO prijungiau 2x16 LCD 
(dviem laidais), ir uzkabinau pora potencu. Beda - niekaip nepriverciu 
dirbti antros eilutes. Pries tai buvau uzkabines LCD normaliai, 7 laidais, 
viskas veikia, bet reikejo gi man pabandyt pazaist su registru. Schema 
prisegiau, ten Attainis, bet vietoj jo dabar dirba UNO. Pavyzdziu atrodo 
pilna, bet nedaeina kodel neveikia antra eilute (netgi tas pavyzdinis kodas 
is LiquidCrystal bibliotekos pavyzdzio gliucina, antroje eiluteje rodo 
visokius kringelius, be ne tuos zmogeliukus kur tipo turetu, bet antra 
eilute bent jau rodo). Dar klausimas - be "#include <Wire.h>" apsipila 
klaidom. nesuprantu kodel, sito lyg ir nereiktu inkludint... Programke 
paprasta, nuskaito dvieju patencu sliauziklio padetis nu ir jei vienas 
pasuktas daugiau uz kita uzdega LEDuka. Jau taip lementoriska... Sita 
programke veikia, viska rodo pirmoje eiluteje, bet pakeitus i lcd.setCursor 
(x,1) antroje eiluteje tuscia... (x zinoma nepalieku, ten reikalinga 
stulpeli ikabinu).


#include <Wire.h>
#include <LiquidCrystal_SR.h>

LiquidCrystal_SR lcd(8,7,TWO_WIRE);

  int analogPin1 = 0;
  int analogPin2 = 1;
  int sv_pot = 0;
  int LDR = 0;

void setup(){

  lcd.begin(16,2);               //LCD inicializavimas
  pinMode(13, OUTPUT);           //Nustatom 13 koj kaip ijim
  lcd.noCursor();                //Ijungiam kursori
}

void loop(){

  lcd.setCursor (0,0);            //Nustatom, kur raysim sv_pot vert
  sv_pot = (analogRead(analogPin1)); // skaiciuojam daliklio itampa 5V = 
1023 ir priskiriam reikm sv_pot
  lcd.print(sv_pot);              //Raom  ekran sv_pot vert
  lcd.setCursor (4,0);            //Nustatom, kur raysim "svie"
  lcd.print("svie");              //Raom ekrane sutrumpinim "svie"


  lcd.setCursor (9,0);            //Nustatom, kur raysim LDR vert
  LDR = (analogRead(analogPin2)); //Skaiciuojam daliklio itampa 5V = 1023 ir 
priskiriam reikm LDR
  lcd.print(LDR);                 //Raom  ekran LDR vert
  lcd.setCursor (13,0);           //Nustatom, kur raysim "pot"
  lcd.print("pot");               //Raom ekrane sutrumpinim "pot"

  delay (250);                    //Laukiam ketvirt sekunds

  if (sv_pot > LDR)
        digitalWrite(13, HIGH);   //LEDuko jungimas
  else
        digitalWrite(13, LOW);    //Ijungiam LED, jeigu vieno potenco 
reikm maesn u kito
  lcd.clear ();                   //Ivalom ekran kiekvieno LOOP ciklo 
pabaigoje
}