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
Question Problem beim Hochladen auf AtTiny45. Hilfe -.- Jonas Lindenblatt 3 79 18.03.2017 13:23
Letzter Beitrag: Tommy56
  Infrarot zu RS232 für Steuerung DG0JG 71 1.499 13.03.2017 19:15
Letzter Beitrag: Tommy56
  Interrupt beim ESP8266 dost0011 9 302 08.03.2017 14:32
Letzter Beitrag: Tommy56
  Arduino Läst sich nicht Programmieren Micha06 4 252 29.01.2017 17:27
Letzter Beitrag: Micha06
  LED-RGB Steuerung mit IR-Fernbedienung Royal-mit-Käse 26 762 26.01.2017 18:41
Letzter Beitrag: Royal-mit-Käse
  Arduino hängt beim Upload deranda 14 894 20.01.2017 16:14
Letzter Beitrag: renid55
  Led Impuls beim Taster betätigen clemens5555 11 448 17.01.2017 20:00
Letzter Beitrag: renid55
  3-Achsen Beschleunigungssensor ADXL355 programmieren Alexuino 0 201 11.01.2017 15:41
Letzter Beitrag: Alexuino
  Infrarot zu RS232 für Steuerung DG0JG 2 175 08.01.2017 23:58
Letzter Beitrag: DG0JG
  Beim Hochladen USB Problem Nils 10 642 29.12.2016 21:05
Letzter Beitrag: renid55

Gehe zu:


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