Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino - tutorijali, pitanja, primjeri i projekti
Onako na brzaka koliko vidim PORTB ti se menja samu kad je uslof IF ispunjen. Mislim da to treba da ide izvan IF petlje da bi svaki pritisak na taster shiftovo bitove...
Ovako pocetna vrednost za impuls=500 i da bi dosegla 1000 ili 0 moras 500 puta da pritisnes taster ili levo ili desno...

A inace kad dajes deo programskog koda onda je pozeljno da ga stvis u tagove

Code:
//MOD 8 PHASE AND FREQENCY CORRECT PWM
int taster1 = 2;
int taster2 = 3;
int impuls;

void setup(){
    DDRB |= (1<<PB1)|(1<<PB2);
    TCCR1A = 0;
    TCCR1A = 0;
    TCCR1A = (1<<COM1A1) + (1<<COM1B1);
    TCCR1B = (1<<WGM13) + (1<<CS10);
    impuls = 500; //pocetna vrednost
    ICR1 = 2000; //perioda
    OCR1A = impuls;
    pinMode(taster1,INPUT);
    pinMode(taster2,INPUT);
}

void loop() {

    PORTB |= (1<<PB1)|(1<<PB2);
    OCR1A = impuls;

    if(digitalRead(taster1)==LOW){

          ICR1 = 2000;
          OCR1A = impuls;
          impuls=impuls+1;

          delay(300);

          if(impuls>1000){
              impuls=1000;
              PORTB |= (1<<PB1)|(1<<PB2);
          }
    }

    if(digitalRead(taster2)==LOW){

          ICR1 = 2000;
          OCR1A = impuls;
          impuls=impuls-1;

          delay(300);

          if(impuls<1){
              impuls=1;
              PORTB |= (1<<PB1)|(1<<PB2);
          }
    }
}
Reply


Messages In This Thread
RE: Arduino - tutorijali, pitanja, primjeri i projekti - by me[R]a - 10-03-2022, 09:41 PM

Forum Jump:


Users browsing this thread: 11 Guest(s)