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 wieder in Hardware machen. Sind 100nF dafür evtl ein bisschen zu viel? Die Entprellung soll nicht in Software gemacht werden, um möglichst wenig Rechenzeit zu verbrauchen. Ich denke das Software USB verbraucht genug.
Rechnen? 10K * 100nF = 1ms Das ist recht wenig, schlechte Taster können um einiges länger prellen. 10ms ist ein gängiger Wert. Sollte auch für Joysticks und schnelle Spiele reichen. Also R auf 100k erhöhen.
SW-Entprellung kostet <0,1% CPU-Zeit. SW-USB verbraucht allerdings 100% CPU-Zeit. Man muß das Entprellen daher mit den USB-Pausen synchronisieren.
Basti schrieb: > Die Entprellung soll nicht in Software gemacht werden, um möglichst > wenig Rechenzeit zu verbrauchen PeDas Entprellreoutinen verbrauchen kaum Rechenzeit. Und du kannst sie einfach am Ende des USB-Teils anhängen, dann funken sie sicher nicht in die Übertragung rein. BTW: Wieviel Rechenleistung hast du überhaupt über? > daher wollte ich das auch wieder in Hardware machen. > Sind 100nF dafür evtl ein bisschen zu viel? Nein, ein Kondensator (egal welcher) ist für eine Entprellung zu wenig. Für eine "richtige" Hardwareentprellung muss mehr her (nämlich hinter dem RC-Glied ein Schmitttrigger). Wenn du also nur mit Kondensatoren rumbasteln und dich auf das "Schmitttriggerverhalten" deines uC-Eingangs verlassen willst, dann probier einfach ein paar unterschiedliche Kondensatoren aus. Aber eigentlich ist dein Problem sowieso keines: der USB wird jede ms einmal bedient, egal wie arg dein Schalter prellt.
Basti schrieb: > Die Entprellung soll nicht in Software gemacht werden, um möglichst > wenig Rechenzeit zu verbrauchen. Ich denke das Software USB verbraucht > genug. Wieso, kriegst du irgendwie Cash raus, wenn er freie Rechenzeit in einer leeren Schleife veridlet, statt sie sinnvoll zu nutzen (z.B. um externe Beschaltung einzusparen, was tatsächlich gleich doppelt Cash bringt)?
Ich nutze den Beitrag gerade mal, um die Profis zufragen, ob ich das mit der Entprellung richtig verstanden habe: Ist diese eigentlich auch für ganz normale Kurzhubtaster notwendig? Ich nutze zwar Softwareentprellung (wäre ja auch schön blöd, wenn ich darauf, allen Warnungen zum Trotz, verzichten würde), konnte aber auch ohne nie den "Prelleffekt" nachvollziehen. Meine Taster gehen zudem am Oszilloskop sofort auf 5V und bleiben dort auch, bis man sie loslässt, dann gehen sie aber auch wieder ohne Umwege und "Aufflackern" auf 0V und bleiben dort. Hab ich das Problem falsch verstanden, oder bin ich einfach glücklich genug, prellfreie Taster erwischt zu haben?
Philipp K. schrieb: > Ich nutze den Beitrag gerade mal, um die Profis zufragen, ob ich das mit > der Entprellung richtig verstanden habe: Ist diese eigentlich auch für > ganz normale Kurzhubtaster notwendig? Darf ich mit einer Gegenfrage antworten? Warst du schon mal in einem Neubau, bei dem der Lift wunderbar auf Tastendrücke reagierte. Und warst du in dem selben Haus 15 Jahre später, wenn man einen Hexentanz auf genau denselben Tasten aufführen muss um sie überhaupt irgendwie zur Mitarbeit zu bewegen? > Hab ich das Problem falsch verstanden, oder bin ich einfach glücklich > genug, prellfreie Taster erwischt zu haben? Das kann in 5 Jahren alles ganz anders aussehen. Nur weil dein Taster HEUTE nicht prellt, bedeutet das nicht, dass er es in 5 Jahren nicht tut. Sie können in 5 Jahren immer noch gut funktionieren, so ist das ja wiederrum nicht. Können - müssen aber nicht. Die PeDa Entprellung kostet softwaremässig praktisch nichts. Und kommt selbst mit meinen stinkigsten Tastern, die ich aus Geräten ausgebaut habe, die zum Schrott wanderten, problemlos klar. Ganz abgesehen davon, dass sie in Bedienkonzepte bzw. Hauptschleifen ganz problemlos reinpasst und eigentlich ein recht gutes 'GUI' Design vorgibt. Ich bin immer wieder selbst überrascht, wie schnell und Problemlos man ein paar Tasten im Programm hat.
Vielen Dank für die Antwort, genau so etwas habe ich vermutet. Und wie gesagt: Ich möchte mir nicht anmaßen, die Sinnhaftigkeit der Entprellung in Frage zu stellen, das wäre absolut vermessen.
Philipp K. schrieb: > konnte aber auch ohne nie den "Prelleffekt" > nachvollziehen. Meine Taster gehen zudem am Oszilloskop sofort auf 5V > und bleiben dort auch, bis man sie loslässt, dann gehen sie aber auch > wieder ohne Umwege und "Aufflackern" auf 0V und bleiben dort. Das zeigt eigentlich nur genau eins: Du bist entweder zu blöd, einen Oszi richtig zu benutzen oder dein Oszi taugt nix. Warum? Ganz einfach: Jeder (wirklich absolut jeder) mechanische Taster aus festem Material prellt. Dafür sorgt die böse Physik. Oder meinetwegen auch Gott, falls du glaubst, daß der das Universum und seine Gesetze gemacht hat. Ob nun Gott oder die Physik: jeder Körper hat eine Masse>0 und jeder feste Körper hat eine Elastizität>0. Damit haben wir alles, was nach den Gesetzen dieses Universums zu einer Schwingung führen MUSS, wenn man Energie zuführt, was für einer Betätigung des Tasters unweigerlich erforderlich ist. Ob dir das nun passt oder nicht, ist dem Universum egal!
c-hater schrieb: > Philipp K. schrieb: > > Das zeigt eigentlich nur genau eins: Du bist entweder zu blöd, einen > Oszi richtig zu benutzen. > Wahrscheinlich. Da ich das aber niemals im Beruf werde tun müssen und das ein bloßes Hobby ist, habe ich ja alle Zeit der Welt, mir das anzueignen. Ich werd heute Abend nochmal nachschauen. Den Sermon hätte es aber nicht gebraucht, die Existenz des Prellens habe ich ja nicht angezweifelt.
c-hater schrieb: > Warum? Ganz einfach: Jeder (wirklich absolut jeder) mechanische Taster > aus festem Material prellt. Dafür sorgt die böse Physik. Oder > meinetwegen auch Gott, falls du glaubst, daß der das Universum und seine > Gesetze gemacht hat. Ob nun Gott oder die Physik: jeder Körper hat eine > Masse>0 und jeder feste Körper hat eine Elastizität>0. Damit haben wir > alles, was nach den Gesetzen dieses Universums zu einer Schwingung > führen MUSS, wenn man Energie zuführt, was für einer Betätigung des > Tasters unweigerlich erforderlich ist. Schon mal was von Dämpfung gehört?
Karl schrieb: > Schon mal was von Dämpfung gehört? Du bist also der, der das Geheimnis der perfekten Dämpfung kennt, also der Dämpfung mit der Fähigkeit zur Aufnahme unendlicher Energiebeträge in unendlich kurzer Zeit. Warum hast du das noch nicht patentiert? Jeder Hersteller mechanischer Kontakte in der ganzen Welt würde das Patent sofort lizensieren und horrende Beträge dafür ausgeben. Und nicht nur die... Übrigens: Du solltest nicht deinen Namen verleugnen. Wer das kann, was du kannst, darf sich auch mit seinem richtigen Namen vorstellen. Aber ich habe dich auch so erkannt: Hallo Gott!
c-hater schrieb: > Warum? Ganz einfach: Jeder (wirklich absolut jeder) mechanische Taster > aus festem Material prellt. Dafür sorgt die böse Physik. Nanana.. Also wenn man nur einen hinreichend großen Kondensator parallel zum Taster schaltet, kommt es beim Schließen zu ner Mikro-Verschweißung und der Kondensator als solcher sorgt dafür, daß der Pegel bis zum endgültigen Ruhen der Mechanik nicht wieder in die Nähe des Umschaltpunktes kommt. Wie lange so ein Taster das mitmacht ist ne ganz andere Frage.. (ich denk mir grad Karl Heinz mit den Fäusten auf dem Fahrstuhltaster herumwüten..) ABer wenn man's schon analog haben will, warum nicht? Geht ja auch. Vorausgesetzt, der Schmitt-trigger-Eingang ist hochohmig genug oder man setzt zwischen C (Elko) und Taster nen 33 Ohm. Fröhliches Tasten! W.S.
c-hater schrieb: > Das zeigt eigentlich nur genau eins: Du bist entweder zu blöd, einen > Oszi richtig zu benutzen oder dein Oszi taugt nix. Ich finde diesen Ton völlig unangebracht. Ich habe eben mal einen neuen Taster getestet und er ist auch prellfrei. Es ist einer mit Klick und kein super billig Fabrikat. Daß neue Taster wenig/nicht prellen, erklärt auch die Mißachtung der Entprellproblematik durch professionelle Programmierer. Erst wenn die Geräte älter werden, gibt es massiv Probleme.
Peter Dannegger schrieb: > SW-USB verbraucht allerdings 100% CPU-Zeit. > Man muß das Entprellen daher mit den USB-Pausen synchronisieren. Ich kann dir aus eigener Erfahrung sagen, das V-USB bei einem mega32 15MHz ca. 7%-8% Grundlast erzeugt. Wenn man den ADC 'free running' laufen lässt mit Interrupterzeugung alle 111µs, so liegt man bei ca. 15% Last. Sobald HID aktiv vom Host genutzt wird, gehts auf max.21% hoch.
1 | Analog-Digital Konverter: |
2 | Bei 15MHz und Teiler 1/128: 117,2kHz 110,93µs ~9 samples/ms |
Jeweils 9 ADC Interrupts ergeben eine hinreichend präzise Millisekunde zur internen Lastmessung (direkt im mega32)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.