-
Thread
Arduino: Mit Taster LEDs Blinken lassen
Merker ändert sich nur ein einziges mal, und danach nie wieder. > Ich möchte erst einmal nicht entprellen oder sonst etwas ^^ das programm > soll nur Funktionieren Mechanische Taster musst Du immer entprellen, sonst funktionieren sie nicht. Im Zweifelsfall setze ein kurzes delay(5); an das Ende
willst du immer haben, unabhängig davon, ob die LEDs blinken oder nicht. Also darf auch die für das Entprellen alles entscheidende Verzögerung nicht einfach unter den Tisch fallen. Die Dinge hier [c] boolean buttonState = digitalRead(Taster1); if (buttonState != lastButtonState && buttonState ==
-
Thread
AVR PullUp benötigt externe Kapazität?
eingefangenen Reset-Puls > gar nichts. Reset? Du bist hier der einzige, der davon spricht, einen Taster an Reset zu entprellen.
Die Ursache liegt ganz einfach in der falschen Software zur > Tastenabfrage. Ein Mensch betätigt Tasten langsam genug, um sie bequem > mit einem Timerinterrupt (~10ms) und Mehrfachabfrage (>=4) entprellen > (entstören) zu können. Schaust Du da: http://www.mikrocontroller.net/topic/408866#4751462
-
Thread
Mehrere Tastenzustände abfragen
ohne Arduino so machen. Du meintest wohl mit, denn da sind ja ne Menge Arduino-Aufrufe drin. Entprellen sollte man die Tasten aber auch.
die ersten beiden Fälle brauchst du offensichtlich eine Art Zeitmessung, die mit dem Drücken der Taste losläuft und wo du die Zeitdauer beim Loslassen der Taste abliest. Für den dritten Fall brauchst du eine Möglichkeit, die Zeitdauer periodisch abzufragen. Der Entprell-Interrupt drängt sich doch für
-
Thread
Tasterschaltung in AVR
drückst. Drückst du, fährt die Fensterscheibe. Lässt du die Taste los, hört auch die Bewegung auf. Der andere Fall ist: Du drückst eine Taste und eine LED leuchtet auf. Du lässt die Taste los und nichts weiter passiert. Drückst du erneut auf die Taste so geht
los passiert nichts weiter. Der erste Fall ist der einfachere. Man muss dort auch nichts entprellen [C] int main() { .... while( 1 ) { if( !( PORTB & ( 1 << TASTER_PIN ) ) ) schalte LED ein else schalte LED aus } } [/C] hier steht klipp und klar:
-
Thread
Klingeltaster an AVR - Was muss ich beachten
Hier ist schon mal was dazu: http://www.mikrocontroller.net/topic/305025 Entprellen / entstören - Taster immer und bei langem Kabel erst recht (= Antenne) - kann man mit Elektronik oder mit Software, dazu müsste sich per Google und auch im Forum hier genug finden.
egberto schrieb im Beitrag #3304555: > Entprellen musst du bei der Klingel (auch ohne Optokoppler) nichts, die > Klingel entprellt sich selbst (sobald die Taste gedrückt wird, geht die > Melodie los -> alles prellen etc. wird. bis zum Melodieende
-
Thread
Taster mittels Interrupt einlesen sinnvoll
Manuel schrieb: > Nun möchte ich ein Programm schreiben, dass folgedes tut: > Taster 1 schaltet LED 1 an bzw. aus > Taster 2 schaltet LED 2 an bzw. aus Gut > Ist es sinnvoll die Abfrage der Taster in einem externen Interrupt zu > lösen? Nein > (Variable statusTaster 0
Hallo, ok, das ist schon einmal gut. Demnach kann ich ja über ein externes Interrupt keinen Taster einlesen den ich softwaremäßig entprelle, da ja hier immer Zeit benötigt wird. Demnach ginge das ja nur, wenn ich hardwaremäßig entprelle oder nicht?
-
Thread
ATmega16, Timer + Interrupts = Probleme
//halbe sec warten //wait } } Kann mir jm. sagen, wie ich die Taster mit dem Timer entprellen kann? Hoffe, ihr versteht mein Problem! Danke für eure Hilfe! mfg Andreas
natürlich geziehlt wieder freigeben, ob das in C ein so guter Weg ist, bezweifle ich allerdings. Also Tasten in der ISR nur merken und dann im Hauptprogramm über Entprellen und Auswertung nachdenken. Oder Tasten im Timerinterrupt abfragen und entprellen. Da gibt es etliche Beispiele und fertige Routinen
-
Thread
Motor stoppt nicht wenn Endanschlagschalter außgelöst wird
Tasten entprellen ist Neuland, habe mir angesehen was die Idee dahinter ist, kann es aber nicht programmiertechnisch umsetzen... Reicht es im einfachsten Fall delay_us() auszuführen? Kann mir jemand mal
mit dem Warten mal ganz schnell und benutze es nie wieder! Die gebräuchlichste Methode zum Entprellen ist Mehrfaches Messen. D.h. der Eingang wird mehrmals gemessen und wenn er bei allen Messungen wahr war gilt es als Tastendruck. Z.b. 4 Messungen: 1 1 0 1 --> Taste nicht gedrückt 1 1 1 1 --
-
Thread
LED mit Taster ansteuern und Interrupt einfügen
Warum solltest du den Taster jetzt nicht mehr in Software entprellen können?
Entprellung]]. Kann man machen, ist aber nicht unbedingt der übliche Weg. Meistens ist es besser, Taster regelmäßig in einem [[Timer]]-[[Interrupt]] abzufragen und zu entprellen. Siehe [[Entprellung]].
-
Thread
Menü mit Sprungtabelle funktioniert nicht
Wenn Du da einmal drückst gibt es vermutlich ein Dutzend Interrupts hintereinander... Stichwort: Tasten entprellen Gruß aus Berlin Michael
Sprungtabelle eine höhere Z-Pointer Adresse hat eventuell ein Übertrag entstehen kann. Auf das Tasten entprellen verzichte ich, da ich mit dem Prellen noch nie probleme hatte. Habe vorher schon ein einfaches Programm geschrieben, mit dem man mit 2 Tasten entweder eine Zahl hoch oder runterzählen konnte
-
Thread
LED mit Taster steuern
naja das Entprellen sollte man auch nicht vergessen. Marc
stil): Mein Code erzeugt Flanken, die einen "main-loop" gültig sind. Das ist gut geeignet um Taster auszuwerten. Für das Taster/LED Beispiel etwas übertrieben ... Gruß Fiffi
-
Thread
Hallo Jungs - brauche Hilfe bei Assemblerprogrammierung!
und ausgehen sollen, schalte sie doch alle über einen Portpin. 1. Technische Fehler: Alle Tasten prellen, deshalb wirst Du hier und in anderen Forem sehr viel zum Thema Entprellen finden und auch benutzen müssen. 2. Logische Fehler: Ich vermute mal, Du willst nicht zählen, solange eine Taste
Was ist ein portpin? was ist entprellen? ja ich will nur einmal, wenn die Taste von Losgelassen zu Gedrückt wechselt zählen. "Dazu merkt man sich immer den vorhergehenden Zustand: if( (taste_alt == losgelassen) && (taste_neu ==
-
Thread
Prellen am Notaus, Realisieren einen Notaus
es sein, dass der Schalter 130ms lange prellt? Ich habe auch noch folgendes versucht: Den Taster nicht als externen Interrupt anzuschließen sondern als normalen Taster, den kann ich dann auch softwaremäßig entprellen. Da ist dann solange Notaus-Situation, solange der Taster gedrückt ist und die Situation wird gelöst, sobald man den Taster zieht (über Schleifen realisiert). Für den Pin habe ich den internen Pullup aktiviert und über den Taster mit GND verbunden. Hier passiert folgendes: beim ersten Mal drücken funktioniert der Taster
-
Thread
Reedkontakt einlesen, Polling oder Interrupt oder Pinchange
haben? Für schnelle Sachen wie: Encoder (an Motoren), Software-UART, Frequenzmessung... Für Taster reichen Timer eigentlich meistens aus.
Trigger ist ja in allen µC Pins vorhanden, sodass es sich doch durch den Tiefpassfilter einwandfrei entprellen lassen sollte. Im Moment reagiert das Programm sauber auf die fallende Flanke, jedoch erkennt es manchmal die steigende Flanke nicht und bleibt dort hängen. Ich vermute, dass es mit dem Entprellen
-
Thread
Evalboard AVR Mega128 Board
Hallo Helmut, kann ich die Taster nicht softwareseitig entprellen?
>kann ich die Taster nicht softwareseitig entprellen? Das sollst du ja auch in Software machen. Schreibe die erstmal eine Routine dazu wo du die 4 Tasten einliest und entprellst. Sonst wird das nicht mit der Taste
-
Thread
Funktionszeiger
small_font,PSTR("MENÜPUNKT 3")); lcd_set_cursor(43,LINE7);lcd_puts_p(small_font,PSTR("Zurueck mit Taste 3")); _delay_ms(10); //Taste entprellen while(1) { if( PIND & ( 1 << PIND4 ) ){show_menu();} } } void menu3_show()//MENÜPUNKT4 { lcd_clear(); lcd_set_cursor(43,LINE0
small_font,PSTR("MENÜPUNKT 4")); lcd_set_cursor(43,LINE7);lcd_puts_p(small_font,PSTR("Hauptmenue Taste 3")); _delay_ms(10); //Taste entprellen while(1) { if( PIND & ( 1 << PIND4 ) ){show_menu();} } } void show_menu() { lcd_clear(); DrawMenuTexts(); HandleButtons
-
Thread
Power Down Sleep Mode
Power Down Mode weg und bringe erstmal den Flip-Flop zum laufen. Die meisten Fehler werden beim Entprellen der Tasten gemacht. Und das bewirkt dann, daß eine Flip-Flop scheinbar völlig unkontrolliert umschaltet. Zum Entprellen habe ich hier was geschrieben: http://www.specs.de/~danni/appl/soft/keyscan/index.htm Die Messung, ob mindestens 1s gedrückt wurde, muß dann nach dem Entprellen erfolgen. Beim Power Down gibt es noch zu beachten, daß wenn die Taste kürzer als 16ms gedrückt wurde der µC zwar aufwachen kann, aber nicht den Interrupt ausführt und direkt nach dem Sleep
-
Thread
UP - DOWN Taster Entprellung mit Timer
ist, dass ich das b10msTimer Bit einen Programmdurchlauf an jeder Stelle abfragen kann. Ich Entprell meine Taster immer bis 60ms. Unter 10ms find ich es fast zu knapp.
aber dann ......u.s.w. wenn dir das delay nicht gefällt dann vielleicht so: [c] . unsigned long Taste1Counter=0; if (PortA&TasteUp) // TasteUp gedrückt Taste1Counter++; else Taste1Counter=0; if ( Taste1Counter==80000 ) // Wert 80000 ist experimentel ermittelt { UpDownCounter++; } if
-
Thread
Ausgänge getrennt schalten
zwischengespeichert und mit den Eingängen xor-verknüpft. Was man noch beachten müsste: Problem bei mehr als zwei Taster (fast) gleichzeitig gedrückt und Entprellung der Taster. Gruß Thomas
Lad dir die Kostenlos Bascom Version runter. Und dann machst du grob das hier: Start: Entprelle Taster1->Out1 Entprelle Taster2->Out2 ... Springe zu Start Out1: Toggle Ausgang1 Springe zu Start Out2: Toggle Ausgang2 Springe zu Start ... Mit dem "grob" Programm geht es auf
-
Thread
Tutorial?
Transistoren zu entlasten, auch wenn das auf ner Lochraster evtl. schwierig wird, oder? Und: Du entprellst die Taster nicht ;-) Ist das mit dem Pull-Up Widerstand "gut" genug, oder sollte man prellfreie Taster nehmen? > > und dein Tutorial > > finde ich dennoch gut, recht einfach gehalten, genau richtig
keinen Schaden. Genaue Maximalwerte solltest du im Datenblatt des Controllers finden. > Und: Du entprellst die Taster nicht ;-) Ist das mit dem > Pull-Up Widerstand "gut" genug, oder sollte man prellfreie > Taster nehmen? In den Beispielen in Kapitel 2 wirst du bei genauem Hinsehen feststellen, dass
-
Thread
AVR-n00b will Passworteingabe machen
PIN Eingabe realisieren möchtest, ist das doch ganz entscheidend! *Beispiel* PIN lautet 012 (Taster) Also d®ückst du die Taster 0, 1 und 2. Ergebnisse: Ohne entprellen z.B.: 0000011111222 Mit entprellen: 012 Gruß Max
Eingabe realisieren möchtest, ist das doch ganz > entscheidend! > > Beispiel > PIN lautet 012 (Taster) > > Also d®ückst du die Taster 0, 1 und 2. Ergebnisse: > > Ohne entprellen z.B.: 0000011111222 > > Mit entprellen: 012 > > Gruß Max Das ist schon richtig, aber es erklärt nicht, warum
-
Thread
Schalter entprellen Arduino
ich irgendwie nicht weiter komme und zwar habe ich bei meinen bisherigen Projekten bei denen ich Taster zur Eingabe verwendet habe immer eine Entprell Routine verwendet bei der ich auch gedrückt gehaltene Tasten auslesen kann. Ich hänge unter diese Nachricht einmal den Code den ich immer wieder verwende, dieser wird dann nur mit den Tasten angepasst. Nun habe ich bei einem neuen Projekt einen StufenSCHALTER! mit 4 Stufen die ich auch gerne entprellt hätte. Dafür habe ich dann wie immer meine Entprell Routine genommen. Aber ich bin
-
Thread
Eingangsschutz Controllerpin
100nF Kondensatoren können kleine taster beschädigen. Mit 10nF habe ich es noch nicht versuch. Reichen 10nF zum Entprellen überhaupt aus?
Stefan us schrieb im Beitrag #3927959: > 100nF Kondensatoren können kleine taster beschädigen. Wie soll der Taster mit 100n über 4k7 geschädigt werden?
-
Thread
Effezenter Drehgeber decoder in c
vorhanden hat und sofern man nicht zu arrogant oder dämlich ist, die Drehgebersignale rein analog zu entprellen. W.S.
nutzlos, ggf. (bei falscher Dimensionierung) stört sie sogar. Rotary encoder sind eben keine Taster! Selbst dann nicht, wenn die einfachen Vertreter ihrer Art nur aus zwei mechanischen Kontakten bestehen. Die Logik ihres Aufbaus erspart eine Entprellung, wie sie bei einfachen Tastern nötig ist.
-
Thread
Frage zur Schaltzeit vom 74HC138N
schrieb im Beitrag #8028400: > Sinnvollerweise > reicht es doch, alle paar Millisekunden nach den Tasten zu gucken, d.h. > du hast alle Zeit der Welt. Entprellen muss er ja auch noch, da muss er sich ohnehin reichlich Zeit nehmen ...
ich in meinen Platinen benutzt. Es gibt noch HT16K33, I2C LED-Treiber mit Möglichkeit, bis 13x3 Tasten Matrix abzufragen und entprellen. 30 St. habe ich in meinem Lager, aber noch nie benutzt.
-
Thread
Tasterselbsthaltung mit Bascom
to" Locate 2 , 1 Lcd "start Mainproga." Waitms 2000 Loop Until A = 1 Do If Taster1 = 0 Then 'Startet Hauptprogramm Debounce Taster1 , 0 , Incr_a , Sub 'Entprellen des Taster, wenn der Port auf 0 gezogen wird Loop
überkreuzen, können aber ohne weiteres ineinander geschachtelt sein. So etwas [pre] Do If Taster1 = 0 Then 'Startet Hauptprogramm Debounce Taster1 , 0 , Incr_a , Sub 'Entprellen des Taster, wenn der Port auf 0 gezogen wird Loop
-
Thread
IRMP Bei gedrückter taste nur ein mal reagieren
erklärt, such einfach nach "Entprellen" von Tasten im Artikel.
Lokus Pokus schrieb im Beitrag #3810020: > Irgendwie ändert sich da nichts wenn ich die Entprell-Funktion einbaue. Dirk hat da schon Recht: Weil Du genau dann reagierst, wenn Du die Taste länger gedrückt hältst. Das ist genau falsch herum. Entweder: - Du schreibst den Code in den
-
Thread
Licht mit Tiny13
-Feststellen, ob Taste, die vorher nicht gedrückt war, jetzt in diesem Moment gedrückt wurde -Warten -Testen, ob immer noch gedrückt -Sich merken, daß Taste jetzt gedrückt ist. ... -Feststellen, ob Taste gehalten wird oder die gerade gedrückte Taste jetzt in diesem Moment losgelassen wurde. -Warten -Testen ob losgelassen -Sich merken, daß Taste nicht mehr gedrückt ist. Solange die Taste gehalten wird, lässt du einen Zähler laufen, der
-
Thread
Hilfe zu Drehencoder-Auswertung nach Wiki
Hi, ich bin's nochmal. Mit einer neuen Problemstellung: Ich verwende den integrierten Taster des Drehencoders. Das Entprellen wie in meinem obigen funktioniert auch. Aber ich möchte jetzt unterscheiden zwischen kurz und lang gedrückt. Leider komme ich da nicht weiter. Den Code von PeDa http
Tastenzeit löschen Tastenabfrage_end: [/pre] Der Zähler "tastenzeit" wird also bei gedrückter Taste erhöht, wobei ein Überlauf verhindert wird. Bei ungedrückter Taste wird er zwar auch erhöht, fällt aber durch die Lang- und Entprell-Prüfung und wird wieder gelöscht. War zuvor die Taste lang genug
-
Thread
CD40175BMS Schieberegister
Karl Heinz Buchegger schrieb im Beitrag #3150673: > Ganz ohne Zustazbeschaltung. Nö. Den Taster muß man noch entprellen. Z.B. mit RC-Tiefpaß und Schmitt-Trigger (4093). Davon kann man noch ein Gatter für die Rückführung des 40175 benutzen. Den muß er also nicht wegschmeißen. Chris230289
Chris230289 schrieb im Beitrag #3150716: > Ist es auch Möglich ohne Schmitt-trigger zu entprellen, mittels nur > einem RC-Glied? In meiner Schaltung müsste dann nach dem Taster S1 ein > Widerstand von 500Ohm und danach der Kondensator 22nF? Eine weitere Möglichkeit der Entprellung ist
-
Thread
Tiefpass für Taster
(war ja gewollt). Die beste HW-Entprellung ist aber ein RS-FF (z.B. mit zwei NANDs), wenn der Taster ein Umschalter ist.
aufzubauen. Abgesehen davon dass man dann lauter so nette späße wie Tastenwiederholung wenn die Taste länger als ein paar hundert msec gedrückt bleibt, oder Mehrfachtastenbelegungen (Taste 1 + Taste 2 = Taste 6) Programmieren kann ohne das man Timer oder massig Takte des Hauptcontrollers verbraten
-
Thread
PWM 12V Lampendimmer (Tiny26)
Du fragst du Tasten jetzt zwar in der Timer-ISR ab, due entprellst sie aber immer noch nicht. Dazu musst du den aktuellen Zustand der Tasten mit dem letzten vergleichen. Wenn die beiden über eine bestimmte Zeit gleich
Ich "entprelle" meine Taster genauso: Einfach den Taster alle 10-100ms abfragen. Man erhält nun eine Information ob der Taster gedrückt ist oder nicht. Prellt der Taster noch, kann die Information falsch sein (
-
Thread
ESP-Easy mit ESP8266 - Eingang unregelmäßig falsch erkannt
> > on taster#klingel do > if [taster#klingel = 1 > LogEntry,'%systime% - gpio,13 ist 1' > SendToHTTP,http://192.168.2.85:8087/api/setdevice=tuerklingel&action=1 > endif > endon > >
> > on taster#klingel do > if [taster#klingel = 1 > LogEntry,'%systime% - gpio,13 ist 1' > SendToHTTP,http://192.168.2.85:8087/api/setdevice=tuerklingel&action=1 > endif > endon > >
-
Thread
4017D Reset fünktioniert nicht so wie er soll
Karl B. schrieb im Beitrag #6484515: > Bei dem Count Taster. Ok Klar, das betrifft nur diesen Taster.
Schritte weiter. Da ist ja noch C6 verbaut. Der entprellt schon, schadet aber längerfristig dem Taster. 100Ω in Reihe hilft - egal ob zum Taster oder zum C6.
-
Thread
Fahrtwindbetriebenes Fahrradlicht
SuperUser, vielleicht kannst Du einem unerfahrenen Designer mal erklären: a1) warum man einen Taster in Hardware entprellen muss und nicht in Software entprellen kann? Dass hat m.W. nichts mit ESD zu tun. Von C3 ist keine Rede. a2) Wofür der 10u gut sein soll? ESD, wie Du behauptest? b) Richtig
Wenn ein Taster über kurze Leitungslängen angeschlossen ist, braucht es auch keinen ESD-Schutz. Isoliert sind die meisten Taster sowieso. Wenn man aber mit einem längeren Kabel einen Taster verlegt, muss man sich
-
Thread
Arduino-Nano: Relais schaltet nicht sicher bei gedrücktem Taster
Ich entprelle meine Taster immer mit einen einfachen delay von 20-100ms je nach Taster und gut. Wird Taste A gedrückt wird Aufgabe A gemacht und dann je nachdem wie lange das dauert einfach bissel zeit vergehen
Ich entprelle meine Taster immer mit einen einfachen delay von 20-100ms je nach Taster und gut. Wird Taste A gedrückt wird Aufgabe A gemacht und dann je nachdem wie lange das dauert einfach bissel zeit vergehen
-
Thread
DC-Motorsteuerung über Taster mit ATtiny
kannst Du hier sehen. > http://www.mikrocontroller.net/topic/290561#new Kein guter Artikel. Tasten mittels RC zu entprellen ist unnötig kompliziert. Aber auch das wurde im Artikel schon angesprochen.
Tastenzustand if(taste&&!gedrueckt) mode=(mode+1)&3; gedrueckt=taste; // entprellen PORTB|=1; // MOTOR PWM an long_delay(30-10*(3-mode)); PORTB&=0xFE; // Motor PWM aus
-
Thread
Taster-Matrix Code von Peda auf AVR
Code am LED Port angezeigt wenn ich die Taste loslasse wird der Port wieder gelöscht. Nur muss ich das nun noch entprellen. Da hab ich den Kommentar von PeDa in der Routine nicht verstanden "call with debouncing time (10..200msec)" ansonsten
Code am LED Port angezeigt wenn ich die Taste loslasse wird der Port wieder gelöscht. Nur muss ich das nun noch entprellen. Da hab ich den Kommentar von PeDa in der Routine nicht verstanden "call with debouncing time (10..200msec)" Vieleicht
-
Thread
Monostufe mit Retrigger für Arduino
einfach den gpt-Code und passe ihn so an, dass er funktioniert wie gewünscht. AFAIK ist da auch kein Tasten-Entpreller drin... Und ja, den gpt-Beifang hättest Du nicht unbedingt zu posten brauchen. Aber ich verstehe dich schon ein wenig, denn manchmal ist man einfach überrascht über die Konversation mit
Umbau fremden Codes ist meist schwieriger, als eigenen zu schreiben. > AFAIK ist da auch kein Tasten-Entpreller drin Wird man dann lernen. Das ist in dieser Anwendung ganz einfach zu machen, weil nichts zeitkritisch ist.
-
Thread
(Assembler) Taster für einen Lauflicht programmieren? Abi-aufgabe 06
Taste in extra Hardware entprellt ist. Deshalb werden Tastenabfragen zu 99% mit Pollen und Entprellen im Timerinterrupt realisiert. Peter
Musst du den Taster wirklich entprellen ? Reicht es nicht dass du während dem Leuchten der besagten LED permanent den Taster abfragst und bei Gedrückt-Erkennung dann fortfährst ? Es ist ja nicht so dass Prellen in
-
Thread
Doppelklick abfragen - Welches ist die beste Strategie ?
Wird die Taste einmal "kurz" gedrückt fährt der Rolladen bis an seine Endposition (Der Rolladen fährt los, sobald die Taste gedrückt wird - also noch vor dem Loslassen) Wird die Taste "lang" gedrückt ("gehalten
aber als den besten an? D.h. der Timerinterrupt wird ausgelöst und in der Interrupt-Routine wird die Taste gepollt? Alternativ könnte man ja auch einen Interrupt auslösen sobald eine Taste gedrückt wird? Mir ist übrigens aufgefallen, dass bei großen Interrupt-Zeiten (100ms pro UP-Aufruf) ein Entprellen
-
Thread
Hardware-Tastenentprellung
Wahrscheinlich zum 100ten mal. Ich suche jedoch eine gute Moeglichkeit, Tasten per HW zu entprellen. Hierzu habe ich eigentlich nur die Schaltung in diesem Artikel gefunden: http://www.mikrocontroller.net/articles/Entprellung So. Da steht der Taster darf nicht kurzschliessend
Wenn ich 10 Taster mit dem NE555 entprellen will wird das aber zu gross und zu energieaufwaendig. Ich hab mich jetzt entschieden das mit einem MC zu machen, soll ja auch moeglichst klein werden.
-
Thread
Konzeptfrage: alle Lichttaster im Haus an MCU
weil welche Einstreuungen würden mA für den Optokoppler bereitstellen über längere Zeit. Die Taster / Optokopplerauswertungen würde ich eh entprellen -> dannegger bullet proof hier im Forum der Taster muss länger als die Entprellzeit gedrückt sein, ich finde 10ms Timer sinnvoll in einer ISR mit
Joachim B. schrieb im Beitrag #3971823: > Die Taster / Optokopplerauswertungen würde ich eh entprellen -> > dannegger bullet proof hier im Forum Bei solchen Aufgaben reicht auch schon ein kurzes Delay um das Prellen zu unterbinden. Der µC wird sich
-
Thread
Automatenzustände schalten willkürlich um, ich bitte um Unterstützung
logischerweise genauso ist. Meine Idee nun: "btnci", "split" und "csz" (allesamt Signale, die über Taster eingebunden werden) zu entprellen und anschließend nur einen kurzen Impuls an die Bausteine der Halteglieder zu übergeben. Ich habe schon mehrere Versuche unternommen, dies zu realisieren, jedoch ohne
des Taktes sind D-FFs aus den Latches geworden. Allerdings bleibt das Problem, dass ich eben die Tasten entprellen und das Signal so an die Halteglieder weiterleiten muss, dass bei einem Tastendruck lediglich EIN Zustandswechsel erfolgt. Diese Toggelei nervt ganz schön...
-
Thread
Hardware Entprellung - Welche Werte?
Hi ich entprelle meine Tasten normalerweise mit 10k/100nf. Momentan bastel ich an einem USB interface für alte Joysticks zum Zocken... Zum Teil können die Dinger ganz schön prellen, daher wollte ich das auch
, der Schmitt-trigger-Eingang ist hochohmig genug oder man setzt zwischen C (Elko) und Taster nen 33 Ohm. Fröhliches Tasten! W.S.
-
Thread
Warum Gray Code für Drehencoder?
Zähler würde munter vorwärts zählen. So wie in Zähler, dessen UP-Eingang man mit einem einfachen Taster zum druafdrücken versieht. Der zählt bei jedem Tastendruck auch nicht +1, sondern um einige Impulse weiter, eben so viel wie der Taster prellt. Man müsste die Tasterkontakte entprellen. Das geht
der Auswertung des für den gemeinen "Hobbybaster" interessanten Drehgeber's ist eben so simpel wie Tasten zu entprellen, oder ein "Hello World" zu programmieren. Man kann es auf die Handinnenfläche schreiben. (1) Man liest in kurzen Zeitabständen die Encodersignale A u B ein. Macht man das mehr als
-
Thread
Bitte drüberschauen, USB-VS1053-ATMEGA
gewährleisten. Wenn du's richtig machst verlierst du keine Zeitauflösung durch die Matrix. Du musst deine Taster sowieso entprellen, hast also sowieso eine kurze Verzögerung zwischen Tastendruck und Aktion. Das ist im Bereich von ein paar bis höchsten 30ms was da nötig ist. Zwischen zwei so samples kannst du
> Wenn du's richtig machst verlierst du keine Zeitauflösung durch die > Matrix. Du musst deine Taster sowieso entprellen, hast also sowieso eine > kurze Verzögerung zwischen Tastendruck und Aktion. Das ist im Bereich > von ein paar bis höchsten 30ms was da nötig ist. Zwischen zwei so > samples kannst
-
Thread
Störungen bei 4*4 Tastatur
Hi, Sind die Singal-Pegel der Tasten ausreichtent dimensioniert? mfg
bastle auch gerade an einem Tastaturprogramm rum. Hab wie Peter geschrieben hat ebenfalls die Taster direkt an die Port Pins gehängt und Pull-Ups hinzugefügt. (3x4 Matrix) Jetzt bin ich am grübel, wie ich diese Routine am elegantesten Programmiere. Zum Entprellen reicht es doch, wenn ich nach
-
Thread
Taster richtig entprellt?
Taster so richtig entprellt ist. Atmega 8, an PB0 Taster gegen Masse (active-low), an PB1 LED, leuchtet, wenn PB1 low ist. Die Funktion zum Entprellen habe ich hier aus dem Tutorial so kopiert (und hoffentlich
-------------------------------------------------------------- /*Funktion zum einfachen entprellen der Tastern*/ inline uint8_t debounce(volatile uint8_t *port, uint8_t pin) { if ( ! (*port & (1 << pin)) ) { /* Pin wurde auf Masse gezogen, 100ms warten */ _delay_ms(50); // max.
-
Thread
Externer Interrupt entprellen?!
Variable um 2 oder 3 hoch. Aber die Variable soll wirklich nur EINMAL hochzählen, wenn ich den Taster betätige. Allerdings weis ich nicht wie ich den externen Interrupt entprellen soll per software. ODer muss ich denn per hardware(RS FF oder so) entprellen? Danke, Tobias
entsprechenden Taster. MfG