Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

Kommentar:
Einfügen von HTML im Kommentar:

Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a>
Bild einfügen: <img src="BILDURL">
Text formatieren: <b>fetter Text</b>  <i>kursiver Text</i> <u>unterstrichener Text</u>
Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b>
C2 Quellcode formatieren: <code>Quellcode</code>
ASM Quellcode formatieren: <asm>Quellcode</asm>
(Innerhalb eines Quellcodeabschnitts ist kein html möglich.)
Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst !  

> Hallo Alfred, > > in Ordnung, eventuell könntest Du ja beim Taster noch auf Nummer sicher gehen und ein echtes > Prellen auch noch im Programm abfangen. Deine Busabfrage sollte aber eigentlich langsamer sein. > > if Eingang Taster gedrückt, then > warte xx ms > if Eingang Taster gedrückt, then > führe entsprechende Aktion aus > end if > end if > > > Rene > > > > > Hallo Rene, > > > > wenn man einen Taster drück (nur drück nicht loslassen)entsteht ein prellen d.h. ob wohl ich nur > > drücke kommt auf der Signalleitung mehre ein und aus Signal an. > > siehe unter http://de.wikipedia.org/wiki/Prellen. > > Dieses muss man unterdrücken, ob der Taster nun 1sek. oder 10 sek. gedrück wird ist egal. > > Der unterschied liegt darin wie schnell ein Taster gedrück wird und was er für eine Güte er hat. > > Meist reichen 10 ms. > > Nur wenn der Taster über einen Bus abgefragt wird, stellt sich die Frage ist der Bus überhaupt so > > schnell das dass Prellen übergeben wird!!! > > Deswegen glaube ich das es am Programm liegt. > > > > Gruß Alfred > > > > > > > > > > > > > Hallo Alfred, > > > > > > ich denke nicht das dein Taster das Problem ist, sondern dein Programm. > > > Wenn Du den Taster in Echt drückst, wird ein Eingangssignal von sagen wir einfach mal > > > 0,5 sec erzeugt. Die 0,5 sec lassen wir einfach mal dahin gestellt. > > > > > > Da dein Programm in einer Schleife läuft, wird es wärend der 500 ms öfters an der Abfrage "ist Taster gedrückt" > > > vorbei kommen. Und bei jedem vorbei kommen wird bei Dir geschaltet, deshalb das "flattern des Ausgangs. > > > > > > Und deshalb musst Du hier ansetzen, nur wenn das Eingangssignal von 0 auf 1 wechselt, dann wird etwas > > > ausgeführt. Und nur dann. Von einer Verzögerung per sleep würde ich abraten, was willst Du denn da für > > > eine Zeit nehmen. Der eine drückt Taster 0,3 sec, der andere 1,2 sec. Da müsstet Du grundsätzlich eine > > > sehr hohe Zeit ansetzen, was aber das Programm ausbremst oder unkomfortabel macht. > > > > > > Rene > > > > > > > > > > Hallo Rainer und Hallo Rene, > > > > > > > > ich glaube wenn der Taster prellt wird der Merker alleine nichts bringen, weil dann auch der Merker > > > > mehr mals hin und her geschaltet, besser eine Verzögerung einbauen von 10-20ms. > > > > Oder an dem Taster einen 100nF Kondensator parallel schalten. > > > > Aber liegt es wirklich am prellen, über Bus??? > > > > Wie sieht denn das Programm aus. > > > > > > > > Gruß Alfred > > > > > > > > > > > > > Hallo Rainer, > > > > > > > > > > wenn ich deinen Post richtig verstehe, funktioniert schon alles, jedoch ist deine "Schaltung" > > > > > noch nicht "entprellt". > > > > > > > > > > Nimm Dir doch softwaremäßig einen Merker zur Hand, Zustand Merker 0 bei offenen > > > > > Taster und Zustand Merker 1 bei gedrückten Taster. > > > > > > > > > > Dein Relais wird jedoch nur "umgeschaltet" wenn sich der Zustand des Merkers von 0 auf 1 > > > > > wechselt. > > > > > Also ist Taster gedrückt und Merker = 0, dann schalte Relais und setze Merker auf 1. > > > > > Dann schaltet die ganze Sache nur einmal, weil Merker ist jetzt 1. > > > > > Ist Taster offen, dann Merker = 0. > > > > > Erst jetzt kann wieder der Taster gedrückt werden und wird ausgewertet. > > > > > > > > > > Ich hoffe ich habe die grundsätzliche Problematik richtig erklärt. > > > > > > > > > > Rene > > > > > > > > > > > > > > > > Hallo, ich habe eine Frage zur Programmierung, > > > > > > > > > > > > folgende Situation, der Eingang des MAX7311 erhält einen Schalterimpuls und > > > > > > soll ein Relais bei jedem drücken des Schalters aus oder einschalten wie bei > > > > > > einem Stromstoßschalter z.Bsb.im Treppenhaus.Der MAX7311 läuft über den > > > > > > I2C-Bus. Die Schaltausgabe soll relativ zügig sein < 2 s. Der Schaltimpuls > > > > > > soll jedesmal nur einmal erfolgen, nur dann wenn der Taster gedrückt wird. > > > > > > Auch wenn er länger gedrückt wird ! Bis jetzt schaltet das Relais ein paar > > > > > > mal hin und her. > > > > > > > > > > > > Hat jemand da Erfahrungen. > > > > > > > > > > > > Vielen Dank für kreative Antworten.
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB