mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik positiven puls löschen. wie?


Autor: marko (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hi,

hat jemand einen tipp zur vervollständigung der schaltung.

beim schliessen des schalters habe ich am ausgang eine impulsbreite
nullpotential. (puls soll einen interrupt auslösen)

ich möchte den positiven puls beim öffnen des schalters wegbekommen, da
ich denke, dass er dem µC schaden kann.

gruß marko

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hübsch, welcher Unsinn beim Simulieren rauskommt.

In der Praxis steigt nämlich aus dem 7414 eine Rauchwolke, sobald Du
12V 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).

Autor: marko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

es reicht also, eine z-diode(z.b.4v7 oder 5v1) mit widerstand vor den
eingang zu schalten. oder?

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@marko:

Vor welchen Eingang willst Du wie eine Z-Diode einbauen???

Was hast Du überhaupt vor? Was willst Du überhaupt machen?

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was für ein besch*... Dateiformat, um ein Bild zu übermitteln.
Einfach eine Diode in Sperrrichtung vor den Eingang des µC (EIngang A
deines Oszilloskops).
Allerdings hast du dann noch einen Spannungsabfall von ca. 0,7V am
µC-Pin.
Ausserdem würde es besser gehen, wenn du das RC in Form eines
Tiefpasses schalten würdest. Dann könntest du dir auch den
Schmitt-Trigger sparen.
... und Peter hat wirklich Recht: Taster direkt an µC-Pin (gegen
Masse), internen Pull-Up einschalten (vielleicht noch einen etwas
niederohmigen dazu parallel.
Bei Interrupt entweder eine Warteschleife oder einen Timer starten (und
den ext-Interrupt sperren wegen Mehrfachauslösung).
Nach der Schleife bzw. nach Ablauf des Timers nachgucken, ob Pin noch
in dem gewünschten Zustand ist, sonst war es nur eine Leitungsstörung.
Warteschleifen übrigens nie in Interrupt-Routinen!
Timer-Lösung ist eleganter.
Prellzeiten liegen im Bereich 10 bis 100ms (absolut Worstcase, nur vom
Hörensagen bekannt).

Gruß Rahul

Autor: marko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ michael:
ich habe vor, den ausgang eine zentralverriegelung zu nutzen um die
blinker anzusteuern und ein einfach entworfenes alarmsysten zu
aktivieren/deaktivieren.

@ peter: lies michael
der ausgang hat doch +5v(dauerhaft) und 0v und nicht 12v
da die +5v dauerhaft anliegen, wollte ich dies eben mit einem puls
umgehen ( weiß nur nich ob das ein vor-oder nachteil ist ????)

@ rahul ode alle
warum in der isr nie ein schleife ausführen?
den ext-Interrupt gleich beim sprung in die isr sperren?
wie schalte

gruß marko

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marko:
1. Weil ISR grundsätzlich möglichst kurz sein sollen!
2. ja, genau
3. ???

Autor: marko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Rahul:

zu 3. vieleicht noch'ma zu "wie schalte..." ich den internen
Pull-Up?
      sicher ist gemeint, den pin auf eingang zu schalten. oder?

marko

Autor: Kai M. Tegtmeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marko

Dann will ich Rahul mal etwas entlasten ;-)

Natürlich muß der Pin über das DDRx-Register auch auf Eingang
geschaltet sein, sonst macht das Ganze keinen Sinn. Aber zusätzlich
dazu mußt Du den internen Pull-up-Widerstand einschalten, d.h. das
PORTx-Register muß für diesen Pin auf 1 liegen. Sonst liegt an dem
Eingang immer 0V an, egal, ob der Taster gedrückt ist oder nicht.

Gruß
KMT

Autor: Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@KMT:
Das mit 0V ist nicht ganz richtig:
Der Eingang ist hochohmig.
Mit der 1 im Port-Register schaltet man nur eine Pull-Up dazu, den man
sonst extern bräuchte oder ein Schalter zwischen 0 und Vcc ohne
"Lücke"umschaltet, also immer einen Zustand hat. Da sowas schwierig
zu realisieren ist, und Umschalter teuerer sind als einfache Schalter,
schaltet man gegen Masse und benutzt einen Pull-Up.
[Kritik]
Ein paar elektrotechnische Grundlagen sollte man schon haben, wenn man
mit Elektrizität rumspielt.Wenn dann auch noch Fahrzeuge und die
Sicherheit anderer auf dem Spiel stehen, dann sogar etwas mehr...
[/Kritik]

Gruß Rahul

Autor: Andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Lösung wäre auch 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

Autor: Kai M. Tegtmeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Rahul

Na selbstverständlich! War wohl schon etwas zu spät oder ein
Bierchen zuviel ;-) Wie Du schon geschrieben hattest, ist das mit
den internen Pullups so ne Sache. Ich habe jetzt nicht den genauen
Wert aus dem Datenblatt im Kopf, auf jeden Fall ist der ziemlich
hochohmig. Für nen "einfachen" Taster mag das noch gut gehen; will
man damit einen I2C-Bus ansteuern, siehts schon wieder ganz anders aus.
Also auf jeden Fall sicherer ist ein externer Pullup.

Ich bin mehr ein Fan von Hardware-Entprellung: was nicht in den
Prozessor rein geht, belastet ihn auch nicht unnötig (zeitlich)...

Gruß
KMT

Autor: marko (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ rahul:
mach dir mal keine sorgen um die kfz-elektrik, da habe ich einige
erfahrungen sammeln können.

mir gings eben nur um den positiven puls, welcher evtl. den eingang des
µc zerstören könnte.

danke marko

Autor: Michael (ein anderer) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Kai M. Tegtmeier:

Ein Mikrocontroller darf man getrost nahezu 100% auslasten. Wozu
unnötig Geld für Hardware ausgeben, wenn's die Software nebenher noch
macht?

Entprellung in Hardware ist für Mikrocontroller absolut für die Katz'.
Das bischen kann der Controller noch nebenher machen. Z.b. ganz
primitiv: 10 mal pro Sekunde die Eingänge pollen, keine weitere
Berechnungen. Und um Spikes zu verhindern, machst Du externe Pull-Ups
mit z.b. 1 Kilo, so dass bei 5 Volt 5mA fliessen müssen, um ein Low zu
erzeugen. Ganz einfach und billig und primitiv und funktioniert
wunderbar und benötigt kaum Rechenzeit.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.