Forum: Mikrocontroller und Digitale Elektronik AVR flashen über max. 5 Pins


von Lind (Gast)


Lesenswert?

Hallo

Gibt es irgendeine Möglichkeit, AVRs über max. 5 Pins zu flashen?
(außer Bootloader, denn der müsste je auch drauf gebrannt werden).

Die neuen xmega können ja PDI. Die sind aber viel zu teuer 
(Serienproduktion).

JTAG braucht sogar mehr Pins als SPI?

Gibt es da irgendeinen vernünftigen Weg?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Die meisten AVRs lassen sich in ISP programmieren, das braucht 4 Pins:
MOSI, MISO, SCLK und RESET. Da du nicht näher ausführst, um welche AVRs 
es dir geht, gibts im Moment nicht mehr.

von spess53 (Gast)


Lesenswert?

Hi

>Gibt es irgendeine Möglichkeit, AVRs über max. 5 Pins zu flashen?

GND, MISO, MOSI, CLK und Reset sind bei mir 5 Pins.

MfG Spess

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Mit GND sins dann sogar genau 5 :>

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Spassvögel :-) . Also gut, GND brauchts natürlich auch.

von Yalu X. (yalu) (Moderator)


Lesenswert?

Mit VCC sind es 6. Ich schätze den Threadstarter ging es genau darum.

Ok, wenn ein ausreichend großer Stützkondensator vorhanden ist, kann der
Chip auch über die Daten- und Steuerleitungen versorgt werden ;-)

von Timmo H. (masterfx)


Lesenswert?

Lind schrieb:
> Die neuen xmega können ja PDI. Die sind aber viel zu teuer
> (Serienproduktion).
Teuer? Der Atxmega32A4U (also mit USB) kostet gerade mal 1,64€ bei > 
100St
Viel billiger ist ein Atmega da auch nicht. Auch die mit > 128 KB sind 
nur unwesentlich teurer.

Naja aber die 5 Pins reichen ja auch für den Mega

von Lind (Gast)


Lesenswert?

Ich muss über einen 5 Poligen Stecker von außen das geschlossene Gerät 
programmieren.

Bei SPI brauche ich doch 6 Leitungen. VCC ist notwendig, sonst geht das 
nicht. Oder wie war das mit dem Stützkondesator gemeint? Ist das eine 
Bastellösung? Wie funktioniert das?

--
Wo kostet der Atxmega32A4U denn 1,64 Euro? Ich rechne mal so mit 100er 
Abnahmezahlen. Der ist außerdem nur im 44 pol. Gehäuse verfügbar.
Ich brauche ggfs. auch 8 Pinner (Platzprobleme).

von Hihi (Gast)


Lesenswert?

Die 6 Pins inkl GND & Vcc kann man auch per Nadeladapter kontaktieren & 
programmieren, falls die Steckleiste zu teuer erscheint.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Lind schrieb:
> Bei SPI brauche ich doch 6 Leitungen. VCC ist notwendig, sonst geht das
> nicht.

Dein "Gerät", wo der AVR drinsteckt, hat doch bestimmt eine eigene 
Stromversorgung, oder nicht? Dann hat der µC doch Vcc.

Einige Programmer benutzen die Vcc-Leitung, um die Spannung zu messen, 
unter der der µC läuft. Es gibt aber auch Programmer, die machen das 
nicht und benutzen immer TTL-Pegel.

von Lind (Gast)


Lesenswert?

Mouser hat den für 1,64 sehe ich gerade.
Aber der fällt dann doch weg, weil er mit 5V laufen muss.

von spess53 (Gast)


Lesenswert?

Hi

>VCC ist notwendig,

Wozu? Stromversorgung oder ATMEL-Programmer.

MfG Spess

von Lind (Gast)


Lesenswert?

Mein ominöses "Gerät" hat keine eigene Stromversorgung; es wird an 
Gerät2 angeschlossen zum Betrieb.
Es ist wirklich nur ein 5 poliger Stecker vorhanden zum Programmieren.

von spess53 (Gast)


Lesenswert?

Hi

>Mein ominöses "Gerät" hat keine eigene Stromversorgung; es wird an
>Gerät2 angeschlossen zum Betrieb.
>Es ist wirklich nur ein 5 poliger Stecker vorhanden zum Programmieren.

Fehlplanung.

MfG Spess

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Lind schrieb:
> Es ist wirklich nur ein 5 poliger Stecker vorhanden zum Programmieren.

Und die Pins dieses 5-poligen Steckers hängen an welchen Pins des µCs?

von Jonathan M. (jona)


Lesenswert?

Kannst du es programmieren,während es mit dem 2.Gerät verbunden ist?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Lind schrieb:
> Mouser hat den für 1,64 sehe ich gerade.
> Aber der fällt dann doch weg, weil er mit 5V laufen muss.

Alle XMegas laufen bis 3,6 Volt (und haben keine 5V-toleranten 
Eingänge).

Lind schrieb:
> Mein ominöses "Gerät" hat keine eigene Stromversorgung; es wird an
> Gerät2 angeschlossen zum Betrieb.
> Es ist wirklich nur ein 5 poliger Stecker vorhanden zum Programmieren.

Dann gib dem Programmer doch die Vcc von woanders her, z.B. aus dem USB 
Port des Programmierrechners. Solange diese Vcc der Vcc des 'Gerätes' 
entspricht, gibts da keine Probleme.

von Name: (Gast)


Lesenswert?

Wenn der Atmel von der Zielschaltung versorgt wird, reicht doch für eine 
Programmierung ein 5 Poliges Kabel.
(SCK, MISO, MOSI, Reset, GND)

Hauptsache das Bezugspotential ist da.
Und der Programmer darf kein Ausgangstreiber haben, welcher von der 
Zielschaltung versorgt wird.

Oder vegesse ich grad was wichtiges?

von Yalu X. (yalu) (Moderator)


Lesenswert?

Lind schrieb:
> Oder wie war das mit dem Stützkondesator gemeint? Ist das eine
> Bastellösung?

Ich würde sagen, ja.

> Wie funktioniert das?

Die Stromversorgung erfolgt über die im Chip integrierten Schutzdioden.
Dazu muss aber in regelmäßigen Abständen mindestens einer der Pins
High-Pegel haben. Die Zeiträume, in denen alle Pins low sind, müssen vom
Stützkondensator überbrückt werden.

Immerhin ist der Clock-Pin für die Hälfte der Zeit high. Wenn also der
CLock-Ausgang des Programmiergeräts das Doppelte des Stromverbrauchs des
µC liefern kann, könnte die Sache halbwegs zuverlässig funktionieren.

Man muss allerdings auch die maximale Strombelastbarkeit der Schutz-
dioden beachten. Im Datenblatt steht dazu nichts, aber in einer Appnote
von Atmel stand mal der Hinweis, dass man maximal etwa 2mA Dauerstrom
durchschicken kann.

Der µC sollte also maximal 1mA verbrauchen, wenn er über den CLock-Pin
versorgt wird. Der Stromverbrauch während der Programmierung steht aber
ebenfalls nicht im Datenblatt, müsste also gemessen werden. Bei größeren
AVRs wird man da möglicherweise an die Grenze stoßen.

Um sicherzustellen, dass die Versorgungsspannung gleich zu Beginn des
Programmiervorgangs einen ausreichenden Wert hat, kann der Stützkonden-
sator initial über den Reset-Pin geladen werden, an dem anfangs ja
sowieso ein High-Pegel anliegt. Falls der Reset-Ausgang des Programmier-
geräts Ströme >2mA liefern kann, sollte der Strom aber geeignet begrenzt
werden, um Schäden zu vermeiden.

Falls die µC-Schaltung außer dem µC noch weitere Verbraucher enthält,
wird die Sache auf jeden Fall schwierig.


Ich würde diese ziemlich pfuschige Lösung nur als allerletzte Rettung
einsetzen, und das auch nur dann, wenn dir alle beteiligten Komponenten
(insbesondere µC-Schaltung und Programmiergerät) genau bekannt sind und
du bezüglich der fließenden Ströme alles genau für den Worst-Case durch-
gerechnet hast.

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.