mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik entprellter Taster an SCK - AVR Studio redet von short circuit


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

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich rätsel gerade ein bisschen herum - ich habe auf einer bereits 
geätzten platine wohl einen fehler gemacht, den ich nicht ganz 
nachvollziehen kann:
Am SCK eingang des Mega16 habe ich einen entprellten Taster 
angeschlossen. Wenn ich nun mit AVR Studio und meinem ISP mkII 
programmieren will, bekomme ich einen error "SCK line appears to be 
short circuited".

Falls das nun an den entprellkomponenten gegen masse liegt, wüsste ich 
gerne, wie ich ohne größeren aufwand abhilfe schaffen kann, ohne die 
funktion des aufbaus großartig zu beinträchtigen? Oder ist der Aufbau so 
indisukutabel und einfach nicht zulässig?

Ausschnitt im Anhang.

Beste grüße

Alex

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Indiskutabel und einfach nicht zulässig. Mit deinem Kondensator 
versuchst du ja, schnelle Pegelwechsel zu unterdrücken. Und eben diese 
treten beim Programmieren nun mal regelmäßig auf, wenn SCK mit etlichen 
kHZ getaktet wird.

Schmeiß den Kondensator raus und mach die Entprellung per Software. Und 
wenn du die Taster gegen GND schaltest und den internen Pullup 
aktivierst, kannst du auch auf dem Widerstand verzichten. Da die Platine 
aber schon fertig ist, musst du den Widerstand behalten, weil ein AVR 
keine internen Pulldowns hat.

Autor: Joachim K. (minifloat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der 330n-Kondensator bildet Wechselstrommäßig einen Widerstand, der bei 
den üblichen Frequenzen, die am SCK anliegen gegen 0Ω geht.

1. Lösungsansatz: einen Widerstand in die Leitung von Taster zu SCK rein 
werfen, vllt. so 100k. Oder einen Jumper, der dann fürs brennen 
abgezogen werden muss.

2. Lösungsansatz: per Software entprellen und interne Pullups nutzen. 
Der Taster schaltet dann gegen Ground.

mfg mf

Autor: Bernhard R. (barnyhh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alex schrieb:
> Oder ist der Aufbau so
> indisukutabel und einfach nicht zulässig?

Ja.

Mach die Entprell-Kondensatoren raus und entprelle in Software!

Du hast jetzt (auf die harte Art) folgendes gelernt:
Man mißbraucht nie nie nie die Programmierpins für irgendetwas anderes 
(andere Pins benutzt man auch möglichst nur für genau einen Zweck).

Bernhard

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jumper in die Leitung SCK zum Tastermimik setzen oder einen 
Serienwiderstand (=> ATmel Appnote Hardware Considerations). Jumper 
ziehen, wenn ISP programmiert wird.

Ich würde an deiner Stelle auch den Einbau des Tasters S5 prüfen, ob der 
Taster wirklich offen ist oder durch einen Fehler die 5VFUSED an SCK 
anliegen,

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernhard R. schrieb:
> Man mißbraucht nie nie nie die Programmierpins für irgendetwas anderes
Das würde ich nicht komplett so sehen. Für Eingangssignal (wie hier) 
sollten die Pins nur im Notfall eingesetzt werden. Aber bei Ausgängen 
ist es unkritisch, wenn nichts kritisches dort angeschlossen ist (z.B. 
ein Motortreiber wäre ne blöde Idee). Ich nehme die ISP-Pins gerne für 
Status-LEDs. Da stört es nicht weiter, wenn sie kurz mal etwas blinken.

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

Bewertung
0 lesenswert
nicht lesenswert
in ordung. kacke. jetzt muss ich die ganze hand wieder umbauen. ich 
"dachte", die programmierpins könnten normal verwendet werden, sofern 
über sck bzw reset nicht signalisiert ist, dass sie gerade zur 
programmierung verwendet werden. :/
zum beweis, dass es wirklich auf die harte art war, hier mal das, was 
ich jetzt wieder auffriemeln muss:

dankesehr.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann das Ding sich noch nicht selbst aufpfriemeln :-)
SCNR

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
noch nicht, ich kanns ja nicht programmieren ^^

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich werde das mit den serienwiderständen probieren. 100k ist ok?
ich habe intern keine pulls gesetzt und weiß nicht, wie viel dann bei 
tasterdruck effektiv am eingang anliegt.

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernhard R. schrieb:
> Alex schrieb:
>> Oder ist der Aufbau so
>> indisukutabel und einfach nicht zulässig?
> Du hast jetzt (auf die harte Art) folgendes gelernt:
> Man mißbraucht nie nie nie die Programmierpins für irgendetwas anderes
> (andere Pins benutzt man auch möglichst nur für genau einen Zweck).

Das ist Quatsch und trifft höchstens für Anfänger zu. Wenn man weiß, was 
man tut ist das kein Problem. Anders könnte man ja bei den meisten AVRs 
gar nicht das SPI Hardware Interface benutzen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernhard R. schrieb:
> Man mißbraucht nie nie nie die Programmierpins für irgendetwas anderes
> (andere Pins benutzt man auch möglichst nur für genau einen Zweck).

Das ist Quatsch.
Wie soll das z.B. beim ATtiny25 gehen, dann hättest Du ja nur 2 IO-Pins 
verfügbar, statt 6.

Löte die 300nF Kondis raus, machen Entprellen in SW und gut is.


Peter

Autor: Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die 100k in reihe waren (bisher) eine gute lösung. hand ist jetzt 
programmierbar. ich bin ja mal gespannt! ^^

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
100k ist zu hoch. Nimm 10k.
Trotzdem ist die Lösung, die Kondensatoren rauszunehmen bisher die 
Beste.

Autor: Joachim K. (minifloat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Simon K. schrieb:
> 100k ist zu hoch. Nimm 10k.

Guckst du zu den 33k, die am Kondensator hängen. Ich denke bei den 
Tastern kommt es nicht auf Geschwindigkeit an und die Portpins haben 
einen doch recht großen Eingangswiderstand.

mfg mf

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo K. schrieb:
> Simon K. schrieb:
>> 100k ist zu hoch. Nimm 10k.
>
> Guckst du zu den 33k, die am Kondensator hängen.

Hm, was sollte ich da sehen?

> Ich denke bei den
> Tastern kommt es nicht auf Geschwindigkeit an und die Portpins haben
> einen doch recht großen Eingangswiderstand.

Es ist aber ganz einfach störfester. Ist jetzt auch mehr eine 
Bauchentscheidung bei mir gewesen ;-)

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.