mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zum debounce-befehl


Autor: Tobias Kohlhauf (kohl-t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich schreibe zum ersten mal in diesem Forum und beschäftige mich 
auch erst zwei Tage mit µC's. Ich probiere grundlegende Funktionen mit 
BASCOM aus und bin jetzt bei dem debounce-befehl hängen geblieben:
Ich möchte über zwei Taster zwei LED's toggeln und habe mir folgenden 
Code zusammen gereimt:

                               $regfile = "m32def.dat"

 $crystal = 1000000

 Config Porta.0 = Output
 Config Porta.1 = Output
 Config Pinb.0 = Input
 Config Pinb.1 = Input


Config Debounce = 50

Do
Debounce Pinb.0 , 1 , Schalter1 , Sub
Debounce Pinb.1 , 1 , Schalter2 , Sub

Loop

Schalter1:
Toggle Porta.0
Return

Schalter2:
Toggle Porta.1
Return


End


Ergebniss ist das nur die erste LED das macht was sie soll, die zweite 
rührt sich nicht. Könnt ihr mir sagen wo der Fehler liegt?

Autor: Stefan B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ändert sich was, wenn du die beiden Zeilen in der DO LOOP tauschst? 
Ansonsten vielleicht: LED2 falsch herum eingebaut oder kaputt? 
LED2/Taster2 kalte Lötstelle oder wackelkontakt?

Autor: Tobias Kohlhauf (kohl-t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan B. schrieb:
> Ändert sich was, wenn du die beiden Zeilen in der DO LOOP tauschst?
> Ansonsten vielleicht: LED2 falsch herum eingebaut oder kaputt?
> LED2/Taster2 kalte Lötstelle oder wackelkontakt?

Ja, beim vertauschen der do-Zeilen leuchtet *) die zweite LED dauerhaft 
und die erste funktioniert nach wie vor wie sie soll. Hardwareseitig 
dürfte sich nichts fehlen, hab alles auf dem Evaluationsboard aufgebaut 
und bei anderen Testprogrammen funktionierten sowohl der zweite Taster 
als auch die LED.

*) Die LED leuchtet auf halber Helligkeit, bin mir ziemlich sicher dass 
sie gepulst ist, also in irgend einer schleife in der sie immer wieder 
ein und ausschaltet..

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was mir auffällt:
Du hast keine Pullup Widerstände an den Tastern eingeschaltet.
Hast du externe drann?

Autor: Tobias Kohlhauf (kohl-t)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:
> Was mir auffällt:
> Du hast keine Pullup Widerstände an den Tastern eingeschaltet.
> Hast du externe drann?

Ich hab ein fertig gekauftes Evaluationsboard, nach Schaltplan sind die 
Taster mit einem pull-down und einem Kondensator (evtl zur Entprellung?) 
versehen, sie schalten also 5V durch.

Autor: Stefan B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du den Schaltplan oder einen Link dazu?

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.