-
Thread
Verständnisfrage Input Capture/Frequenz/Timer mit Tastenentprellung
3,75ms ein Signal bekomme, dann wäre doch das "Abtasten" der Tasten alle 10ms zu spät. Kann man das Problem mit EINEM Timer lösen? Denn ich möchte ja auch die Drehzahl über die Zeit berechnen. Danke! Dominik
Man braucht keinen 2 ten Timer. Das Entprellen kann man so lösen, dass einer Flanke ersteinmal für die Prellzeit oder etwas länger (z.B. 2-3 ms) keine weiteren Signale angennommen werden. Die Verzögerung und die Messung der Zeit kann man mit
-
Thread
Interrups in Assembler
im Manual. Und Delays in Interupt sind auch nichts. Sowas gibt's schlicht nicht. Falls man eine Taste entprellen will so macht man das mit einem Timer und einer Zustandsmaschine.
und somit 2 mal als interrupt erkannt werden. Somit zu meiner zweiten Frage, wie kann ich einen Taster entprellen wenn er einen Interrupt auslöst? muss ich die +-5ms Entprellzeit in die Interruptschleife setzen? Ich hoffe das ihr mir hier weiter helfen könnt... MFG Hermann
-
Thread
Interrupt läuft 2x durch
Routine > durchlaufen wird und nach 1S dann mit "reti" zurück springt. Hier lasse ich das Thema "Tasten entprellen" jetzt mal weg... > Es scheint als löse das Tasterprellen im Hintergrund einen zweiten IRQ > aus, welcher dann nach dem durchlaufen des erstes den zweiten Duchlauf > anstößt. Einer
ISR. Und wieder... > > Die Frage ist nun, ob es da irgendwelche banalen Fallen gibt? Ja, Tasten per Timer einlesen und entprellen, IRQ nur zum aufwecken aus Sleep usw. und dann sofort abschalten z.B. Gruß aus Berlin Michael
-
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
Taster mit externen Interrupt prellt
da ich den Controller so noch aus dem Schlaf >wecken muss. Das verbietet Dir aber nicht, die Tasten ansonsten ganz normal in einem festen Zeitraster abzufragen und nach einer der bewährten Methoden zu entprellen.
Tom Linz schrieb: > Nun schaffe ich es leider nicht, die Taster zu etprellen. Weil Du versuchst, 2 verschiedene Sachen zusammen zu mähren. Mach das Aufwachen mit dem externen Interrupt, das ist richtig. Und das Entprellen nach bewährter Methode im Timerinterrupt
-
Thread
Kleine Fragen zum ersten Schaltplan mit Eagle
einiges größer als im DaBla, schadet aber nicht - +5V / 160R = 31mA -> bissl viel, oder? - Der Taster würde sich mit einem Pull-Up besser fühlen. Vor allem wen der Controller keinen internen Pullup schaltbar hat. Ausserdem wird der Eingang deutlich robuster gegenüber Störungen (Motor ;) ) - Wo hast
Ansatz) - Hab vergessen, den ATtiny 2313 als solchen zu bezeichnen - der hat interne PullUps für Taster und co. Aber andere Frage zum Taster - wollte man diesen elektrisch entprellen - was für nen Kondensator nimmt man da??? - Wegen dem Motor... Öhm... Ich hatte damals keine Infos über das Ding online
-
Thread
Taste Entprellen ASM
-------------------------------------------------------------------------------------------- ;2 Taster (Plus und Minus, PinA 0..1) entprellen ;Alle 2 mS wird (in diesem Fall) der entspr. Taster in das Register <taste> geschoben. ;Ist <taste> = 0, war der Taster die letzten 8 Interrupts gedrückt(im
------------------------------------------------------------------------- in temp,pina ;Tasten nach Temp holen lsr temp ;PinA0 (Minus-Taste) ins Carry rol taste ;und in Taste (R2) schieben brcc ex1 ;Es muss eine 1 (nicht gedrückt) und danach brne ex1
-
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
Tastenabfrage mit Interrupts
Ok, hast recht. Funktioniert. Ausschlaggebend ist Taste Key1 auf B.1 Bei mir soll ja als Ausgabe eine 7-Segment Anzeige verbaut werden anstelle der LED's Wieso wird denn die while-Schleife permanent wiederholt? Auch wenn keine taste gedrückt ist.
Man kann auch hardwareseitig entprellen (hier aber nicht gern gesehn ;) *duckundweg*
-
Thread
EPROM 2716 durch CPLD auslesen?
Taster sind möglich, ggf. müssen die entprellt werden. Fürs Ansteuern, wenn die Daten "nur" mit LEDs etc. angezeigt werden, kann man auch aufs Entprellen verzichten. Gruß Anton
Hallo Hubschrauber Pull-Up-Widerstand (Nach Vcc), z.B. 22k, 10k tun es auch. Taster nach GND. Ich würde eher Schalter verwenden, ist einfacher zu verwenden, Mehrere Taster gleichzeitig drücken ist lästig. Gruß Anton P.S. Ich nenne die Dinger Drehflügler.......
-
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
ATTiny2313 Timer "aufteilen" (ein Timer mit zwei Funktionen?)
/Helligkeitserhöhung #define SPEED_STEP 5 // Geschwindigkeitsstufen //------------ Taster entprellen ---------------------------- #define ALL_KEYS (1<<MODE | 1<<UP | 1<<DOWN) #define REPEAT_MASK (1<<MODE | 1<<UP | 1<<DOWN) // repeat: key1, key2 #define REPEAT_START
die Abfrage der Tasten auszulösen. Das Prinzip geht auch mit mehreren Tastern, sogar auch eine Tastenmatrix kann so ausgewertet werden. Hier werden die Taster an beliebige Ports angeschlossen und über Dioden gelangt das
-
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
IRMP - Infrared Multi Protocol Decoder
einzeln (irmp_data.command); } [/c] Dies kann zum Beispiel dafür genutzt werden, um die Tasten 0-9 zu "entprellen", indem man Kommandos mit gesetztem Bit IRMP_FLAG_REPETITION ignoriert. Bei dem Drücken auf die Tasten VOLUME+ oder VOLUME- kann die wiederholte Auswertung ein und desselben Kommandos
einzeln (irmp_data.command); > } > Dies kann zum Beispiel dafür genutzt werden, um die Tasten 0-9 zu > "entprellen", indem man Kommandos mit gesetztem Bit IRMP_FLAG_REPETITION > ignoriert. Bei dem Drücken auf die Tasten VOLUME+ oder VOLUME- kann die > wiederholte Auswertung ein und desselben
-
Thread
Würfelspiel programmieren in C, leider keine Ahnung wie
ungefaehr so aussehn: byte lookup[6] = {1,2,3,4,5,6}; byte i = 0; while(1) { i++; if (Taster1 = true) { Port2 = lookup[i]; } } ja ja ja, mein C ist etwas eingerostet aber die grundstruktur sollte rueberkommen hoff ich. Die oben genannte lookuptable(lookup) musst du natuerlich mit den
pollen ist schon besser. Interupts zu entprellen ist bedeutend schwieriger
-
Thread
Prellfreier Taster 74HCT14
Hallo ich möchte einen Taster entprellen und versuche dies derzeit mit dieser http://www.mikrocontroller.net/articles/Entprellung RC-Entprell-Schaltung. Das Problem ist das es nicht funktioniert ich habe R1 mit 2,2K R2 mit
Wenn der Taster quer über das Gate geschaltet wird, ist es interessanter!
-
Thread
Fehlersuche Tastenentprellung
es mir nicht erlauben kann Zeit in einem delay zu vertrödeln. Deshalb habe ich mich am Pollen von Tasten versucht. Leider nur mit mäßigem Erfolg. Das Entprellen funktioniert nicht so richtig, wie es soll. Erst mal der Code: [c] //Prozessor ist in AVR Studio auf mega8 festgelegt //Clock intern 8
volatile uint8_t flag; //Flag für TimerInterrupt0 uint8_t drueck = 0; //Zähler für Zustand "Taste gedrückt" int main() { // IO konfigurieren //0xFF = Ausgang, 0x00 = Eingang DDRC = 0xFF; DDRD = 0X00; PORTD |= (1<<PD3); //Pin3 Pullup aktivieren -> Taster zieht auf 0
-
Thread
Programmschleife mit brne
Programmschleife, die ich in einem Buch gefunden habe. Es soll ein LED durch die positive Flanke vom Taster ein- und ausgeschaltet werden. Bei einer positiven Flanke am Port D.2 wird der externe Interrupt 0 (EXT_0) ausgelöst und dadurch eine Verzögerungszeit von 50 µs (50 µs = 185 Takte / 8 Befehle = 23) gestartet um den Taster zu entprellen. In der Hilfe (SiSY AVR) wird mit dem Befehl cpi (Compare) ein fixer Wert mit dem Inhalt eines Register auf true oder false geprüft um die Schleife zu bearbeiten. false = Schleife
-
Thread
Frage zu Timer und genereller Programmaufbau/Ablauf
if(!Taster && !Merker) { Taster = 1; Merker = 1; } else if(!Taster && Merker ==1) { Taster = 2; Merker = 0; } else { //TODO } } [
setzt globales Interrupt Enable Bit return; } /* * Funktion debounce(): Funktion zum entprellen von Tasten, Schalter, etc * "Warteschleifenvariante mit Maske und Pointer (nach Christian Riggenbach)" * gefunden auf microcontroller.net */ void debounce( uint8_t *port, uint8_t maske
-
Thread
Timer funktioniert nicht
Hi @ all, ich möchte über einen Taster einen Ausgang steuern jedoch zeitverzögert. Ich drücke die Taste und der Ausgang schaltet zeitverzögert. Der Ausgang ist solange geschaltet bis ich den Taster wieder loslasse. Entprellen spielt
: Taster gedrückt -> Ausgang geschaltet; Taster nicht gedrückt -> Ausgang nicht geschaltet.
-
Thread
Button geht nur manchmal (selten!)
Die LED leuchtet immer, soll ausgehen wenn Knopf gedrückt wird. Das klappt gaaaanz selten mal. Entprellen sollte hier ja keine Rolle spielen da es um Knopf gedrückt halten geht?! Hat jemand ne Idee was ich falsch machen? Danke im Voraus!
Pins an PortD gegen 0 getastet sind. Du musst dich auf den einen Pin konzentrieren an dem dein Taster hängt! Wie das geht steht im Artikel http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen#Zugriff_auf_einzelne_Bits
-
Thread
AVR Pin bei Tastendruck toggeln
Mikrocontroller-Programmierung zu lernen und stehe vor folgendem (wahrscheinlich ziemlich simplen) Problem: Ich will per Taster eine LED toggeln. Kann mir jemand auf die Sprünge helfen? Bitte wenns geht die einfachste Methode ohne Entprellung o.ä.. Danke schonmal im Vorraus und frohe Weihnachten, Felix
>Bitte wenns geht die einfachste Methode ohne Entprellung Wie bitte? Entprellen ist kein lustiger Zeitvertreib, sondern eine Notwendigkeit, weil Tasten nun mal prellen. Ohne wirst Du die Chose nicht zum korrekten Funktionieren bringen (aber probiers ruhig aus...).
-
Thread
Datenbank in ASM 8051 Hilfe
Interrupt wirds knifflig (Prellen). Deutlich besser und einfacher ist daher, mit Timerinterrupt entprellen und dann die Variable bei Tastendruck hochzählen. Die 16 Funktionen müssen natürlich mit der Mainloop zusammen compiliert werden. Dein MC hat ja kein OS, welches DLLs nachladen kann. Peter
Variable für einen Wert hat, wird eine andere Funktion ausgeführt. - Timerinterrupt in welchem du die Tasten einliest und entprellts. Je nach dem was für eine Taste gedrückt wurde, wird die Variable von der Statusmaschine dekrementiert oder inkrementiert. gruss
-
Thread
Tasterentprellung nach AVR-Tutorial
Quarz mit z.b. 16 MHz hast, dann sind 800 µs doch ne Ewigkeit und reichen locker aus, um ein paar Tasten zu entprellen. Ich hab auch schon nen MP3 Player mit nem VS1053 IC gebaut, an dem ich 12 Taster hatte. Die konnte ich während des MP3-Abspielens ohne Probleme entprellen. Gruß C.H.
taster entprellen mit einem FF geht nicht allgemein steh ich nich auf hardwareloesungen wenn es auch per software geht, da die schaltung dann nur unnoetig groesser wird. Taster hardwaremaesig entprellen
-
Thread
Fuses per Hand programirung
Wenn du es mit Tastern machen willst wird dir das Prellen deinen Plan durchkreuzen. Müsstest dann an jeden Taster eine monostabile Kippstufe dranhängen. Es dürfte aber vermutlich einfacher sein, einen HV-Programmer nachzubauen
ich kann sagen, daß es machbar ist den AVR von Hand zu programmieren. Ich hab einen AVR nur mit Tastern, Widerständen und Elkos in den Programmiermodus versetzt und die Signatur ausgelesen. Die Widerstände und Elkos sind nur zum entprellen der Taster. Anbei noch zwei Videos. http://www.youtube.com
-
Thread
Taster speziellen Porteingang zuweisen!
Hallo, ich habe versucht einen Taster (S0) einem separaten Porteingang (PA7) zuzuordnen. Im endefekt habe ich es auch hinbekommen, aber ich vermute dies ist nicht der korrekte Weg!, weil ich nun keinen anderen Taster mehr einem anderen
Hallo, Andreas V. schrieb: > ich habe versucht einen Taster (S0) einem separaten Porteingang (PA7) > zuzuordnen. Das macht man üblicherweise, indem man den Taster an den gewünschten Portpin anlötet... Deine Fragestellung ist mir also etwas unklar. >
-
Thread
Timer ATtiny 13 Fehler im Code
eingestellt und soll nach 5 mal S1 > drücken T0A/PB0 durchschalten. Das wird so nicht klappen, Tasten müssen entprellt werden. Du solltest den Timer besser dazu nehmen, die Tasten zu entprellen und die Flanke zu erkennen. Und dann zählst Du einfach ganz profan die Drücke mit einer Variable.
die ausführliche Hilfe von MWS weitergeholfen und ich habe die richtigen Register gefunden, jetzt entprelle ich noch den Schalter mittels flipflop.
-
Thread
8 Lichtschranken & 8 Siebensegmentanzeigen (Plazierungsanzeige)
www.atmel.com/dyn/resources/prod_documents/doc1232.pdf Hier geht man einen anderen Weg. Immer wenn ein Taster gedrückt wird, wird ein ext. Interrupt ausgelöst und man kann dann analysieren, welche(r) Taster es war. Aus meiner Sicht ne saubere Lösung, da jeder Taster diesen Interrupt auslösen kann und nix verloren geht - oder mach ich da einen Denkfehler? Bei echten Tastern müsste man sicher noch entprellen, aber bei Lichtschranken sollte das nicht nötig sein, oder? PCI scheint der 8515 nicht zu haben, daher würde ich darauf erstmal verzichten wollen. Martin
-
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
Entprellung + weiterer Timer funktiert nicht
Hi Leute, hab da mal ne Frage. Und zwar habe ich mir den Entpreller von P. Dannegger genommen und wollte damit nun nen Menü für ne LED Steuerung erstellen. Meine LEDs werden mittels PWM angesteuert und laufen auch perfekt (ohne den Entprellcode). Mein Problem
RGB Wert an oder aus gehen... In der Simulation habe ich das hochzählen des Timers mit dem Entpreller nicht verstanden. Es wirkt irgendwie zufällig (?) Was mir aufstösst ist, dass die Interrupts immer deaktiviert und wieder aktiviert werden. Das kann doch nicht gut sein?! Wenns was hilft würd
-
Thread
Arrays sollen taster aufnehmen
)) && (!(taster_a)) && (!(taster_c))) Probier mal alle 3 Taster gleichzeitig drücken :-)
Nö, entweder ich bin übermüdet, oder er prüft alle 20ms ob alle Taster losgelassen sind, bevor es weiter geht. Der Busy-Wait ist zwar sinnlos aber m.E. harmlos. Korrektur: Der Busy-Wait will wohl entprellen, damit nicht sinnlos. Aber dann müsste eigentlich nochmal im
-
Thread
Taschenrechner auf ATMega88
bei dem oben beschrieben Problem. Wie kann ich meinem ATMega 88 beibringen, dass ich eine Zahl per Taste 1 durch mehrmaliges Drücken eingebe, diese gespeichert wird, danach der Operator gesetzt wird (Taste 2 oder 3) und dann meine zweite Zahl und das Ergebnis? Das mit dem Entprellen der Tasten ist
(2, Zeile2); if(~PINC&0x02 && taste_s2==1) //Flankenerkennung für Taste 2 { delay(300); status=2; taste_s2=0; //Taste S2 gedrückt } } if(status==2) //
-
Thread
"solid state Zähler" mit Goldcaps - Teil 2
Jetzt also der seltsame Teil: Wenn der Entpreller dran hängt, dann springt der Zähler beim Abschalten des Labornetzteils 1-3 Schritte weiter (abhängig von Ladezustand des Caps und eingestellter Versorgungsspannung). Wenn man das netzteil allerdings
durch einen Linearregler statt einem Labornetzteil bereit gestellt wird? 2. Statt einem 74HC14-Entpreller ein CPLD im 3,3V Betrieb am up/down Eingang hängt, das natürlich beim Abschalten die 3,3V verliert?
-
Thread
Menü (hängt)
eines Menüs gesetzt, allerdings will das nicht so wie ich will. Hardware: LCD an PORTB Taster 1 (links) an PIND2 Taster 2 (rechts) an PIND3 Taster 3 (OK) an PIND4 alle Taster gegen Masse Quartz 16 MHz Soll-Funktion: Das Menü soll folgendermaßen zu bedienen sein: linkst - Taster blättert eins weiter nach links und der rechts - taster eins weiter nach rechts, weir OK gedrückt so wird der aktuelle Menüpunkt ausgewählt. Problem / Ist - Funktion: Sobald das Programm startet
-
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
Servotester mit ATMega8
drücke geht er sofort unkontrolliert bis Anschlag, ich kann mir aber vorstellen das das was mit Taster-Entprellen zu tun haben könnte...
Dann muss ich wohl noch eine kleine Zeitschleife oder so einbauen, die mir etwas Zeit lässt den Taster zu drücken und den Wert nur um 1 verändert. Ich habs jetzt aber verstanden, vielen Dank, ging echt schnell. mfg vincent
-
Thread
PIC-Programmierung neu erlernen?
ich jetzt anfangen soll! Am besten wie alle, mit den Grundlagen: LED einschalten, LED blinken, Tasten entprellen, UART, LCD, ADC, PWM, ... > Wie lauten die Befehle(Objekte) in den einzelnen Sprachen > zum Steuern der Ausgänge Die Peripherie eines MC ist üblicher Weise im Datenblatt beschrieben
-
Thread
Ansteuerung über Joystick
leuchten. Kennt vielleicht jemand ein Tutorial wo das beschrieben ist. Wenn ich eine bestimmte Taste drücke kann ich über Hyperterminal ansteuern welche Led leuchten soll wie kann ich aber die Leds über den Joystick ansteuern. MfG
rumliegen, die wären für erste Schritte wahrscheinlich prima geeignet. Ist ja fast dasselbe wie eine Taste abfragen/entprellen. Solche Modelle kriegst du auf jedem Flohmarkt. Einfach drauf achten, dass die Dinger munter clickern -> Mikroschalter -> digital. Für sowas braucht's dann auch keinen PC oder USB
-
Thread
Externen Interrupt innerhalb eines Interrupts ausschalten
Spaß! Soll dich nicht angreifen. Ich glaube man versteht mich hier falsch. Ich möchte nichts entprellen, weil es bei diesem Taster nicht nötig ist. Das Problem ist aber, dass bei erneuten Drücken des Tasters der Interrupt nochmal gestartet wird! >>Der Taster soll auch innerhalb der einen Sekunde
Wie kann der Taster für 1 Sekunde gedrückt sein, wenn dein Piezzo-Taster einen Puls von max. 700ms Dauer abgibt?
-
Thread
Altera Quartus II Flip Flop Problem
Hi nochmal... Hab jetzt versucht die Taster intern zu entprellen, hat allerdings nicht geklappt...Habt ihr evtl. ne Idee wie man im CPLD intern nen Taster entprellt. Stephan
> Habt ihr evtl. ne Idee wie man im CPLD intern nen Taster entprellt. Zum Entprellen brauchst du üblicherweise einen globalen Mastertakt, auf den dein Design synchron ist. Und auf diesen Takt wird dein Taster einsynchronisiert. Sonst gibt es noch ein paar
-
Thread
Komisches Verhalten beim Tastendruck
Nabend, Ich habe hier einen Tiny2313 an dem sind drei Taster ein MosFed, ein Summer und ein LCD. Der Tiny soll meinen LED Belichter steuern und zwar habe ich zwei Taster mit dennen ich die Zeit einstellen kann. Das wäre bei checkButtons() die ersten zwei PIND3
ach ja, google mal nach entprellen
-
Thread
Taster entprellen und Signal an GCK
mittels VHDL. Vielleicht habt Ihr ein paar Tipps. Wie kann ich den CPLD verwenden um mit max 8 Tastern die Frequenzen 1Mhz, 100kHz, 10kHz, 1kHz, 100 Hz, 10 Hz, 1 Hz und einen manuellen Takt einzuspeisen. Der Takt 1 Mhz kommt vom einen Oszillator außerhalb und wird intern heruntergetaktet bis 1 Hz.
u.a. das Entprellen der Taster und das gegenseitige Verriegeln der Taster, so dass nur eines funktionieren kann. (vielleicht ist das verriegeln ja auch nicht nötig). Wenn die Signale intern entprellt werden, wie bekomme
-
Thread
Unerklärter Reset
Entprellroutine gut funktioniert (ich entprelle einfach mehrere Ports gleichzeitig). Nur manchmal wenn ich richtig stark auf die taste hämmer sodass es ganz schnell geht, springt er wieder zum Anfang des input modes zurück und ich habe keine
Auch wenn ich mittelschnell auf die Taste drücke kommt es vor dass dieser Reset ausgelöst wird. Ich habe grade den dritten Taster probiert den ich vorher noch nicht verwendet habe und da ist der Reset auch aufgetreten. Abgesehen von der Ineffizienz
-
Thread
Einzelnes Byte von atmega8 zu atmega8 über langen Kabelweg senden?
Wenn ich das Projekt kurz schildern darf: Ich bin Gitarrist und will einen Fußschalter (mit 8 Tastern) bauen, der mir über ein 5-10m Kabel ein Relais-Board ansteuert, welches verschiedene Gitarren-Effektgeräte aus dem Signalweg nimmt bzw. reinschaltet. Im Fußschalter soll ein atmega8 sein, der
Phillip P. schrieb: > Ich bin Gitarrist und will einen Fußschalter (mit 8 Tastern) bauen, der > mir über ein 5-10m Kabel ein Relais-Board ansteuert, welches > verschiedene Gitarren-Effektgeräte aus dem Signalweg nimmt bzw. > reinschaltet. schönes projekt! > Welche Schnittstelle
-
Thread
Tiny13 Tasten entprellen
ATTiny 13 rausgesucht. Die Grundlagen sind mir so weit auch so langsam geläufig nur ein sauberes entprellen der Tasten mit den hier im Forum vorgestellten Routinen will mir nicht so gelingen. Meine Schaltung hat 2 Taster an PB3 und 4 gegen Masse, eine LED an PB1 die im Takt des Timers blinkt und an PB2
TIMSK0,A ;Timer Interrupt freigeben [/avrasm] Ich sehe in deinem Code nicht, wo du das einer Taste zugeordnete Bit wieder löscht, nachdem du den Tastendruck abgearbeitet hast. > nur ein sauberes entprellen > der Tasten mit den hier im Forum vorgestellten Routinen will mir > nicht so gelingen
-
Thread
Hilfe bei Parallel-IO dringend (AVR)
Programm in Main nach einmaliger Ausgabe sowieso in eine endlosschleife geht, brauchst du nichts entprellen. 2. Da du nicht entprellen musst, warte einfach nur darauf, daß eine Taste Gedrück wird... ist erstmal einfacher für dich.
Tastendruck: (Also solange, bis PIND != 255 ist) do ( key=~PIND } while (!key); _delay_ms(100); //"Entprellen" //Warten auf Taste Loslassen: while (PIND!=255); _delay_ms(100); //Tasten können auch beim loslassen prellen. Tippfehler darfste behalten. >Dabei soll es egal sein, >welche Taste bzw.
-
Thread
attiny25 reset nach power down
abschaltet. In der Atmel Appnote steht davon ja aber auch nix. > > Alternativ könntest Du die Taste zum ein- und ausschalten an den > Reset-Pin hängen und in main() unterscheiden, ob der Reset aus dem Wach- > oder Schlafzustand ausgelöst wurde. hab keinen taster dafür. Hab nen primitven bewegungssenso
c] Nach dem Reset schaltet der AVR den Watchdog-Timer aus, den PCINT ein, wartet ggf. bis der Taster losgelassen wird und geht in den Power-Down. Beim Erwachen wartet er wieder auf den Taster und geht dann in die Hauptschleife. Dort wird der Watchdog beim Drücken des Tasters ein- und nach dem Loslassen