INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
propleme beim programmieren einer steuerung für funksteckdosen
19.11.2015, 01:14
Beitrag #17
RE: propleme beim programmieren einer steuerung für funksteckdosen
Hey Leute,
Habe heute zum Glück diesen Beitrag gefunden der mir schon einmal sehr Weitergeholfen hat. Bin zur zeit dabei eine Vollautomatische Cocktailmaschiene zu Entwickeln. Ich beschäftige mich nun seit 5 tagen mit programmierung und habe auch dadurch das ich noch ein wenig unerfahren darin bin folgendes Problem. Ich habe eine Menüstruktur aufgebaut, doch wenn ich in einen Menüpunkt wechsel , welcher 4 unterpunkte hat, und Down betätige spult er alle 4 punkte schnell durch bis er unten angekommen ist. Das selbe Phänomen übrigens auch auf dem Button Up.
Achso die Buttons (Set, Up, Down, For, Back) habe ich alle durch Taster ersetzt.
Ich schicke mal das Programm rein. Probleme macht das Menü Cocktail.
Danke im vorraus.


#include <LiquidCrystal.h>
#include <Menu.h>
#include <MenuItem.h>

// Create a Display object
LiquidCrystal lcd(7,6,5,4,3,2);

// Create a Menu object (The frame you feed with MenuItems)
Menu myMenu;

// Create the MenuItems
// Name Number For Back up down
MenuItem item100("Cocktail", 100, 101, 100, 100, 200);
MenuItem item200("Reinigung", 200, 200, 200, 100, 200);
MenuItem item101("Sex On The Beach",101, 101, 100, 101, 102);
MenuItem item102("Cuba Libre", 102, 102, 100, 101, 103);
MenuItem item103("Long Island", 103, 103, 100, 102, 104);
MenuItem item104("Tequila Sunrise", 104, 104, 100, 103, 104);

int readButton; // Variable to store the last pressed Button
int select;

void SexOnTheBeach(){
digitalWrite(13, HIGH);
delay(3000);
digitalWrite(13, LOW);
}

void setup(){


// Add the display to the menu
myMenu.addLCD(&lcd);

// Add the items to the menu
myMenu.addItem(item100);
myMenu.addItem(item200);
myMenu.addItem(item101);
myMenu.addItem(item102);
myMenu.addItem(item103);
myMenu.addItem(item104);

lcd.begin(16, 2);

lcd.print("Cocktail - Max");
lcd.setCursor(0,1);
lcd.print("Version 15.11");
delay(5000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("powered by");
lcd.setCursor(0,1);
lcd.print("S & S desings");
delay(3000);
lcd.clear();
delay(2000);
lcd.print("load...");
delay(1000);
lcd.clear();
delay(500);
lcd.print("load...");
delay(1000);
lcd.clear();
delay(500);
lcd.print("load...");
delay(1000);
lcd.clear();
delay(1000);




myMenu.begin(100); // Start at the Menu with at the MenuItem you want

pinMode(13, OUTPUT);
pinMode(8,INPUT);
pinMode(9,INPUT);
pinMode(10,INPUT);
pinMode(11,INPUT);
pinMode(12,INPUT);;// Set pinMode for Test LED
}

void loop(){
readButton = analogRead(0); // read the value from a pushed button

if(digitalRead(9)==HIGH){
myMenu.goForward();
}

if(digitalRead(9)==HIGH){
myMenu.goUp();
}

if(digitalRead(10)==HIGH){
myMenu.goDown();
}

if(digitalRead(11)==HIGH){
myMenu.goBack();
}


// Check if selectbutton was press
if(digitalRead(12)==HIGH){
select = myMenu.select(); //use select() to check if the item you are at has a runable function

switch(select){
case 101: //if found a funtion for a item run it
SexOnTheBeach();
break;

default:
break;
}
}
readButton = 1000;

}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.11.2015, 05:52
Beitrag #18
RE: propleme beim programmieren einer steuerung für funksteckdosen
Hallo,

Loop ist eine Schleife, die endlos durchlaufen wird. Und jedes mal liest er den gedrückten Taster und reagiert mit einem Wechsel des Menüpunktes. Das kann mehrere hundert bis tausend male je Sekunde passieren (hängt von den im Loop zu erledigenden Befehlen ab). So kurz kannst du nicht drücken.

Abhilfe: Erfasse nicht den gedrückten Taster sondern das drücken des Tasters (Wechsel des Zustandes) - kann aber durch Prellen auch mehrfach ausgelöst werden (Entprellen ggf. nötig).

Gruß Rainer
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.11.2015, 11:06
Beitrag #19
RE: propleme beim programmieren einer steuerung für funksteckdosen
Ich habe den Fehler gefunden. Hatte als "Massewiederstand" zum Taster hin mich in meinem Sortiment Vergriffen und einen 10K statt 100K eingesetzt. Jetzt funzt es einwandfrei. <trotzdem danke für die Schnelle Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  parallele Steuerung Thor Wallhall 4 174 25.09.2017 19:12
Letzter Beitrag: Tommy56
  Attiny45-20 programmieren PeterCrash 4 284 22.09.2017 20:49
Letzter Beitrag: Mathias
  ATtinys programmieren Thor Wallhall 11 718 14.09.2017 21:26
Letzter Beitrag: Thor Wallhall
  Fortschritte beim 3-flammigen Gasgrill - nun wieder Pause MOE. 17 675 14.09.2017 11:24
Letzter Beitrag: Bitklopfer
  ATtiny13 mit der Arduino IDE 1.0.6 programmieren - geht das? Gelegenheitsbastler 5 2.694 11.09.2017 15:24
Letzter Beitrag: Mathias
  Milight Openmili Steuerung gronph 25 6.094 22.08.2017 09:09
Letzter Beitrag: sn0000py
  Kommandozeilen-Parser programmieren tollewurst 2 303 21.08.2017 22:15
Letzter Beitrag: georg01
Sad Fehlermeldung beim Hochladen meines Sketches kletterloewe 5 498 14.06.2017 16:08
Letzter Beitrag: hotsystems
  Motor Steuerung durch Sensoren Werte Zerebrator 14 779 12.06.2017 14:36
Letzter Beitrag: Franz54
  LED-RGB Steuerung mit IR-Fernbedienung Royal-mit-Käse 59 3.189 29.05.2017 22:00
Letzter Beitrag: Royal-mit-Käse

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste