Forum: Mikrocontroller und Digitale Elektronik Treiber IC für Programer


von miC (Gast)


Lesenswert?

Also:

Ich bin gerade dabei einen recht komplizierten Programer zu entwerfen,
mit dem sich jeder AVR, den man seriell programmieren kann,
programmieren lässt.

Sprich vom tiny bis zum mega32, auch mit Unterstützung von alten AVRs,
die keine interne Taktung haben.

Gedacht war es folgendermaßen:

Ich nehme 2 mega16-µCs, verbinde sie über ihre 2-Wire serial interface
(SDA/SCL) und lasse sie so untereinander kommunizieren.

die RS232 Schnittstelle des Computers wird an beide AVRs an beliebige
Pins angeschlossen.

Jeder AVR hat im eeprom die Pinbelegung aller AVRs gespeichert und
leitet sie dann, je nach Auswahl (z.B. über ein LCD-Display und einen
Taster realisierbar), an den entsprechenden Pin an dem 40Pol
ZIF-Socket.

Zwei AVRs aus dem Grund, weil ich den ZIF Sockel voll beschalten muss,
sprich: 20 Pins werden an den ersten Mega16 angeschlossen und 20 Pins
an den zweiten Mega16.

Der Signalinput und Output der RS232 Schnittstelle wird mittels eines
Treibers gestützt, somit lassen sich etwaige Probleme der Kabellänge
recht passabel lösen.

Nur habe ich ein Problem mit der Signalweiterleitung:

Ich muss nicht nur MISO, MOSI, SCK (und XTAL) weiterleiten, sondern
auch VCC und GND.

Dafür benötige ich einen Treiber, der bei Low-Pegel vom Mega16 den
entsprechenden Programmier-Pin mit GND versorgt und bei High-Pegel den
entsprechenden Pin mit +5V.

Dieses Bauteil sollte Ströme von mindestens 20mA aushalten können.

Gut. Manche würden sagen: lös das ganze mit Transistoren.

Nur ich bin mir sicher es gibt eine einfacherer und kompaktere
Möglichkeit als 40 Transistoren auf eine Platine zu löten. Genauso
schwachsinnig wären ICs, in denen mehrere Transistoren vereint sind.

Gruß und schon im voraus: Danke.

miC

von miC (Gast)


Lesenswert?

vielleicht ein wenig einfacher ausgedrückt:

wenn der AVR Ausgang LOW ist, soll das Potential am Pin GND sein.

Wenn es HIGH ist, +5V

Das Ganze soll noch einen Strom von mindestens 20mA aushalten.

Und es soll so kompakt wie möglich sein.

von Rufus, das dicke Ei (Gast)


Lesenswert?

Mal von der grundsätzlichen Fragwürdigkeit des Projekts abgesehen, wieso
2 Megas und nicht ein 128er? Der hat ein paar Beinchen mehr.

von A.K. (Gast)


Lesenswert?

Steht irgendwo festgeschrieben, dass man sich dermassen viel Arbeit
machen muss, wenn's auch einfacher geht?

ISP heisst ja eigentlich In System Programming, nicht In Programmer
Programming. Insofern geht das ganze etwas an der Realität vorbei.

"mit dem sich jeder AVR, den man seriell programmieren kann,
programmieren lässt."

Alle Gehäusevarianten eingeschlossen? 8/20/28/40/44/68/80/100/... in
teils mehreren Varanten? Da würde ich mit um die Paar Transistoren
keine Gedanken machen, allein die SMD Fassungen machen dich schon arm.

Und wenn das ganze auf DIP beschränkt sein soll - so viele Varianten
von VCC/GND gibt's da letztlich garnicht. Ausserdem mag es sinnvoller
sein, die diversen 300mil Sockel zu trennen, kann man die Chips kaum
noch falsch reinstecken.

von Rufus T. Firefly (Gast)


Lesenswert?

Eben, A.K. hat recht. Ein Blick auf ein Bild vom STK500 zeigt, wie man
sowas mit vertretbarem Aufwand hinbekommt ...

von miC (Gast)


Lesenswert?

joa, ich habs inzwischen auch eingesehen, das was ich vorhatte ist es
nicht wert, vorallem weil es auch nicht vermarktet werden soll :)
der aufwand wäre viel zu groß und kostspielig.

ich guck mir ma den stk500 an, danke trotzdem.

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
Noch kein Account? Hier anmelden.