mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ISP Pin's als Ausgang belegen, wie geht das?


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

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich bastle schon seit einiger Zeit an einer Schaltung mit einem 
ATtiny2313. Das ganze hat 12 Tasteneingänge (jede an einem eigenen Pin 
angeschlossen) und einen Ausgang, an dem über 10kOhm ein BC548 
Transistor hängt, mit dem dann eine Last geschalten wird wenn man die 
Tasten richtig drückt. Da durch die 12 Tasten schon alles an 
"unabhängigen" Pins aufgebraucht ist habe ich den Transistorausgang an 
den MOSI Port gehängt.

Damit gibt es jetzt aber scheinbar Probleme, denn ich kann den ATtiny 
nicht mehr richtig beschreiben. PonyProg hängt sich immer zwischen 6 - 
50% auf, und wenn es doch ganz durchläuft meckert er, dass er nicht 
erfolgreich schreiben konnte. Wenn ich den 10k Ohm Widerstand zum 
Transistor trenne geht es ohne Probleme, daher vermute ich, dass das 
Problem da ran liegt. Während dem schreiben liegt am Transistor keine 
Spannung an und es ist auch nix angeschlossen, ein Abblockkondensator 
ist im IC Sockel drin.

Habe zwar schon was gefunden, dass es gehen müsste, wenn man die Sachen 
hochohmig anschließt, aber wie genau muss ich das mit meinem Transistor 
machen? Es ist einfach nervig jedes mal beim Testen des Codes erst den 
Widerstand weg- und wieder an zu löten.

Hier mal der Schaltplan, im Anhang außerdem Code und Layout. R1 wurde 
übrigens auch schon entfernt!
http://pic.leech.it/pic.php?id=d23d073dbild1.png

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Orikson (Gast)

>ATtiny2313. Das ganze hat 12 Tasteneingänge (jede an einem eigenen Pin
>angeschlossen) und einen Ausgang, an dem über 10kOhm ein BC548

Die Widerstandsnetzwerke kannst du dir sparen. Einfach die internen 
Pull-Ups einschalten.

Die 10K sollten eigentlich keine Probleme machen. Jeder normale 
Programmieradapter kann das treiben. Allerdings haben einige 
Super-Billig-Sparversionen damit Probleme.

Wenn es nciht geht, dann tausche deinen Transistorausgang mit einer 
Taste, das geht dann problemlos. Man darf nur nicht die Taste beim 
Programmieren drücken :-0

MFG
Falk

Autor: Orikson (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Widerstandsnetzwerke müssen sein, weil die internen Pull-Ups zu 
klein sind (~10k) ich aber ~1M brauch. Das sind auch keine normalen 
Taster sondern nur metalische Flächen derren Kapazitätsänderung gemessen 
wird, das geht dann ohne mechanische Taster und berührungslos.

Als Programmer habe ich den LPT von hier: 
http://rumil.de/hardware/avrisp.html

Kann ich denn nicht irgendwie eine Verzögerung in den Code schreiben, 
dass der Ausgang erst nach 5 Sekunden oder so zum Ausgang wird? Oder 
stört allein schon die Tatsache das da ein Transistor ist?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Orikson (Gast)

>Als Programmer habe ich den LPT von hier:
>http://rumil.de/hardware/avrisp.html

Der ist OK.

>Kann ich denn nicht irgendwie eine Verzögerung in den Code schreiben,
>dass der Ausgang erst nach 5 Sekunden oder so zum Ausgang wird?

Vollkommen egal, sobal RESET auf LOW geht, ist es keine Ausgang mehr.

> Oder stört allein schon die Tatsache das da ein Transistor ist?

Nöö, wenn es WIRKLICH 10K sind sollte der Programmieradapter keine 
Probleme haben, das Ding zu treiben. Prüfe mal deinen Aufbau. Vielleicht 
hast du keine gute Massevebindung oder so.

MFG
Falk

Autor: Orikson (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim Aufbau ist mir jetz nix ungewöhnliches aufgefallen, Masse ist ok.

Aber ich sehe gerade, dass ich die Anschlüsse für den externen Quarz 
auch verwenden kann, da ja der interne Takt verwendet wird. Dann werde 
ich das wohl so machen, dann hab ich hoffentlich kein Problem mehr 
damit...

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.