drukknop

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 3
Geregistreerd: 14 Mei 2017, 23:55

drukknop

Berichtdoor maan69 » 15 Mei 2017, 00:04

ik ben nieuw hier en als hobbyist met de arduino.

nu heb ik een schets gemaakt voor het knipperen van lampjes, en dit werkt naar behoren, maar nu zou ik graag na een druk op een knopje een ander patroon willen.
wat ik ook graag zou weten is hoe je bv 2 ledjes die langzaam knipperen na 1 druk op de knop 4x snel knipperen en daarna weer langzaam
heeft iemand een idee hoe je deze verwijzing maakt?
al vast bedankt voor het mee denken.
gr romano

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: drukknop

Berichtdoor Koepel » 15 Mei 2017, 05:59

Hallo, en welkom op dit forum.
Kun je vertellen welk Arduino board je hebt en kun je de sketch laten zien.
De sketch kun je tussen code-tags zetten, dan is het beter leesbaar. Er is een knop "Code" of je kunt "Select a Syntac" kiezen en dan "C++".

Het is mogelijk om dat met delay() te doen, maar dan ben je erg beperkt.
Alleen maar wisselen tussen langzaam en snel knipperen lukt misschien nog wel. Maar als je bijvoorbeeld beide leds elk een eigen knipperpatroon wilt laten doen, dan lukt dat niet meer met delay().

Je kunt het patroon in een tabel zetten, en die tabel aflopen, en dat gecombineerd met millis().
Ken je de BlinkWithoutDelay ? Lees dat eens door, je hebt het waarschijnlijk sowieso een keer nodig.
https://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
Op die manier kun je snel reageren op knoppen en andere dingen, terwijl ondertussen toch allerlei code wordt uitgevoerd.

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: drukknop

Berichtdoor Gij Kieken » 15 Mei 2017, 13:11

De tips van Koepel zijn zeer goed, eens je deze onder de knie hebt, hier terug een hele brok (State Machine).
http://teachmetomake.com/wordpress/ardu ... te-machine

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: drukknop

Berichtdoor Koepel » 16 Mei 2017, 08:57

Met millis() (en een tabel) kun van alles laten knipperen en toeteren, los van elkaar. Als je je sketch laat zien, dan weet ik hoe ver je bent en hoe goed je kunt programmeren ;)

Voor een app op Android zijn er verschillende mogelijkheden met Bluetooth. Ik heb het zelf nog niet gebruikt. Voor een iPhone kun je zoeken naar een app.

Gebruikers-avatar
Berichten: 631
Geregistreerd: 15 Nov 2015, 11:54

Re: drukknop

Berichtdoor Gij Kieken » 17 Mei 2017, 10:24

Hey maan69,
Het is beter niet in prive bericht te posten op deze manier kunnen de andere leden niet reageren.
Wat mij direct opvalt zijn de <delays> dit werkt niet goed op deze manier.Verder zijn er nog tal van gebreken in de code.
Ik stel voor dat je eerst begint met de basis voorbeelden uit de IDE en dan zoals Koepel reeds stelde te experimenteren met Blink without delay.
Als je dit onder de knie hebt zal veel voor jouw duidelijk worden denk ik.
Bekijk ook even deze link https://learn.adafruit.com/multi-taskin ... -the-delay.

Berichten: 3
Geregistreerd: 14 Mei 2017, 23:55

Re: drukknop

Berichtdoor maan69 » 18 Mei 2017, 13:15

misschien is het handiger als ik even uit leg wat de bedoeling is.

ik heb een modelbrandweerauto en wil de ledjes en sirene via bluetooth aan en uit kunnen zetten.
de loop voor de ledjes heb ik en de loop voor de sirene ook maar hoe kan ik dit via een drukknop aan en uit zetten
ook wil ik de sirene door een druk op de knop een paar keer sneller laten gaan waardna hij vanzelf weer langzaam gaat
dus 1 knop om de loop voor ledjes aan en uit te zetten
1 knop sirene aan en uit
en 1 knop dat als de sirene aanstaa hij dan tijdelijk sneller gaat.

hier onder de loops zoals ik ze nu heb.
wie kan mij helpen?
int pin =8;

void setup()
{


}

void loop() {
tone(pin, 500, 1000);
delay (1000);
tone(pin, 375, 1000);
delay(1000);


tone(pin, 500, 500);
delay (500);
tone(pin, 375, 500);
delay(500);
tone(pin, 500, 500);
delay (500);
tone(pin, 375, 500);
delay(500);
tone(pin, 500, 500);
delay (500);
tone(pin, 375, 500);
delay(500);
tone(pin, 500, 500);
delay (500);
tone(pin, 375, 500);
delay(500);
en voor de ledjes
void setup() {

pinMode(pin8, OUTPUT);
pinMode(pin7, OUTPUT);

}

void loop() {
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);
delay(50);
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);
digitalWrite(pin8,, HIGH);
delay(50);
digitalWrite(pin8, LOW);
delay(50);
digitalWrite(pin7,HIGH);
delay (50);
digitalWrite(pin7,LOW);

}

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

Re: drukknop

Berichtdoor nicoverduin » 18 Mei 2017, 14:21

Je kan niet 2x een zelfde functie naam hebben loop in dit geval.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Gebruikers-avatar
Berichten: 210
Geregistreerd: 03 Sep 2013, 10:03
Woonplaats: Katwijk ZH

Re: drukknop

Berichtdoor baco1978 » 18 Mei 2017, 15:57

en je hoofd loop zal je ook aan moeten passen,

kijk maar eens naar blink without delay voorbeelden
Met vriendelijke groet Arjan

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

Re: drukknop

Berichtdoor nicoverduin » 18 Mei 2017, 19:14

Daarnaast zou ik eens wat basis voorbeelden bekijken die in de IDE zijn opgenomen. Want bovenstaand gaat nooit never lopen....
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 3
Geregistreerd: 14 Mei 2017, 23:55

Re: drukknop

Berichtdoor maan69 » 22 Mei 2017, 10:11

beste Nico,

de twee losse loops die werken nu als ik ze opzich zelf gebruik, maar zou het graag willen laten werken met een knop
heb je een idee hoe dit werkt?

gr romano

Volgende

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 17 gasten