-
Thread
Hilfe, ich finde den Fehler im Code nicht
ob man nun einmal oder 5 mal auf den taster klickt die LED blinkt dann garnicht mehr. Die variable zvtime schreibt sich aber bei einem klick auf den taster wieder auf 0 also das "klicken" auf den taster geht, denn das sehe ich ja an der anderen
/topic/164194#1566921 Zum Thema Entprellen siehe auch: Artikel [[Entprellung]] Peter
-
Thread
Probleme bei Initialisierung und while Schleife
-wert) < 20) //Wertevergleich der eingelesenen Werte { if (wert1 > 0x07) //Entprelle Taste andrücken { _delay_us(100); } if((wert1 >=0x07) && (wert1 <0x12)) //Wertevergleich Taste 1 { value = 1; if (wert1 <=0x07) //Entprelle Taste loslassen { _delay_ms(100); } } if((wert1 >=0x12) && (wert1 <0x1C)) //Wertevergleich Taste 2 { ... [/C] Schreib doch deine Grenzwert-Zahlen
-
Thread
Schalterentprellung mit digitaler Logik
Entprellst du einen Taster oder einen Schalter? Wenn es ein schalter ist kannst du ein RS-FLipflop nehmen, weil der Schalter ja nicht bis zum gegenüberliegenden Kontakt prellt.
Arsch Gwaf schrieb im Beitrag #2717294: > Entprellst du einen Taster oder einen Schalter? Wenn es ein schalter ist > kannst du ein RS-FLipflop nehmen, weil der Schalter ja nicht bis zum > gegenüberliegenden Kontakt prellt. Das hat nichts mit
-
Thread
Verilog Problem
kann e sein das 63 bzw 127 zu wenig im entprell count sind?
hans schrieb im Beitrag #2721529: > kann e sein das 63 bzw 127 zu wenig im entprell count sind? Das kommt auf den Takt an. Wenn du da mit 50MHz reindonnerst, dann sind 127 (=20ns*127 = 2,56us) /viel/ zu wenig. Denn so ein Taster/Schalter kann schon mal 50ms lang prellen. Und das
-
Thread
PIC - Sourcefehler aber was??
PFEIL_HOCH == 1 || PFEIL_RUNTER ==1 || MODE == 1 || NEXT ==1 || ALARM == 1) { entprell(); } [/c] Alle Kontrollstrukturen (wie if, ...) die in ihrem Anweisungblock nur eine einzige Anweisung haben (wie hier "entprell();"), da kann man sich die geschweiften Klammern sparen: [c] if(PFEIL_HOCH == 1 || PFEIL_RUNTER ==1 || MODE == 1 || NEXT ==1 || ALARM == 1)entprell(); [/c] Das solltest du vielleicht mal Konsquent bei deinem Code anwenden. Des weiteren musst du strikter Formatieren. So verliert man einfach den Überblick. Du hast dich z.B. zum glück für
-
Thread
1 Pol 16 Positionen Schalter
nicht unbedingt. Schreib doch mal, was das eigentlich werden soll, normalerweise gibt es heute 40 Taster fuer die Auswahl und einen Drehimpulsgeber zum Verstellen. fonsana
1,160 € IC3 LM 358 DIP 1,00 0,182 € C3 X7R-2,5 100N 1,00 0,050 € F) Entprellen 0,00 0,301 € 0,000 € RP4 SIL 8-4 47K 1,00 0,101 € CP1-4 X7R-2,5 22N 4,00 0,050 € Summe 29,062 €
-
Thread
Interrupts mit AT2560 für Tastendruck
Öh? Tasten? Interrupt? Ich glaube das hatten wir hier schonmal. Suche bitte danach.
Vergiss Tasten mit einem Interrupt abzufragen. So wichtig ist ein Tastendruck auch wieder nicht. Zudemm muss man entprellen.
-
Thread
Anfängerfrage zu Taster
mit dem Taster und der LED setzen möchte. Bevor ich den C Code poste, ein kleiner Kommentar vorab: Ich habe bewusst auf das Thema Entprellen verzichtet, da ich es als zweiten Schritt implementieren wollte. Mir
ich eingebaut, damit PB1 bei _nicht_ gedrücktem Taster ein fest definiertes Potential - nämlich GND - hat. Um den internen Pull-Up Widerstand zu verwenden, müsste ich doch meine Schaltung umbauen (okay, einmal den Taster umstecken). Nämlich Taster gegen
-
Thread
Welcher Takt in Timer-Overflow-ISR ?
So wie es jetzt ist, funktioniert es einwandfrei ... will ich jetzt allerdings noch Code zum Tasten entprellen in die Overflow-ISR, funktioniert das PWM nichtmehr ...
-
Thread
AD-Wandlung Tastenentprellen
0b00000000; break; } } while (1); return(0); } [/c] Ich gebe die gedrückte Taste an eine 7-Segmentanzeige aus. Solange ich die Taste drücke wird ja auch das richtige angezeigt, aber sobald ich die Taste loslasse oder nur andrücke wird mir alles angezeigt nur nicht der Tastenwert.Deshalb
gesagt nicht ganz verstanden, deshalb ja nochmal meine Anfrage im Forum. Ist es auch möglich die Tasten ohne Interrupt zu entprellen?
-
Thread
Programm anhalten über Taster
[c]int main(void) { ... while(1) { if(ein == 0) while(!(*pPORTFIO & TASTER)); // warten auf Start taste = 1; ein = 1; if(!(*pPORTFIO & TASTER) & taste == 1) taste = 0; // eingeschaltet if((*pPORTFIO & TASTER
nicht.... Da ich von C nich viel Ahnung habe, hier mal eine Flankenauswertung in Assembler ( ohne entprellen) [avrasm] In R16, Port(n) COM R16 ; Bits drehen bei Verschaltung Taster nach GND ANDI R 16, 0b00001111 ; Maske für Bit 0-3 STS New_In, R16 ; neue Bits ablegen
-
Thread
Softwaremäßige Entprellung
Hey, ich programmiere einen Atmega32. Jetzt bin ich am Überlegen, ob ich die Taster soft- oder hardwaremäßig entprelle. Software ist ja eigtl Standard heute, allerdings habe ich das Problem, dass ich den Timer1 dazu brauche, einen Takt im niedrigen Hz Bereich zu erzeugen. Die Frage
weglassen. Ich hatte eben nur "Angst", bei 3 Timern, die der Atmega32 besitzt, einen "nur" fürs Entprellen zu nutzen. Der fehlt mir wenns schlecht geht am Ende an anderer Stelle. Grüße Joe PS: Die Taster schließ ich dann gegen GND, ohne Vorwiderstand, mit aktiviertem Pull up, richtig?
-
Thread
Countdownzähler
damit den ganzen Timer und die Interrupt. Ein grossteil des Codes ist bereits im Netz. Steht unter Taster entprellen drin. Das mir dem wait10 geht korrekt. Habe die Tasterentprellung von PD auch drin und es läuft ohne jede Probleme. Kann jeden Taster auswerten, egal ob kurz oder lang. Leider macht mir
-
Thread
STM32F10x hängt sich in IR bei Displayaufruf auf.
sein sollte. Dieses Projekt beinhaltet: SD-Card, I2C bus anbindungen, USART, RTC, 10 IR fähige Taster, 10 LEDs, LCD usw ;).
Dass Taster prellen ist bekannt?
-
Thread
Arduino Keypad und Multitasking
Nimm einen Timer und eine Zustandsmaschine. In einer anderen Zustandsmaschine verarbeitest du die Tasten. interrupt timer { reload timer timercame=true } main { Zustand=0; while true { if timercame { timercame=false; switch zustand { 0: irgendwas; zustand=1; | 1:
lange gebraucht, bis ich es richtig verstanden habe, doch jetzt geht es ohne Probleme. Kann bis zu 4 Tasten entprellen. Kann kurz oder land auswerten und kann noch viele andere Sachen fast gleichzeitig machen. Habe einen Timer laufen mit 10 ms und leite von diesem alles ab. Bin voll zufrieden. achim
-
Thread
Taster Entprellung mit Monoflop
Tasten entprellen.
>Normal genügt ein Widerstand (auch der µC interne) um einen Taster >anzuschließen, sicher (100%) richtig zu erkennen und auszuwerten, alles >andere ist historisch, überholt, und Bockmist. Na na, oft sind die Taster abgesetzt von der Hauptplatine, da ist zusätzliche
-
Thread
Verständnisfrage zur einer Debounce-Routine
mehr als ich benötige. Ich habe nur einen Taster, welchen ich entprellen möchte. Außerdem befinde ich mich noch am Anfang und würde das auch gerne nutzen, um selbst nachzudenken und dabei vielleicht etwas lernen ;). Mit freundlichen Grüßen, Unlucky2012
bewährt hat, sind Peter Danneggers > "Bulletproof"-Entprellroutinen. Wie gesagt: Halte ich für das Entprellen von nur einem Taster fast für ein wenig Overkill. Vor allem, weil ich keine Doppel-Belegung (kurz/lang) und auch keine Wiederholfunktionen brauche. Außerdem habe ich bloß ein einzigen Taster und
-
Thread
AVR ATtiny25 Impulslängenmessung
und zwar per INT0. INT0 ist fest dem > PB2 zugeordnet. Damit wären wir auch schon beim Thema Entprellen. Beim direkten Auswerten eines Taster per Interrupt gibt es wegen des Tastenprellens bei jedem Schalten einen ganzen Haufen von Interruptereignissen, die man filtern muß, bevor man damit irgendetwas sinnvoll steuern kann. http://www.mikrocontroller.net/topic/tasten-entprellen-bulletproof
-
Thread
Taster debouncen
Suche mal nach "Taster entprellen".
etwas zu begreifen! Einen Taster auszuwerten bzw. zu entprellen ist mit etwas Überlegung und Probierfreudigkeit aus eigener Kraft zu realisieren. Für weniger ambitionierte gibt es fertigen Code mit ausreichender Dokumentation zu
-
Thread
4x3 Tasten Matrix an SPS anschließen
an der Sache wird das Entprellen der Tasten sein sein. Aber dafür gibt es ja auch gute Anleitungen. Viele Grüße Anonymous
ist. Wird die Taste lossgelassen läuft das Takten weiter. Der Nachteil ist, dass gleichzeitige Drücken der Tasten nicht funktioniert. Gruß Roland
-
Thread
Abfrage Taster und Timer
Steuerung mit merker tast++; if ( tast == 2 ) // Einstellung Zeit 10ms mal x tast = 0; // Pause Entprellung 20 ms if (!get_input_bit(IO_INPUT_1)) { // Abfrage S3 bei loslassen
Frage daraus ist auch, wie gestalte ich die Abfrage eines Tasters > mit Timer? Guck dir die Entprell-Routine von Peter Dannegger in der Codesammlung an!
-
Thread
Entprellung via Hardware
) das Auslesen der > Tasterzustände in relativ langen Abständen (so 50-100ms). Das gibt dann Tasten wie in manchen Fahrstühlen, wo meist die Beschriftung "Bitte Taste lange drücken" fehlt, sonst bekommt die Steuerung nix mit ;-(
also witzig sieht die Schaltung ja aus, 4 Ausgänge für das entprellen eines Wechsel-Taster/Schalter. Und dann auchnoch RS-FF selbst gebastelt, sau geil =D was macht ihr mit den 4 Ausgängen? Wo habt ihr die Schaltung zum Entprellen her? Ich kenn nur die Variante
-
Thread
LED - Kickersteuerung
Taster muss man entprellen (bzw. zumindest die Flankenwechsel erkennen). Dafür bietet BASCOM eine Funktion. Das Programm ist erkennbar noch nicht vollständig, und lässt sich wesentlich kürzer schreiben
, erstmal einen Ablaufplan zu erstellen, etwa so: Initialisieren Anfang Loop LEDs bedienen Taster checken Wenn Taste gedrückt, Variable+1 Wenn Variable=10 dann Musik und alles auf Null Alles nochmal ab Anfang
-
Thread
Timer0 löst PCINT1 Interrupt aus?
den Pullup schaltet. Klar, wenn er zuletzt gesetzt wird, ist es auch nicht anders zu erwarten. //Taste, Pin Change Interrupt PCINT8 PORTC |= (1 << 0); PCMSK1 |= (1 << PCINT8); PCICR = (1 << PCIE1); egal in welcher Reihenfolge. Setzt man den Pullup, nimmt ihn wieder weg und dann PCIEx
den PCI vorrangig für Tastenabfragen (auch Matrix) zum Aufwecken aus dem Tiefschlaf (nicht zum Entprellen) vorgesehen. Der Testballon dafür war der ATTiny28, der ja speziell für IR-Fernbedienungen konzipiert war. > Das kann sehr tricky sein, da > es leider kein dazugehöriges Flagregister gibt.
-
Thread
Menüsteuerung mit zwei Tasten (Up/Down) in Assembler
erklärt sich mit dem Tutorial und dem Bild: http://www.mikrocontroller.net/articles/AVR-Tutorial:_Tasten http://www.mikrocontroller.net/wikifiles/2/26/Entprellen.png Ok ?
auf die Erklärungen in den beiden Thread zurückgegriffen: http://www.mikrocontroller.net/topic/tasten-entprellen-bulletproof#41625 http://www.mikrocontroller.net/topic/164194 Nun verwende ich die Routinen von Peter Dannegger in einer angepassten Version in "C" und denke über das 'Problemchen' nicht
-
Thread
BASCOM Problem In Unterprogramme springe und dort bleiben?
Ich probiers mal in Pseudo-Bascom: Main: do if taste1=0 then gosub taste1 <- evtl. Platz für entprellen end if Taster gegen Masse, Pin als Eingang und Pull-Up ein if taste2=0 then gosub taste2 end if loop ----- taste1: do {mache irgendwas} loop until taste1=0 return taste2: do {mache irgendwas} loop until taste2=0 return Problem
-
Thread
If Abfrage mit unterschiedlichen Zeiten
der Weg keine Hindernisse hat. Bei solchen sicherheitsrelevanten Sachen braucht man gar nicht entprellen. Da reicht es, wenn man in regelmäßigen Abständen (bei jedem Durchlauf der Hauptschleife) nachguckt, ob der Taster ausgelöst wurde. Dann reagiert man entsprechend darauf, bis das "Gut"-Signal wieder
10 Millisekunden die Tasten überprüfst, kannst du davon ausgehen, dass du einen Tastendruck auf keinen Fall übersehen wirst. Aber du hast ein anderes Problem: Tasten prellen. Das heißt: dein Benutzer drückt zwar die Taste nur
-
Thread
TTL-Signal von Drehgeber auslesen
anschließen. Ein Inkrementalgeber dürfte eigendlich kaum Prellen, ansonsten kannst du ihn per Software entprellen. Ggf. sind noch Pull-Up widerstände notwending, dafür kannst du aber die internen Pull-Ups des uC verwenden, musst du aber mal im Datenblat des Inkrenetalgeber nachschauen. Die Frage ist was du
Drehbewegung auswerten kann - allerdings mit 'nur' 100-facher Sinusauswertung. Für lineare Heidenhain-Taster ist das ausreichend (0,1µm Auflösung bei MT25); deren sin/cos-Signale sind damit (vorsichtig formuliert) voll ausgereizt.
-
Thread
Einfache µC-Schaltung, wer guckt mal drüber
datenblatt deines displays gucken offene datenleitungen des displays gegen masse ich mach immer an die taster 10k und 100nf als rc glied gegen prellen
KS0070). Außerdem Aref nicht an Vcc, das kann einen Kurzschluss geben bei Referenzumschaltung. Taster entprellen kann man auch in SW machen.
-
Thread
Timer Platine
Sche...?? :-o Das bedeutet an jede "Seite" des Impulsgebers einen Schmitttrigger und auch an den Taster?
Würd ich so nicht bauen wollen. Die Schmittrigger sind überflüssig, die Kondensatoren an der Taste und am Encoder auch. Entprellen macht die Software wesentlich eleganter. An den Anoden der Anzeigen wirst Du nie 5 Volt erhalten (Emitterschaltung und Speisung der Basis über den µC). Was macht
-
Thread
Wie macht ihr Zeitreferenzen
Funktionen > musste ich irgendwelche Zeiten abwaretn (z.B. bei der Entprellung) Definitiv nicht, Entprellen gehört in den Timerinterrupt: http://www.mikrocontroller.net/topic/48465#new Patrick B. schrieb im Beitrag #2635774: > Da aber vielen Orten > immer unterschiedliche "Wartezeiten" zwischen
Patrick B. schrieb im Beitrag #2636172: > Werden 2-4 Taster entprellt (nicht in einer ISR), werden jeweils soviele > Timers (Basis ms) benötigt, Einer reicht für alle. Wenn Taster nur alle zig Millisekunden abgefragt werden, dann hat sich die Entprellung
-
Thread
Taster abfragen - Interrupt vs. Polling - Stromverbrauch
Ich würd den µC so tief wie möglich schlafen legen, den Taster auf einen Interrupt. Innerhalb der Interrupt Routine wird der Interrupt deaktiviert, und falls danach noch Tasten abgefragt werden sollen, wird das über den debounce gemacht. kurz vor dem Schlafengehen
Interrupt (low Level) wird freigeschaltet und Power Down Mode. Danach SLEEP. Beim Aufwachen durch die Taste wird in der Interruptroutine sofort der Int0-IR wieder abgeschaltet (TastINT0: direkt darunter). Dann läuft das Lauflicht wieder los. Die Taste wird in einem Timerinterrupt augewertet, da zwischen
-
Thread
FlipFlop Schaltung mit HEF4043
Hi >3. Taster entprellen Wozu? Das sind RS-FF. Wenn er nicht verbotener Weise beide Taster drückt entprellen die sich selbst. MfG Spess
die Taster entprellen....an einer Schaltung, die millionenfach genau dafür verwendet wurde/wird: Taster/Schalter zu entprellen. Naja, Hauptsache, was gesagt. :-)
-
Thread
Taster entprellen - Warum so kompliziert?
Naja, ich hab mal sicher 1 Woche damit verbracht und mir überlegt wie ich am besten entprelle und mir eine Funktion geschrieben. Zu finden unter: http://bascom-forum.de/showthread.php?3807-Taster-Entprellen-mit-einem-Timer-Einfach-Zweifach-Dreifach-Vierfach...-und-Lang allerdings in Bascom
Tasten entprellen ist nicht trivial. Es lohnt sich ein paar Wochen Entwicklungszeit zu sparen und etwas fertiges zu verwenden. Falls man Dannegers Code nicht verwenden kann / möchte gibt es auch noch http
-
Thread
Bildverarbeitung
ausführen und vielleciht auf einer Schnittstelle > etwas ausgeben. Sinnvoller wäre erst mal einen Taster auf einem Evalboard nehmen, eine einfache Operation damit ausführen (Entprellen, etc) und damit eine LED ein- und ausschalten. Wenn du das geschafft hast, was insgesamt mit Besorgen eines beliebigen
Das Entprellen war nicht als wichtiger Schritt gedacht, sondern eher um ein Gefühl dafür zu geben was man alles beachten muss. kk schrieb im Beitrag #2618473: > Nach 10 Jahren LabVIEW kann > ich damit verdammt
-
Thread
mit 6 Schalter auf USB-Eingang Ereignis auslösen
Sollte das bei 6 Tasten nicht auch mit 'nem FTDI-Chip gelingen? Stefan
Delphi abfragen (http://www.ftdichip.com/Support/SoftwareExamples/CodeExamples/Delphi.htm) (zum Entprellen der Taster in Hardware http://www.mikrocontroller.net/articles/Entprellung) > Und vorallem ich möchte das einfach selber realisieren. Alles was man > selber macht da kennt man sich halt dann
-
Thread
Was für Vorteile bzw Nachteile habe ich mit RTOS(freeRTOS)
möchtest. Also z.B. eine LED blinken lassen, einmal pro Sekunde ein Display updaten, jedesmal, wenn eine Taste gedrückt wird, diesen Tastendruck entprellen und handlen, wenn über USB ein Requst kommt, den beantworten.... Stell Dir mal das Gewürge vor, wenn Du das alles irgendwie in eine grosse while{true
-
Thread
Einfaches Experiement zum Thema Mikroprozessor
Ampel: 3 LEDs, nen taster, taster entprellen, timer....