-
Thread
Arduino schlafen legen und aufwachen mit interrupt
(Taster); //Überprüfen auf Veränderung if (buttonState != lastButtonState) { // Wenn letzter Wert nicht gleich: if (buttonState == HIGH) { buttonPushCounter += 1; ausgabe();
niederohmigen Pullup/down (Richtwert 10K, erhöhen zum Stromsparen kann man immernoch) und 100n über den Taster. Somit hast du elektrisch entprellt und der Controller kann sich auch mal unbehelligt schlafen legen ;-)
-
Thread
Ausgabe an LED's
Pins sind >richtig defiert. Das funktioniert mit deinem Code aber nicht. Dazu musst du a) die Taste "push" entprellen b) die steigende oder fallende Flanke erkennen und auswerten MfG Falk
). process(clk) begin if clk='1' and clk'event then taste <= taste_int; if taste_int /= taste_old then cnt_debounce <= cnt_debounce +1; if cnt_debounce = 100 then cnt_debounce <= (others=>'0'); taste_old <= taste_int
-
Thread
Zwei uC synchron? 1MHz internenr RC-Osci.
laufen, bis sie einen merkbaren Unterschied liefern. Würden die Prozessoren gleich schnell auf die Taste reagieren, wäre es also völlig egal, ob die Takte einige % abweichen. Wichtiger ist: Sie müssen zur selben Zeit einen Anlass zum reagieren erkennen. Z.B. über die Taste. hier ist die Frage: kann
Programmteil stecken, der das Erkennen des Tastendrucks verzögert? Wenn beide Controller nur ständig die Taste abfragen, oder die Taste per Interrupt erkannt wird, sehe ich keine Gefahr, dass du einen Unterschied merkst. Dann ist das Signal von der Taste die Synchronisation, die du suchst. Ansonsten eine
-
Thread
Counter mit Taster - Map fehlermeldung
end if; end process ; end Behavioral; [/vhdl] LED ist auf vier leds gelegt, input auf einen taster auf dem board. Die Synthese laeuft fehlerfrei, translate auch, aber bei Map bekomme ich folgende Fehlermeldung: A clock IOB / BUFGCTRL clock component pair have been found that are not placed
Du solltest auf jeden Fall die Taste entprellen und die clk-Eingänge der FFs mit einer echten Clock verbinden. Wenn der Takt mal schneller wird, bekommst du sonst sofort echte Probleme
-
Thread
Variable erstellen und Zähler kreieren?
schrieb im Beitrag #3924215: > Dann musst du dich um das Tastenpürellen > kümmern... Nicht die Tasten pürieren... ;-) SCNR Paul
Paul Baumann schrieb im Beitrag #3924216: > Nicht die Tasten pürieren... Hat er ja auch nicht geschrieben. http://www.purell.com/ Also tasten desinfizieren. mfg.
-
Thread
Drehgeber auslesen
Du meinst ich soll in den Timer int schreiben: gucke mal alle Ports nach wo Taster / Drehgeber dran hängen ? Z.b. so alle 1ms 1 mal gucken ?
ich Dir keine konkreten C-Tips geben. Aber das Abfragen von manuell betätigten Drehgebern und Entprellen von Tastern benötigt bei halbwegs effizientem Code nicht viel mehr als 1% der AVR-Rechenleistung. ...
-
Thread
Denkfehler / Menü-Programmierung - bitte helft mir :)
Tasten_holen(Tasten_unten, Tasten_oben, Tasten_spezial); if (Tasten_spezial != 12) break; if (i>=200) Prog_gestartet = 0; } } else if(Prog_gestartet_old < Prog_gestartet
Tastenauswertung, das macht man nicht. Du kannst dir auch eine Logik in der main Loop basteln, die das Entprellen übernimmt. [c] for (uint8_t i=0; i<202; i++) { delay(10); Tasten_holen(Tasten_unten, Tasten_oben, Tasten_spezial); if (Tasten_spezial != 12) break;
-
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
[Fischertechnik] Taster schicken Störsignale und gehen in Interruptfunktion(Arduino)
dann ein Stück vorfahren, damit der Taster dann nichtmehr betätigt ist. Jedoch beim Starten des Programms und auch wenn ich die Motoren einschalte springt es manchmal automatisch(ohne das die Taster betätigt werden) in die Interruptfunktion
besonders auf Leitungen zu, die in der Nähe von Motoren liegen. Die Software sollte das Signal von den Tastern entprellen, dabei kann sie es auch gleich entstören (sehr kurze Impulse ignorieren). Alternativ: Mit R/C Filtern entstören. 3) Der Ablauf einer Steuerung sollte nicht in Interrupt-Handlern stecken
-
Thread
Bitmanipulation bei Flanke durch Tastendruck, Anfänger braucht einen Tip..
temp2 sts stellung_alt, temp2 ; alte Tastenstellung mit Status Quo überschreiben Taste_1: sbrs temp1, 0 rjmp Taste_1_keinflankenwechsel ; sprung, tastendruck hat sich nicht geändert!! Taste_1_flankenwechsel: cp temp1, temp3 breq Tastendruck ; sprung, taste wurde gedrückt rcall delay5ms ; anweisungen, taste wurde losgelassen -> entprellen durch warten rcall delay5ms rjmp main Tastendruck: rjmp Bit_aendern
-
Thread
Stoppuhr (PIC16F876A)
beim PIC allgemein. Ich muss unter anderem eine Stoppuhr programmierunden die mit erstdruck auf taster am RA3 startet und zweitdruck (selber) taster stoppuhr anhält , mit assembler, habe probleme mit dem quarz. ich benutze einen externen quarz von 4MHz. Die Anzeige sind 7_segemtanzeige, zwei für stunde
Du brauchst ja eh einen schnellen Interrupt zum Multiplexen der Anzeige (~1ms) und zum Tasten entprellen. In dem kannst Du dann eine Variable runterzählen, bis eine Sekunde um ist. Wie man einen genauen beliebigen Teilerfaktor erhält, ist vom Prinzip her hier erklärt: http://www.mikrocontroller.net
-
Thread
Taschenrechner: ATmega1284p - 15x 7-Segmentdisplay
Vorteile: 1. der Tastenweg wird länger 2. der Tastendruck wird kleiner 3. Taster werden mechanisch weniger belastet 4. die Tastgeräuche werden kleiner Eine Skizze dazu folgt noch. Ein Hinweis noch: Das Prellen der Tasten ist kein Problem, da ich mit Software jede Taste entprelle
Digitalfilter der Tastaturabfrage: 158 / 4 = 40Hz (gleitender Mittelwert)[/code] Nach jeder Messung einer Taste wird überprüft ob der Wertebereich bei 1/3 des Wertebereichs (Taste gedeückt) oder bei 2/3 des Wertebereichs (Taste losgelassen) ist. Die Analogwerte der Tasten ändern sich langsamer (40Hz) als die
-
Thread
Entprellung bei Tastermatrix über AD-Wandler
, wie kann ich diese Taster entprellen? Im Prinzip doch wie andetre Taster auch. Nach dem drücken muss gewartet werden, bis der Taster wieder losgelassen wird. Also in meinem Fall, bis am AD-Wandler keine Spannung mehr anliegt
vergehen, bis ein erneutes einlesen des Tasters erlaubt wird. Das habe ich nun so verwirklicht: 1. Taste wird gedrückt 2. Aktion ausgeführt 3. Erneutes Tasten einlesen verweigert (In der Software taste = 1) 4. Warten bis Taste losgelassen wurde (AD_Wert == 0) 5. Prellzeit einfügen (Variable t4 wird
-
Thread
Kleines aber feines Projekt
werden. Damit stimmt dann auch die Zuordnung bei einem normalen Taster. z.B. [avrasm] Read_IO: IN r16, PortB ; lesen Port B COM r16 ; Bits in r16 drehen ANDI r16, 0b00001111 ; nur Bits 0-3 Eingänge STS
. Sowas gibts dann gar nicht, der MC ist interaktiv und reagiert sofort auf Tasten, Ereignisse usw.
-
Thread
avr schritt weiterschalten in c
Hallo, Wie zbs. 8bit binärzähler für atmega8, mit Taster und 8Led (DDRD 0xFF) und Taster an PB6! ........................................................................... #include <avr/io.h> #include <avr/delay.h> int main(void) { DDRB
Entprellen, Shiften und ins richtige Forum verschieben lassen... ;-)
-
Thread
RS 485 Lenz X-Bus
das ganze mit der Handsteuerung, sehe ich, dass die Bus-LED am LS100 solange brennt, bis ich die Taste wieder loslasse. Am Atmel-Display sehe ich, dass beim Loslassen sofort eine anderer Befehl kommt. Beispiel: Senden Weiche 1 - ein (Taste gedrückt) - Code 52 00 89 DB Taste losslassen: 52 00 81
Zu Topla Leider sind mir 32 Tasten etwas zu wenig und bei der Lösung der Spanier (soweit ich das sehe) pollt der AVR die Taster. Ich stelle mir eher eine Lösung auf Interrupt- Basis vor. Momentan bin mit mehreren 74HC147 am Basteln
-
Thread
LEDs langsam auf- und wieder abdimmen
arbeiten. Auf PB0 hast du jetzt die gleiche PWM wie auf PB1. Das dann abhängig von irgendwelchen Taster oder sonstigen Eingaben machen ist kein Problem. Bei einem Mega16 hast du vier PWM und 32IO.
parallel geschaltet, sonder mittels SW. Auf diese Weise kannst du Leds faden lassen wenn du eine Taste drückst. In meiner SW geschieht das hier: [c] if (PINB &(1<<PINB1)){ PORTB|=(1<<PB0); } else { PORTB &= ~(1<<PB0); }[/c] Wenn du es mit Taste willst musst du vorher
-
Thread
Schalter für geringe Ströme
dem µC hin? Stichwort zum Beispiel: "Input Capture pin" Oder ganz banal durch pollen (und ggf. entprellen) eines Eingangspins?
hin? > Stichwort zum Beispiel: "Input Capture pin" > Oder ganz banal durch pollen (und ggf. entprellen) eines Eingangspins? Das spannende soll ja dabei sein, dass nur der Impuls den Schalter umlegt. Keine Versorgungsspannung oder sonstiges soll dabei benötigt werden. Ist das überhaupt machbar
-
Thread
Display Anzeige aktualisieren
werde das heute Abend alles mal ausprobieren. Eine Frage noch vorab, ich habe hier auch nen paar Taster rumfliegen. Idee ist wirklich über die Tasten jeweils verschiedene Menüs anzuzeigen (vermutlich auch verschachtelt). Fragt man die Taster standardmäßig übers Polling oder über Interrupts ab. Ziel
Hi Isildur, Tasten abfragen und Entprellen ist ein ganzes Thema für sich. Genau genommen sollte man Taster nicht per pin change oder Flanken Interrupt abfragen (Gründe: such mal im Forum nach Taster und Interrupt, da
-
Thread
Suche Countdown Zähler mit LCD auf AT90S8515
nimmt sich Stift und Papier und überlegt sich eine Bedienfolge, wie das gehen könnte. Z.B., wieviel Tasten man verwenden möchte und dann, welche Funktion jede Taste haben soll. Und dann den Ablaufplan. Das Coden kommt dann viel später, wenn der Ablaufplan auf dem Papier fehlerfrei läuft. Man könnte
Zutaten sind im Tut alle vorhanden * LCD Routinen * ein Timer, der im Sekundentakt etwas tut * Tasten Entprell- und Auswerteroutinen * Port Ausgaben, um damit einen Ausgang 0/1 zu schalten * wie man Vergleiche über mehrere Bytes macht (sofern die Zeit nicht einfach nur eine Sekundenzahl im Bereich
-
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
4x3 Tastermatrix Schaltung
Willst du mehr als einen Taster gleichzeitig drücken?
ich über mehrere Ports hinweg arbeiten muss. Wie kann ich also per Programm feststellen, welcher Taster gedrückt ist, und wie kann ich hier effektiv entprellen? Ferner soll jede Pinkombination bei aktiviertem Zustand einen Code bereitstellen, der dann zu einem zweiten Controller geschickt wird. Wie
-
Thread
Wie funktioniert diese Entprellschaltung??
Hallo zusammen! Ich habe folgende Schaltung zum Entprellen eines Tasters (s. Anhang) in einem älteren Elektronikbuch aus TTL Zeiten gefunden. Nur verstehe ich nicht, wie sie funktionieren soll. Leider gab es auch keine genauere Beschreibung der Funktionsweise
> vorstellen kann ist, dass am Ausgang des Gatters ein kurzer Impuls > rauskommen soll wenn der Taster gedrückt wird, aber das würde ja nicht > dem im Buch beschriebenem Zweck entsprechen. Doch. Wenn man nur auf die Flanke triggert, dann entprellt diese Schaltung den Taster, da es pro Tastendruck
-
Thread
PIC_Uhr_mit_Stoppuhr wie anfangen?
haben, Start, Stop, Reset. Mein Wunsche wäre beides auf einen Display zu bringen wo man mit einem Taster von der Uhr (standart) zu der Stoppuhr umschalten kann. Mein anliegen: Ich arbeite das erste mal mit nehm PIC. Jeder Anfang ist schwer :-) Für welchen PIC soll ich mich entscheiden? Was ist
Multiplexanzeige an. Dann siehst du schon mal deine Ausgaben. Wenn das rund läuft, dann machst du dich an das Entprellen der Taster. Danach kommt erst die eigentliche Stoppuhr-Funktionalität. Auf welchem PIC programmierst du? C oder Assembler?
-
Thread
Pollin ATMEL Addon Board v.1.0 // Frage zu Bauteil
Daniel Mayer Gib das mal in die "Betreff Suchen" ein "Pollin AVR Board Fehler beim drücken der Taster / Qualität der Bauteile"
Hi, danke für den Tipp, also sind die nur zum Entprellen der Taster da ? Es wird immer von C17 C18 C19 gesprochen. Ich hab eh vor Tasten ect. auf ein Steckbrett zu führen.
-
Thread
Entprellung Taster - Debounder VHDL
Unsere Aufgabe bestand es einen Inkrement Zählen einzubauen (FPGA) der nach drücken einer Taster um eins rauf gezählt wird (7-Segment DEZ). Funktioniert schon. Ich war für die Top entity verantwortlich und mein Freund für den debouncer(entprellen der taste). :Debouncer [vhdl]
verstehe ich nicht , als ich meinen Freund gefragt habe , meinte er nur , dass die Daten die vom Taster kommen asynchron sind und es zur einer Setup/Hold time Verletzung kommen würde und deshalb verbindet er die zwei Signalen mit einem flip flop. Könntet ihr mir da vielleicht weiterhelfen ? Falls
-
Thread
PIC + Tastermatrix
Tasten "springen" so du muss per soft ein "debounce" algorithm benutzen. d.h. du musst sicher sein dass srpungene Taste nicht als ein neue drukene Taste erkennt ist. SO im prinip wenn du eine Probe nimmst
. Setz die Zeit zwischen den Abfragen auf 1ms oder mehr. Kein Mensch kann eine Taste zweimal in 1000us drücken.
-
Thread
Entprellen > Bitte um Hilfe
Hallo, auch wenn das schon hundertmal diskutiert wurde, möchte ich um Hilfe bitten : Dies ist der Beginn eines Ereigniszählers. Ich hänge an der Tastenentprellung ( bei der Danegger Version blicke ich nicht durch ) und so habe ich nach googlen mir etwas zusammengebastelt. Bitte um Kritik und Verbesserungen. Und noch eine Frage : Kann ich bei der Simulation im AVR-Studio auch Tasten irgebdwie simulieren? Beim Simulieren diese Programmes hänge ich ja im main loop fest. Vielen Dank im voraus
-
Thread
Zwei Programme/Funktionen umschalten mit einem Taster
_OVF_vect) { // Wenn Taster nach 13ms weiterhin gedrückt, dann Flag für gedrückten // Taster setzen ("Taster ist gedrückt if(!(PINB & (1<<PINB2)) && (taster_flag == 1)) { taster_gedr = 1; } else { taster_gedr = 0; taster_flag = 0; } // Wenn Taster gedrückt, dann flag setzen if(!(PINB & (1<<PINB2))) { taster_flag = 1; } } In der Main-Schleife möchte ich nun mit
-
Thread
Lüftersteuerung mit C
PIND,2)){_delay_ms(1000);} wurde genutzt, da der Lehrer zu uns meinte wir brauchen das für das entprellen der Tasten. Die Variable i sollte per Tasten druck um eins erhöht bzw. verringert werden. x war für die Verrieglung gedacht und y für die Umstellung in Automatisch und Manuelle Einstellung
delay_ms(1000);} > > wurde genutzt, da der Lehrer zu uns meinte wir brauchen das für das > entprellen der Tasten. mag sein, dass er das gesagt hat. Nur a) ausserhalb der Hauptschleife bringt das herzlich wenig, weil der Code nie ausgeführt wird. (würde man sehen, wenn man den Code sauber einrückt
-
Thread
Achtung: Anfänger! PIC16F628 Fehlermeldung beim Assemblieren
Aufgabe lösen konntest. Das nächste Übungsprojekt wird das Abfragen von Eingängen, um z.B. auf Taster reagieren zu können. Z.B. die Zeit für die Zeitschleife mit Plus- und Minus-Tasten zu ändern, oder und ein Abschalten der Leds in umgekehrter Reihenfolge zu realisieren. Schöne Grüße, Norbert
habe in der Zwischenzeit weiter "programmiert" und ausprobiert. Jetzt habe ich es geschafft, per Taster an RA0 eine LED an RB0 ein- und auszuschalten. (siehe ASM-Datei) Dazu habe ich zum Entprellen eine Zeitschleife eingebaut. Nachdem ich versucht habe (und das auch erstmal wieder verworfen), die Dauer
-
Thread
Spannung und Strom mit dem Mega8 messen
jetzt gar nicht drann gedacht. ist auf jeden fall interessant. auf der seite wird das ganze ja mit tastern gesteuert. könnte man die regelung auch mit einem drehknopf umsetzen, finde das sieht dann irrgendwie besser aus.
einschalten. Das geht sehr gut in einem Timer-Interrupt, mit dem man auch noch ganz nebenbei Tasten entprellen oder andere Dinge erledigen kann. ...
-
Thread
msp430 Interrupt löst "selbständig" aus
das stichwort heisst "Taster entprellen"... VG, mui
Hast Du den Taster irgendwie entprellt?
-
Thread
LedMitMehrerenSchaltern
Schaltern schalten, d.h. jeder Schalter kann ein und jeder kann ausschalten. es sind Schalter keine taster. kann mir jemand Hilfe geben, welche grundlegende Struktur ich dafür nehmen sollte (d.h. if oder switch oder so)? Danke
wiederholen. Falls es sich bei den Schaltern um gewöhnliche mechanische Schalter handelt: Entprellen nicht vergessen, sonst kommt Müll raus.
-
Thread
lcd modul wd-c2704m-1hnn
120232) dieses hat 2 controller (HD44780 kompatibel) in der beschreibung steht das man dort 8 taster anschliesen kan. so nun möchte ich gern das wenn ich zb die taste oder schalter 1 drücke im display ein text steht ZB: Test 1 und wenn ich taste 2 drücke dann ein neuer text erscheint
Modul gibt es m.E. fertige Bibliotheken für die Displayausgabe. Allerdings fragen die nicht die Taster ab. Hast Du Dir die Anschlußpins der Taster mal angeschaut ? Das sind nur Kontaktflächen für eine Gummitastatur. Ansonsten die Taster abfragen (hier im Forum mal nach "Entprellen" suchen) und
-
Thread
hardwarenah, objektorientiert programmiert
using namespace Combie::Pin; using namespace Combie::Timer; using namespace Combie::Millis; TasterGND<2> schalter; // zwischen Pin und GND(invertierend) OutputPin<3> absaugung; OutputPin<4> maschine; EntprellTimer entprell { 20_ms}; // Schalter entprellen RisingEdgeTimer ton {500
eine Frage der Prioritäten. > Aus dem Lotus-Land gibt es auch Rückenschonenderes > > EntprellTimer entprell { 20_ms}; // Schalter entprellen > RisingEdgeTimer ton {500_ms}; // steigende Flanke wird > FallingEdgeTimer toff { 3_sec}; // abfallende Flanke wird > Ja, userdefined
-
Thread
Eingang: auf positive Flanke regieren
nicht extra einen Flip-Flop nehmen. (und beim togglen hochzählen) Und NEIN ich bin nicht zu faul Taster zu entprellen. Ich mach es zwar nur mit einem parallelen Kondensator, aber es funktioniert :D. mit freundlichen Grüßen, Wolfgang
die ausführliche Erklärung. Ich auch. Aber die Vorgehensweise ist immer: (Einsynchronisieren), Entprellen, Flanke erkennen, Flanke zählen
-
Thread
Auswahlliste auf 16x4 Display mit 8051
schieben, dann scrollen. Ein Menü zurück entweder über Menüpunkt "zurück" oder über eine "Escape"-Taste (dann wären es 4 Tasten). Gruß aus Berlin Michael
du dass mit dem weiterschalten machst(inkrementieren?)? Hast du einen beliebigen Port Pin für die Tasten gewählt oder ne interrupt?? Kannst du mir sagen wie du das mit dem Entprellen machst? Mfg Cri
-
Thread
programmierung arduino schalter
schreiben für Aeduino uno,ähnich wie weiter oben, um meine Blinker am Fahrad zu steuern? -Habe 2 Taster, Links und Taster Rechts eingebaut. Zwei LED,s. für Links und Rechts (Blinker). Mit Taster Links, Blinker Links einschalten und beim 2x dücken auf den Taster, soll Blinken aus gehen. Für rechten Taster, auch so. Wenn man den einen oder den anderen Taster/Blinker als ersten gedrückt hat, soll der andere Blinker nicht kommen, ausser man bleibt 2 od. 3sec. auf beide Taster, dann kommen beide Led
-
Thread
Arduino FlipFlop Schaltung ein/aus schalten
noch mal suchen. Ich selbst machte mit µC in den Anfangsjahren auch Designfehler, und entprellte Tasten direkt in der Main-Schleife. Die Tasten wurden aber dort direkt physikalisch auf Prellung untersucht, das ist eine Sache von einer Milisekunde, und dank Assemblercode gab es auch nie zeitliche Stockungen
hmmm ok, aber wie lasse ich sonst auf Knopfdruck die LEDs blinken ? Bzw. kann mit dem gleichen Taster die LEDs wieder ausschalten ? Das mit dem entprellen ist mir jetzt noch etwas zu hoch ;-)
-
Thread
Stoppuhr mit Interrupt (8051)
Taster abfragen ob gedrückt jmp abfrage oder Du nimmst Flankengetriggerten Interrupt EXT0 EXT1 gleiches Prinzip ABER..... Du mußt die Taster entprellen !!!! Soft oder Hardwareseitig. Keine Ahnung wie genau die Uhr sein soll. Im Einfachsten Fall ein FF am Taster.
-
Thread
Anfänger braucht Starthilfe :-)
in den reissenden Fluss springen. Ich würde erstmal erste Gehversuche machen. LED blinker, ein Taste abfragen, Taste entprellen. Das geht mit nem STK 500. Einen Debugger JTAG ICE MK-II oder einen AVR-Dragon (billiger, aber Codegrössengrenze <glaub max. 32k!). Wenn Du per Assembler und C die Gehversuche
am Anfang an und zerlege Dein großes Projekt in Teilprojekte 1. einen Motor mit Relais und 2 Tastern rechts und links rum laufen lassen 2. zwei Motoren mit Relais und 4 Tastern (oder 2en) rechts und links rum laufen lassen. 3. Schaltung 2 durch einen 5. Taster (3. Taster) ergänzen und rückwirkungsfrei
-
Thread
Leuchtschriftsteuerung
speichern kann, welches er durch die MANUAL-Taste vorgibt. --> Zum speichern eines individuellen "Blinkmusters" wird zunächst die STORE-Taste gedrückt gehalten, während mit der MANUAL-Taste das beliebige Muster "eingespielt" wird. Nachdem dann der
beinhalten das gewünschte Muster welches über den Ausgangspin ausgegeben werden soll. Sobald die CLEAR-Taste gedrückt wird, wird die InterruptRoutine aufgerufen, welche das Licht erlöschen lässt. Dann die STORE-Taste (das schwierigste an der Sache). Dabei frage ich zunächst ab, ob die Taste alleine oder
-
Thread
taster an at90s2313 / attiny2313
Debouncing=Entprellung unterzogen. Dazu hier im Forum mal nach Peter Danneneggers Source suchen "Tasten+Entprellen" in der Codelib. Fertig. Gruß Hagen
kennt jemand den taster von TASTER 1032.2 von reichelt ? bzw weiß jemand wie die abmasse sind ? jeroen
-
Thread
Pause im Interrupt
zu messenden Widerstand float SpannungLB; float Widerstand; float Widerstand2; //Variablen Taster int tasterRechts = 0; int tasterLinks = 0; int endschalterLinks = 0; int endschalterRechts = 0; int tasterVersuch = 0; // Entprellen Taster int reading; // Wert des Eingangs
-------------------------------------------------------------------- void loop() { tasterRechts = digitalRead(buttonPin1); tasterLinks = digitalRead(buttonPin2); tasterVersuch = digitalRead(buttonPin3); // Beim Wechsel des Eingangs von LOW zu HIGH und
-
Thread
Anfängerfrage: If-Bedingung und LED schalten
noch mit reinnehme funktioniert es, aber natürlich leuchtet dann die LED nur so lange wie ich den Taster drücke. Danke im Voraus Sebastian
Nachtrag: Die Taste prellt und muss noch mit einem Delay oder am besten mit einem Timer entprellt werden.
-
Thread
Beispiel "Entprellun" Verständnissfrage
> Ich möchte den Code dazu bringen, mit "Low-Active" Tastern > zusammenzuarbeiten Genau das ist die von Peter bevorzugte Schaltungsweise von Tastern, weil man damit u.a. die internen Pull-Ups eines AVR verwenden kann. Du musst den Code im Artikel [[Entprellung]] für active-low Taster überhaupt nicht ändern. Oder verwechselst du vielleicht etwas mit dem Begriff. Zeige doch mal deinen Schaltplan...
-
Thread
1. Projekt 5Bit-Rechner
optimieren, wenn du mal Übung hast, könnte z.B. so aussehen: clr r16 loop: sbic PIND, 0 ;wenn Taster = gedrückt(0), überspringe nächsten Befehl rjmp loop ;zurückspringen button: ;Taster gedrückt inc r16 ;zähle hoch sbrc r16, 4 ;wenn im Zählwert bit5 gesetzt ist (=32),
Hi, zum Entprellen könnte man vor "dem wait_button_release:" noch eine kleine Warteschleife einbauen. (für Taster... vielleicht 50 ms?) das "sbrc r16, 4 ;wenn im Zählwert bit5 gesetzt ist (=32)," würde ich persönlich
-
Thread
LED blinken mit Taster an/ausschalten will nicht so recht
LED soll beginnen zu blinken, wenn der Taster gedrückt wurde. Die Leuchtdauer und "Auszeit" wird über die Variable zeitmerker eingestellt. Wenn der Taster erneut gedrückt wird, soll das Programm anhalten, hierzu die Variable "statusProgramm".
Ich möchte die Qualität einer Entprell-Routine, die unnötig Rechenzeit verbrät (mit _delay_us(150);) grundsätzlich in Frage stellen. Und die Entprellung ist garantiert falsch: [c] debounce( (uint8_t*)&PINB, (1<<Taster1) )
-
Thread
Längere Tasterleitunggen direkt an Controller?
10uF parallel 100nF zur Eliminierung von Störungen gegen Masse. Serienwiderstand von 100 Ohm zum Taster.
solche langen Leitungen können leicht Störimpulse eingfangen. Kondensatoren brauchts nicht, Entprellen geht besser in SW. Peter