-
Thread
Pneumatikzylinder Steuerung
. In > deiner Zeichnung ist es richtig. ok danke ! Das mit den zwei Wiederständen an den Tastern ist echt blöd das sehe ich jetzt erst. Aber sollte man Taster nicht generell Entprellen ? Die sind ja Schließer. Ich zeichne das hier mal provisorisch ein wie ich das eig. Gewollt hatte. Und
Albert H. schrieb im Beitrag #6279616: > Aber sollte man Taster nicht generell Entprellen ? Ja, und ich habe Dir oben auch aufgezeichnet, wie man das macht. Auch am Ausgang des Sensors brauchst du einen Pull-Down Widerstand. 100k@ ist viel zu hochohmig
-
Thread
Blockieren sich Interrupts gegenseitig?
deinem ersten Interrupt mittels "sei()" die Interrupts freischalten. Vergiss aber nicht, deinen Taster zu entprellen, oder andere Maßnahmen dafür vorzunehmen. Gruß, Yaro
startet und dann beendet ist so wird auch der Timer-Int ausgelöst. > Vergiss aber nicht, deinen Taster zu entprellen, oder andere Maßnahmen > dafür vorzunehmen. da liegt schon eher das Problem, wobei der ausgelöste Timer-Int ja nicht verloren geht - warten wir mal auf den Code ... Sascha
-
Thread
Frage zu Lauflicht
deren Kontakte prellen und wie man die vorteilhaft auswertet. Bisher habe ich mir mit entprellten Tastern geholfen. Anfangs war allerdings das noch kein richtiges "Entprellen", sondern nur ein Abfragen im Timer-Int, inzwischen habe ich Peter Danneggers Entprellroutine(n) (Codesammlung) verstanden und
Timer mach ich es dann so, das ich alle ??ms den Drehgeber abfrage, oder? Oder meinst du anders entprellen?
-
Thread
Tastenentprellung mit PWM in C
Entprellung an sich ist kein Problem. Zwei Taster entprellen auch nicht. (Gibt hier was vielgelobtes von Peter Dannegger). "Einstellung PWM (Berechnung der Frequenz, der PWM)" ist ein bischen merkwürdig. Wenn man die Timerparameter kennt kann
steht also zu vermuten, das im Zusammenhang mit: >Das Programm ist eigentlich nur ein Zähler. 2 Taster werden angesteuert >(Aufwärtszählen, Abwärtszählen). 1111 ist der Maximalwert (also max 15). gemeint ist, das der PWM-Zyklus in 16 Teile geteilt und in dieser Auflösung mit den Tasten eingestellt
-
Thread
Low-Level Interrupt (nicht Flanke) INT1: Entprellmethode?
Meine Kristallkugel sagt mir, dass es um einen AVR geht. Entprellen mache ich üblicherweise über eine ISR, die alle 10ms auf den Tasten-Port schaut. In einer Anwendung mit ähnlichen Rahmenbedingungen wie Deiner hatte das aber zu Problemen geführt. Taster sollen
die Taster-Abfrage wird erledigt in taster.c http://www.mikrocontroller.net/topic/100892
-
Thread
Tastatur Abfrage - Tastenfolge merken!
Taste wieder losgelassen wurde. Also dein Programm ein wenig umstrukturieren: call key_release ; warten biss keine Taste gedrückt call key_press ; warten bis Taste gedrückt und wert in W liefern
direkt danach Taste weiter verarbeiten. wieder Abfrage. oder Interrupt: bei Tastenbetätigung Anzahl von Interrupts aufnehmen welche Taste Abspeichern Warten Ende Anzahl gibt wieder wieviele Tasten betätigt
-
Thread
Anfänger Frage zum Timer eines Mega32
Hallo Hanne, kannst du mir bitte dein Code zum Taster entprellen senden, hab schon eines aber ohne interrupt routine!
> kannst du mir bitte dein Code zum Taster entprellen senden, hab > schon eines aber ohne interrupt routine! Das ist nicht "mein" Code, sondern der von Peter Dannegger. Du findest ihn in der Codesammlung. Suche im Betreff nach "bulletproof
-
Thread
Bitte nur um ein Kontrolle eines Schaltplan's(Atmega/Saa1064)
100n parallel zu einem Taster sind ein ziemlich sicherer Weg, diesen über kurz oder lang ins jenseits zu befördern. Weg damit, Entprellen per Software.
H.Joachim Seifert schrieb im Beitrag #3705456: > 100n parallel zu einem Taster sind ein ziemlich sicherer Weg, diesen > über kurz oder lang ins jenseits zu befördern. Weg damit, Entprellen per > Software. Also ich habe den Kondensator auch verbaut. Ich habe mich da aber
-
Thread
Tastenentprellung und einmalerkennung
Leute! Hat jemand für mich einen Code für eine Tastenentprellung mit Timer? (AVR MCU in C) Also Taste Entprellen beim Drücken, Taste Entprellen beim Los-lassen, sowie Einmalerkennung (d.h. taster soll erst wieder abgefragt werden wenn er losgelassen wurde) Habe mir schon gestern einige Stunden den Kopf zerbrochen.. und habe angefangen mit Variablen herumzuscheißen. Wenn der Taster gedrückt wurde wird die variable gesetzt und wenn die variable gesetzt ist und der Taster losgelassen wird wird sie wieder gelöscht. Nur dann kommt noch das Entprellen dazu und das macht mir unheimlich
-
Thread
Programm für Bascom
bis entweder die taste L noch weitere 2x gedrückt wurden, oder einmal die taste R. das ganze nun andersrum mit der rechten taste, 1x drücken LED R und Kontrolle an solange an bis entweder taste R noch weitere 2x gedrückt
Hallo Reinhard, genau, Du mußt a) die Tasten entprellen und b) einen Tastendruck als solchen erkennen (insbesondere das Loslassen) Ich würde das über einen Timerinterrupt machen. Wenn Du ihn mit 1000Hz laufen läßt, dann kannst Du messen,
-
Thread
CD40110-Anzeige springt wie wild zwischen Ziffern hin und her
Kiesling schrieb im Beitrag #5235244: >> Wie sieht es denn mit einer Tastenentprellung aus? > > Taster ist zum Testen gar nicht erst verbaut, will einer Tastentprellung > nach Möglichkeit aus dem Weg gehen, indem ich prellfreie Taster benutze > (falls das denn überhaupt geht!). Prellfreie Taster
Felix Kiesling schrieb im Beitrag #5235227: > Geplant ist es, über diesen Pin mittels prellfreiem Taster hochzuzählen. Entprellen kann man auch in HW: Tiefpaß (100k+100nF) und Schmitt-Trigger (CD4093).
-
Thread
Hilfe bei Assembler Program
ansehen könnte und verbesserungsvorschläge machen könnte. Besondere Probleme hab ich noch mit dem Taster und dessen Auswertung. Gruß Malte.
5 7-S-Anzeigen würde ich im Multiplexbetrieb ansteuern (8+5=13 Portpins, Schaltplan anbei). Die Tasten würde ich entprellen. Dazu nehme ich immer einen Timerinterrupt als zentrales Arbeitspferd für alles zeitabhängige. D.h. der würde die Multiplexausgabe und das Entprellen übernehmen. Zum Entprellen
-
Thread
Der STACK - Unterprogramme mit variabler Parameteranzahl
gut. Damit man den Profis nicht in die Quere kommt. Wo keine Frage zu einfach ist... z.B.: Entprellen.Suche Erklärung in Worten:Funktionsprinzip, Varianten ("viele Wege nach Rom").Warum macht es jeder anders? Entprellen von Tastern kann doch kein so massives Problem sein? Gibt es keine optimale
optimale Lösung für fast alle Fälle?" Leider nicht! Geht auch nicht, kommt immer auf den Schalter/Taster- Type an und welche Hardware vorliegt. Mit µP und Tastatur muß man anders umgehen als mit µP und einzelnen Tastern oder Schaltern (auch wenn einige das anders sehen mögen). Wenn Gatter übrig sind nehme
-
Thread
Encoder/Drehgeber zu langsam
GLCD_Init(); GLCD_ClearScreen(); SetFont(ARIAL_14_BOLD); LCDSoftText("HELLO WORLD!",0,0); // Taster konfigurieren (#define NUM_TASTER 3 in taster.h) tasten[0].mode = TM_SHORT; tasten[1].mode = TM_SHORT; tasten[2].mode = TM_SHORT; tasten[3].mode = TM_SHORT; tasten[4].mode = TM_SHORT
PS So was [C] if(tast != NO_TASTER) taster = NO_TASTER; [/C] kannst du dir sparen. Auch Abfragen sind nicht kostenlos! Weis einfach den Wert zu, den taster auf jeden Fall haben soll und gut ists. Und versuche
-
Thread
LED Würfel ATTINY13
>[code] if ( PINB ^ ( 1<<PINB4 ) );[/code] Du fragst den Taster mit XOR ab. Taster gedrückt: 1 XOR 1 = 0 Taster nicht gedrückt= 0 XOR 1 = 1 Verwende also ein & statt ^. eventuell solltest du in Erwägung ziehen, den Taster zu entprellen. Du hast zwar ein
richtig? M. S. schrieb im Beitrag #3831975: > eventuell solltest du in Erwägung ziehen, den Taster zu entprellen. Du > hast zwar ein delay von 100 ms drin, da kann aber bei etwas längerem > Tastendruck auch mehrmals auslösen. Stimmt, danke, werde ich machen. Danke! Gruß
-
Thread
Digitalen Eingang für Koppelrelais
Entprellen macht man nicht per Kondensator, sondern in Software. Der Kondi macht nur die Schaltflanken langsam.
>>> - C7 hat 1uF (Entprellen) >> Nope. Entprellen macht man eher im SW. Ist flexibel. > > C7 blockt auch Hochfrequenz, man will ja auch direkt neben dem Eingang > mit dem Handy telefonieren ;) Dafür ist 1uF allerdings
-
Thread
Probleme mit Tasterentprellung
angeschlossen ist, Deswegen möchte ich den Taster gerne entprellen. Da die main methode im Ruhezustand keine anderen Aufgaben hat außer den Schalter zu überwachen kann ich mir einen etwas längeren interupt leisten. habe es mit folgendem Code versucht
Stefan wrote: > Nun habe ich aber Probleme mit der EMV bekommen da der Taster an einem > längeren Kabel angeschlossen ist, Deswegen möchte ich den Taster gerne > entprellen. Dazu hat sich bei mir die 4-fach Abtastung bewährt. Ein Zustandswechsel wird nur dann übernommen
-
Thread
Microcontroler Schaltet sich nicht selber ab
abgebrannt ist oder die Leitungen bei 7,2A alle durchschmoren. >> Tastenentprellung fehlt. > Der Taster überbrückt doch nur den FET und wird nicht vom mC gelesen > trotzdem entprellen ? Es gibt Taster und Schalter. Was hast du? mfg
vermute mal was F 1 A oder so muss ich mal ausrechnen ... > >>> Tastenentprellung fehlt. >> Der Taster überbrückt doch nur den FET und wird nicht vom mC gelesen >> trotzdem entprellen ? > Es gibt Taster und Schalter. Was hast du? Taster, ein Schalter macht ja keinen sin ! > > mfg
-
Thread
Variable wird nach verlassen der PCINT ISR wieder auf vorherigen Wert gesetzt
Man nimmt besser einen Timerinterrupt, z.B. 10ms. Der macht dann Entprellen, Flanke erkennen, kurz/lang/repeat unterscheiden, Ereignisflags fürs Main setzen. Quasi die eierlegende Wollmilchsau fürs Tasten einlesen. Der Pin-Change Interrupt macht nur das Aufwachen bei
schrieb im Beitrag #6647017: > Man nimmt besser einen Timerinterrupt, z.B. 10ms. Der macht dann > Entprellen, Flanke erkennen, kurz/lang/repeat unterscheiden, > Ereignisflags fürs Main setzen. Quasi die eierlegende Wollmilchsau fürs > Tasten einlesen. Danke für den Vorschlag! Echt eine gute Idee, werde
-
Thread
Taster Abfrage
Und Tasten macht man normalerweise nicht mit Interrupts. Das machen nur Amateure.
und so lange durchläuft bis eine Taste gedrückt wird, um dann eine Variable zurück zu liefern. mfG michael
-
Thread
timer zeit per taster ändern
10ms einen Blick auf den Input Port wirft, dann reicht das vollkommen aus. Kein Mensch kann eine Taster schneller drücken bzw. drücken-loslassen. Das viel größere Problem (und auch der Grund, warum ein Interrupt bei Tastenbetätigung keine gute Idee ist) ist, das Tasten prellen. Eine gute, bewährte
für Multiplexen der Ebenen - TIMER1 für umschalten der Bilder - astabile Kippstufe an INT0 - 3 Taster an normale PINS, entprellen und in einem dritten Timer abfragen - wenn Taster für umschalten zwischen kippstufe und Timer für Geschwindigkeit des Bildumschaltens gedrückt wird -> TIMSK entsprechend
-
Thread
LCD: Text blinken
eine gültige Eingabe (also mit ENTER oder so in etwa) empfangen wurde. Der Interrupt für den Taster geht zum Spielen jetzt erstmal. Allerdings, wenn du eine stabile Funktionsweise haben willst, solltest du dich mal mit "Entprellen von Tastern" auseinandersetzen. In deinem jetzigen Fall (nur mit
... wobei ich ja mal gehört habe, dass man Taster auch hardwareseitig entprellen kann ;-) Für den allerersten Anfang sollte wohl ein Kondensator reichen (so 1...100nF). Ansonsten wirst du sicherlich hier noch fündig: http://www.mikrocontroller.net
-
Thread
Abarbeitung nach Interrupt INT0
Da mechanische Taster prellen, ist das mit dem Interrupt keine gute Idee. Hier im Forum gibt es diverse Routinen zum Entprellen per Software, die du dafür nutzen kannst. Die Ergebnisse fragst du dann einfach in der Hauptschleife
Signalwechsel" warten zu müssen. Deshalb hab ich die "delay-Zeit" auf nur 30 ms gesetzt. Vom Entprellen der Taster natürlich abgesehen, mir gehts nur darum, wie ich aus der Interrupt-Funktion wieder herauskomme. Gruß
-
Thread
Wie aus einem Schalter einen Taster machen?
Hallo, Schalter mit geeignet großem C entprellen, Schmitt-Trigger dahinter, über einen Kondensator einen Nadelimpuls basteln und ein MonoFlop triggern. Sollte mit einem 4093 und 5-6 passiven Bauteilen zu erschlagen sein. Gruß aus Berlin
beim zuschließen einschaltet und beim aufschließen ausschaltet. Die Alarmanlage wird durch einem Taster scharfgeschaltet und durch einen zweiten Taster auf unscharf geschaltet. Jetz mein Problem: Da im Türrahmen der Wechseltaster, beim zuschließen immer Kontakt hat, funktioniert die Anlage nicht.
-
Thread
Prellen Optokoppler?
moin, habe hier immer wieder von tastern und entprellen gelesen, ich verwende ausschließlich optokoppler für die eingänge und frage mich nun, ob ich softwaremäßig entprellen muß oder sollte. Ich würde denken nein, aber wenn der optokoppler an einen prellenden Taster angeschlossen ist?
-
Thread
Was stimmt an diesem Code nicht?
, bis der Taster wieder losgelassen wird. Also müssten beim Halten der Taste die LEDs durchlaufen. Aber vielleicht sind in den Arduino-Funktionen noch geheimnisvolle Eigenschaften versteckt, die das verhindern .
aber da digitalRead nur den Zustand eines Ports zurück gibt, kann die Funktion nicht wissen, ob ein Taster oder etwas anderes angeschlossen ist. Ich habe auch ein Beispiel-Code zum entprellen gefunden: http://www.arduino.cc/en/Tutorial/Switch
-
Thread
Mehrere externe Interrupts C für ATMega16?
interrupts benutzen willst. Aber nur bis zu dem Zeitpunkt, da er merkt, dass man mechanische Tasten sowieso entprellen muss und daher einen Timerinterrupt stattdessen benötigt...
Jörg Wunsch wrote: > Aber nur bis zu dem Zeitpunkt, da er merkt, dass man mechanische > Tasten sowieso entprellen muss und daher einen Timerinterrupt > stattdessen benötigt... Hallo Jörg, ich dachte die Entprellung der Taste erfolgt dann in der Funktion, die die Taste aufruft. Ok, eswar
-
Thread
Problem: CodeVision AVR, Pointer, String & LCD
/ lcd_gotoxy(0,1); // sprintf(text,"%8p",*baud_messages[i]); // lcd_puts(text); entprell_status = entprell_d(1); if (entprell_status == 1) { if (i<5) i++; else i = 0; lcd_gotoxy(0,1); sprintf(text,"%10p",*p_baud[i]); lcd_puts(text)
lcd_clear(); lcd_putsf("Fertig."); while(1){}; } unsigned char entprell_d(unsigned char e_bit) // Unterprogramm zum Entprellen der Taster an PORT D // gibt "1" zurück, falls Taster noch gedrückt, ansonsten "0" { int maske = 0; maske = ((e_bit << 2) &
-
Thread
Taster Abfragen (Selbstabschaltung)
, den Taster gerne weiter auswerten.
Die tasten Erkennung, ich habe am PIN2 vom Taster ja keine 5V anliegen da liegt GND Potential...
-
Thread
7 Segmentzähler CMOS Ersatz für TTL
LED Anzeige entsprechend dunkler. Allerdings funktioniert die Pfusch-Schaltung so nicht. Der Taster ist nicht entprellt, liefert also pro Tastendruck mehrere Impulse, somit zählt der Zähler nicht +1 weiter sondern zufällig wie ein Würfel. Man müsste (auch in der Originalschaltung) den Taster entprellen
Taster entprellen. > > http://www.dse-faq.elektronik-kompendium.de/dse-fa... Ja, das müsste ich dann noch einbauen. > > Einfacher wäre natürlich ein CD40110 > ... Wie ist das eigentlich mit
-
Thread
Taster
Ich benötige 2 Taster für meinen Roboter. Nun habe ich folgendes programmiert, jedoch passiert nichts. taster.c //Funktion zum beide Ports auf Eingang zu schalten void ioinit() { //Taster auf Input //An den Tastern die PullUps aktivieren DDRC &= ~( 1 << PC0 ); DDRC &= ~( 1 << PC1 ); PORTC |= ( 1 << PC0 ); PORTC |= ( 1 << PC1 ); } /* Einfache Funktion zum Entprellen eines Tasters */ inline
-
Thread
AVR Anfängerfrage Timer1
Isr_von_timer1 Config Timer1 = Timer , Prescale = 256 Enable Interrupts DO DEBOUNCE Pinb.0 , 0 , Entprellen, SUB IF Zustand = 0 THEN Portd.0 = 0 ' Lampen entsprechend Zustand schalten Portd.1 = 0 Disable Timer1 ' Stoppuhr aus IF Taste = 1 THEN Zeit = 0
ist übergelaufen jetzt resetten INCR Zeit ' Überlauf als Sekunde zählen RETURN Entprellen: INCR Taste if Taste > 3 THEN Taste = 1 ' (EDIT) Tasten resetten RETURN [/pre]
-
Thread
6-stufigen Drehschalter durch 3 Taster (up/down + Reset) ersetzen
Zählrichtung betätigt werden soll, benötigt er einen kurzen Low-Impuls. Daraus folgt, dass ich die Taster gegen V_CC gehen lassen muss, um nach dem Entprellen per CD40106 dort einen Low-Impuls zu erzeugen. Soweit so gut und auch kein Problem. Allerdings habe ich ein Problem mit dem Ausschalten, wie du
Chips, wenn mittels analogem mux, ansonsten ein Chip + Transistoren + Relais wenn mit Relais. Entprell RC Filter fuer die Tasten nicht vergessen.
-
Thread
I/O-Operationen via Timer-Interrupt - gut oder überflüssig?
gecheckt ("Liegt etwas an?") und nur wenn JA, wurde qualitativ ausgewertet: der Code der gerückten Taste in ein Puffer eingelesen. (Amstrad 8 Bit Z80 System mit 4 MHz).
So weit wollte ich gar nicht in die Tiefe gehen. Es geht um einen kleinen µC, mit ein paar Tastern und ADC-Eingängen. Der Timer Interrupt sollte dabei u.a. das Entprellen vornehmen und noch ein paar Notwendigkeiten, die keine nenneswerte Rechenleistung verlangen. Mehr nicht. Ein kleiner µC
-
Thread
Taster maskieren
Ich würde mir außerdem diverse Aktionen zum entprellen der Tasten überlegen. http://www.mikrocontroller.net/articles/Entprellung Ein kleiner Tipp am Rande: Ich verwende Bitoperationen wie (PIND & (1<<PD0)) nur beim Initialisieren des Prozessors
durchsuchen war zu Fehler führen kann. Dass gleiche Prinzip kannst du auch bei der Auswertung der Tasten anwenden.
-
Thread
LCD nach Ein/Ausschalten TOT?
Sekunden!) *Tastenabfrage* Übrigens: Du machst im Moment die Abfrage eines ganzen Ports, um eine Taste herauszufinden. Dadurch kannst du nicht zwei Tasten gleichzeitig abfragen (Scroll-Taste UND Sende-Taste). Es wäre besser die einzelnen Bits zu testen Statt if (PINC == 0xFE) besser #define
Und versuche, nicht alles auf einmal zu machen, teile die Aufgaben auf, z.B.: wenn Taste 1 betätigt, führe Aktion 1 aus. wenn Taste 2 betätigt, führe Aktion 2 aus. usw. Beachte auch den feinen, wichtigen Unterschied: "Taste wurde betätigt" ist ungleich "Taste ist im gedrückten
-
Thread
expected ')' before '&=' token
Variablen: volatile uint8_t Sollwert = 0; volatile uint8_t Prozent = 0; volatile uint8_t TasterPlus_gedrueckt = 0; volatile uint8_t TasterMinus_gedrueckt = 0; while (1) { //TasterPlus entprellen!!! if ( 1 == (TasterPlusPIN & (1 << TasterPlusANS))) { _delay_ms(Antiprell); TasterPlus_gedrueckt = 1; } else { TasterPlus_gedrueckt = 0; } //TasterMinus entprellen!!! if ( 1 == (TasterMinusPIN & (1 << TasterMinusANS))) { _delay_ms
-
Thread
TASTER mit AT90CAN128
zu entprellen. Wie mache ich das?
welche Ports bei dme genannten Controller GPIO sind? Und gibt es vielleicht Beispiele zu dem Thema Taster entprellen? Danke
-
Thread
AtTiny13A - umgekehrtes Verhalten beim Taster
on(); _delay_ms(500); off(); _delay_ms(500); } while(1) { // Taster gedrück? if ( PINB & ( 1 << TASTER ) ) { tasterOn = 1; // entprellen for(uint8_t i = 0; i<100; i++) { _delay_ms(3); if ((PINB & ( 1 << TASTER )) == 0) { tasterOn = 0; break; } } // Taster über längere Zeit gedrückt? if(tasterOn == 1) { on(); _delay_ms
-
Thread
Externer Interrupt / PullUp / EMV-Problem?
Danke für den Tip... Am entprellen liegt es jedoch nicht. Den Taster hab ich mittels eines Timers entprellt. Das Problem besteht ja auch nicht beim Drücken des Tasters, sondern das Problem ist, daß der ext. Interrupt ausgelöst wird obwohl kein Taster betätigt wird. Rolf.
-
Thread
Taster an Controller
Hallo Ich müßte für ein System 3 Taster mit einem längeren Kabel(0,5 oder 1,0mm²) an einen Controller anschließen. Wie lang könnte man ein solches Kabel machen, daß es keine Störeinflüsse gibt und der Taster bzw der uC noch einwandfrei
musst nur schauen, wie du den controller vor statsche endladunngen schützt und evtl per hardware die taster entprellst gruss jens
-
Thread
Spannung mit Taster einschalten
geht das am Besten mit einem D-Flipflop aus der 4000er-CMOS-Serie. Den D-Eingang auf /Q führen, der Taster erzeugt CLK (entprellen!), jeder Tastendruck toggelt jetzt das FF. Ein Ausgang (Q oder /Q) schaltet einen PNP, der die Versorgung des µC schaltet. Oder halt diskret das FF mit Transistoren aufbauen
ist. Ausschalten kann sich der Controller dann selbst per Software. Oder über einen weiteren Taster.Oder über den Comparator,der Emitter und Kollektor des Transistor auf Gleicheit prüft.Ist der Taster gedrückt,so liegt hier kein Spannung.Andernfalls gibt es eine kleine 'Fluß'-spannung..
-
Thread
Entprellen Systick Debounce STM32
schreiben welche mittles "systick-interrupt" und dem in- bzw. dekremetieren der Schaltzustände für das Entprellen mehrerer Taster sorgt. ich hab hier http://www.emcu.it/STM32/STM32Discovery-Debounce/STM32Discovery-InputWithDebounce_Output_UART_SPI_SysTick.html dazu entsprechende Codeschnipsel gefunden ->
muß also schon wissen, welche Pins er alle entprellen soll. Das Main kann dann entscheiden, welches Bit (= Taste) es maskieren, also auswerten will. Bequemer Weise macht man die Entprellung auf ner 32Bit-CPU für 32Bit parallel, auch wenn es weniger
-
Thread
Probleme mit externen Interrupts am ATmega328P
mit Polling oder du musst mit Hardware den Taster entprellen lassen.
&= ~_BV(INT0); } [/c] und der trigger steht auf LEVEL. Abfrage in der Timer-ISR ist bei Tasten über I2C-Portexpander natürlich etwas blöde, je nachdem was sonst noch am I²C hängt. Da würde ich das auslesen/entprellen in die main-loop packen, und mit dem Timer nur eine Zeitbasis dafür bereitstellen
-
Thread
T-FlipFlop will nicht wie ich will
Kondensator durch 68pF. Sicher nicht die richtige Massnahme. Ich tippe nach wie vor auf den Taster, oder daß der Taster, wenn man ihn drückt, zu Wackelkontakten auf dem Steckbrett führt.
Kondensator durch 68pF. > > Sicher nicht die richtige Massnahme. > > Ich tippe nach wie vor auf den Taster, oder daß der Taster, wenn man ihn > drückt, zu Wackelkontakten auf dem Steckbrett führt. Naja der Taster ist nicht der neueste. Ich finde es aber verwunderlich,dass mit Kondensatorwerten >1nF
-
Thread
taster mit atmel8
hab auch mir auch schon das AVR Tutorial angeschaut. Nun habe ich noch eine Frage, wie ich eine Taster Einstellung einlesen kann. Ich habe an Port D, Pin 2 und Pin 1 jeweils einen Taster angeschlossen, mit dem ich an Port C, Pin 0 und Pin 5 eine LED schalten möchte. Hier mein Code: #define F_CPU
Die LED's sind an Port B angeschlossen, die Taster an Port D. Das Problem ist, ich will mit einem Taster 1 Led 1 einschalten und mit Taster 2 Led 2. Und wenn ich beide Schalter drücke, sollen beide Led's angehen...
-
Thread
Anemometer - Timer, Interrupts, USART
ok, werd mal diese schaltung probieren: http://www.mikrocontroller.net/articles/Bild:Taster_entprellen.png da hab ih nämlich die teile da...
wozu eig überhaupt die ganze softwareentprellerei, wenns so einfach in > hw geht? Weil bei 10 Tasten dann doch schon einiges an externer Hardware dazukommt, der * bezahlt werden muss * Platz auf der Platine braucht Und dann natürlich noch: Entprellen ist eine Seite der Medaille. Aber die 'klassische
-
Thread
Platinen selber ätzen
Spannungsversorgung - beim 78L05 fehlen die C's 220n zuvor und 100n dahinter (geg. Schwingverhalten). Die Taster würde ich mit 100n geg. Masse und 100k geg. VCC entprellen. Basiswiderstände könnten gestrichen werden; ich persönlich würde sie aber drin lassen.
drin, C3 und C4. Reicht dicke. Der C am Eingang wird bei Batteriebetrieb nicht benötigt. > Die Taster würde ich mit 100n geg. Masse und 100k geg. VCC entprellen. Kann man sich schenken. Braucht kein Mensch. Siehe Artikel "Prellen" > Basiswiderstände könnten gestrichen werden; ich persönlich würde
-
Thread
positiven puls löschen. wie?
anlegst. Peter P.S.: 1. Die meisten MCs können bereits Interrupts auf Flanke. 2. Die meisten Tasten benötigen eine Entprellung und das klappt besser mit dem Timerinterrupt, besonders bei mehreren Tasten).
Spannungsteiler, z. B. von Zünd-Plus 10K in Reihe und danach parallel zu GND 4,7K oder Z-Diode 4,7V. Zum Entprellen kann man nach dem Spannungsteiler einen Kondensator zu GND schalten oder per Software Entprellen. Gruß Andi
-
Thread
Entprellen. Kein Widerstand gegen Vcc?
Siehe Bild beim einfachen Taster im Artikel [[Entprellung]]. Threshold Voltage von Schmitttriggerarray HEF40106B: [math]V_{T+}=3V[/math] [math]V_{T-}=2,2V[/math] Laut dem Artikel errechnet sich [math]t=20ms[/math] [math]C_1=1\mu F[/math] [math]U_{th}=2,2V[/math] [math]U_0=5V[/math] [math]R_2=\frac{-t}{C_1\cdot ln(\frac{U_{th}}{U_0})}[/math] [math]R_2 \approx 24k\Omega[/math] okay das war abwärts. wenn ich den taster loslasse, soll sich ja alles wieder regeln und über R1 laden... [math]U_{th}=3V[/math] [math]R_1 + R_2=\frac{-t}{C_1\cdot ln(1-\frac{U_{th}}{U_0})}[/math