toch weer een vraag

Arduino specifieke Software
Berichten: 139
Geregistreerd: 28 Jul 2013, 13:30

Re: toch weer een vraag

Berichtdoor ercmrj » 09 Jul 2014, 14:54

Probeer dit eens

int ledBar2[] = {14,14,14,14,15,15,15,16,16,16};

of met andere getallen misschien dat je het dat wel kunt vinden want ik zie het zo 123 niet, ik heb helaas geen mega.

Advertisement

Berichten: 203
Geregistreerd: 11 Mei 2014, 11:22

Re: toch weer een vraag

Berichtdoor vanschagen » 09 Jul 2014, 15:21

pin 14 dat is opgelost
nu enkel dat hij ledbar2 pootjes 2,3 dubbel doet is raar
verder loopt ie lekker

dat wat je nu zegt nee is het ook niet

OPGELOST hoor > bij binnen naar buiten thisled >=0 het > weg gehaald en werkt nu
Laatst gewijzigd door vanschagen op 09 Jul 2014, 15:35, in totaal 1 keer gewijzigd.

Berichten: 139
Geregistreerd: 28 Jul 2013, 13:30

Re: toch weer een vraag

Berichtdoor ercmrj » 09 Jul 2014, 15:30

En wat doet ie dan als je dit:

int ledBar2[] = {2,2,2,2,2,3,3,3,3,3};

of dit

int ledBar2[] = {2,2,2,2,2,2,2,2,2,2};

of dit

int ledBar2[] = {3,3,3,3,3,3,3,3,3,3};

invult?

Berichten: 203
Geregistreerd: 11 Mei 2014, 11:22

Re: toch weer een vraag

Berichtdoor vanschagen » 09 Jul 2014, 15:35

zie mijn aanvulling ,bedankt ALLEMAAL ,voor de hulp

enkel ze lopen allebij van rechts naar links gelijk,dus niet van binnen naar buiten

Berichten: 203
Geregistreerd: 11 Mei 2014, 11:22

Re: toch weer een vraag

Berichtdoor vanschagen » 09 Jul 2014, 16:42

voor de duidelijkheid ik heb nu dit,maar gaat allebij van rechts naar links ,dus niet van buiten naar binnen
Code: Alles selecteren
//int ledCount = 21;
int ledCount = 10;
int ledBar1[] = {4,5,6,7,8,9,10,11,12,13};
int ledBar2[] = {2,3,14,15,16,17,18,19,20,21};
int ledDelay =100;

void setup()
{
   for (int thisled =0; thisled < ledCount; thisled++)
   {
      pinMode(ledBar1[thisled], OUTPUT);
      pinMode(ledBar2[thisled], OUTPUT);
   }
}

void loop()
{
   // buiten naar binnen
   for (int thisled =0; thisled< ledCount-1; thisled++)
   {
      digitalWrite(ledBar1[thisled], HIGH);
      digitalWrite(ledBar2[ledCount-1-thisled], HIGH);
      delay(ledDelay);
      digitalWrite(ledBar1[thisled], LOW);
      digitalWrite(ledBar2[ledCount-1-thisled], LOW);
   }
   
   // binnen naar buiten
   for (int thisled=ledCount-1; thisled=0; thisled--)
   {
      digitalWrite(ledBar1[thisled], HIGH);
      digitalWrite(ledBar2[ledCount-1-thisled], HIGH);
      delay(ledDelay);
      digitalWrite(ledBar1[thisled], LOW);
      digitalWrite(ledBar2[ledCount-1-thisled], LOW);
   }
}

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: toch weer een vraag

Berichtdoor nicoverduin » 09 Jul 2014, 18:04

Moet dit niet:
Code: Alles selecteren
 // binnen naar buiten
   for (int thisled=ledCount-1; thisled=0; thisled--)
   {
      digitalWrite(ledBar1[thisled], HIGH);
      digitalWrite(ledBar2[ledCount-1-thisled], HIGH);
      delay(ledDelay);
      digitalWrite(ledBar1[thisled], LOW);
      digitalWrite(ledBar2[ledCount-1-thisled], LOW);
   }


Dit zijn:

Code: Alles selecteren
 // binnen naar buiten
   for (int thisled=ledCount-1; thisled==0; thisled--)
   {
      digitalWrite(ledBar1[thisled], HIGH);
      digitalWrite(ledBar2[ledCount-1-thisled], HIGH);
      delay(ledDelay);
      digitalWrite(ledBar1[thisled], LOW);
      digitalWrite(ledBar2[ledCount-1-thisled], LOW);
   }


Dus extra = teken in het for statement. Die 2e lus wordt volgens mij helemaal niet uitgevoerd. Er staat in het for statement:

thisled =ledCount-1 = startpunt
daarna de test conditie. ECHTER thisLed = 0 is waar omdat hij eerst op 0 wordt gezet en niet getest "==" op 0. En dus stopt de lus tegelijkertijd.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 203
Geregistreerd: 11 Mei 2014, 11:22

Re: toch weer een vraag

Berichtdoor vanschagen » 09 Jul 2014, 18:15

nico gedaan zo als je zegt,maar blijft toch allebij van recht naar links gaan gelijk tijdig
ik heb nu deze getallen om gedraaid en nu is het van buiten naar binnen
int ledBar1[] = {13,12,11,10,9,8,7,6,5,4};

Berichten: 11
Geregistreerd: 02 Jul 2014, 21:34

Re: toch weer een vraag

Berichtdoor GF-Projects » 09 Jul 2014, 19:15

Die == in de 2de for-lus moet >= zijn.
Dat heb je fout overgenomen.

Berichten: 203
Geregistreerd: 11 Mei 2014, 11:22

Re: toch weer een vraag

Berichtdoor vanschagen » 09 Jul 2014, 19:22

ja dan gaat ie heen en weer ,maar dan weer pin 2,3 dubbel zeg maar
ledbar 1 doet het goed ledbar 2 pin 2,3 dus dubbel

maar het word wel steeds beter zo
hartelijk dank

Vorige

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 16 gasten