Forum: Mikrocontroller und Digitale Elektronik ISP erkennt ATtiny167 nicht - Schaltplan fehlerhaft?


von Christian R. (cmrudolph)


Angehängte Dateien:

Lesenswert?

Hi,

mein AVRISP mkII erkennt meinen Mikrocontroller, einen ATtiny167, nicht.
Es sollte eigentlich alles korrekt gelötet sein (keine Kurzschlüsse oder 
unterbrochene Verbindungen).
Daher bleiben meiner Ansicht nach noch mindestens zwei Fehlerquellen 
übrig:
1. ich habe den ATtiny beim löten zerstört (habe zum ersten Mal SMD 
gelötet)
2. die Schaltung enthält einen Fehler

Testweise habe ich noch einen 10k Pullup an Reset gelötet (sollte aber 
eigentlich nicht notwendig sein, oder?).

Ich habe mal den Schaltplan hochgeladen. Gibt es da grundlegende Fehler?

Die Spannungsversorgung liegt auf einer anderen Platine und erfolgt über 
JP1 (Steuerlitze, 0,14mm²). Nach meiner Messung liegt Spannung an, der 
AVRISP erkennt die Spannung auch.

Edit: ISP Clock habe ich auf 2,152 kHz eingestellt.

: Bearbeitet durch User
von Dietrich L. (dietrichl)


Lesenswert?

Am /RESET fehlt noch ein Widerstand von 10kOhm nach +5V.

Eventuell stören auch die Anschlüsse des TLC5940 - da habe ich jetzt 
nicht näher nachgeschaut. Ich würde den TLC5940 testweise mal entfernen 
oder die ISP-Leitungen trennen.

Gruß Dietrich

von Christian R. (cmrudolph)


Lesenswert?

Dietrich L. schrieb:
> Am /RESET fehlt noch ein Widerstand von 10kOhm nach +5V.

Den habe ich bereits hinzugefügt, siehe auch mein erster Post 
("Testweise habe ich noch einen 10k Pullup an Reset gelötet"), daran 
liegt es also schonmal nicht.

> Eventuell stören auch die Anschlüsse des TLC5940 - da habe ich jetzt
> nicht näher nachgeschaut. Ich würde den TLC5940 testweise mal entfernen
> oder die ISP-Leitungen trennen.
Und schon werd ich dafür bestraft, ausnahmsweise mal nicht jeden IC auf 
einen Sockel gepackt zu haben...

Ich werd vom TLC5940 nochmal das Datenblatt durchforsten, allerdings 
wird der auch per SPI (weitestgehend) angesteuert, daher dürfte es da 
keine Probleme geben.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Dietrich L. schrieb:
> Eventuell stören auch die Anschlüsse des TLC5940 - da habe ich jetzt
> nicht näher nachgeschaut. Ich würde den TLC5940 testweise mal entfernen
> oder die ISP-Leitungen trennen.

Das wäre auch meine Vermutung. Verdächtig scheint mir der Anschluss SOUT 
des TLC5940. Wenn dieser die MISO-Leitung blockiert, kanns nicht 
funktionieren.

Die anderen Leitungen des TLC5940 (SIN, SCLK, GSCLK) sind vermutlich 
Eingänge? Dann ist dort keine Störung zu erwarten.

Vorschlag: Versuchsweise mal nur SOUT trennen. Wenn das hilft, wäre 
eventuell eine Schaltungsänderung nützlich: du könntest SOUT mit einem 
Vorwiderstand versehen, z.B. mit 2,2 kOhm.

von Christian R. (cmrudolph)


Lesenswert?

Markus Weber schrieb:
> Dietrich L. schrieb:
>> Eventuell stören auch die Anschlüsse des TLC5940 - da habe ich jetzt
>> nicht näher nachgeschaut. Ich würde den TLC5940 testweise mal entfernen
>> oder die ISP-Leitungen trennen.
>
> Das wäre auch meine Vermutung. Verdächtig scheint mir der Anschluss SOUT
> des TLC5940. Wenn dieser die MISO-Leitung blockiert, kanns nicht
> funktionieren.

Das mit dem SOUT habe ich auch gerade überlegt, nachdem ich nochmal in 
den Schaltplan gegangen bin. Das halte ich auch für das Problem, weil 
der TLC sich ja wie ein Schieberegister verhält, daher kommt beim SOUT 
dann wohl während des Programmierens etwas an.

> Die anderen Leitungen des TLC5940 (SIN, SCLK, GSCLK) sind vermutlich
> Eingänge? Dann ist dort keine Störung zu erwarten.
Richtig, die werden wie beim SPI verwendet.

> Vorschlag: Versuchsweise mal nur SOUT trennen. Wenn das hilft, wäre
> eventuell eine Schaltungsänderung nützlich: du könntest SOUT mit einem
> Vorwiderstand versehen, z.B. mit 2,2 kOhm.
Eigentlich brauche ich SOUT gar nicht, hatte mir dabei nur gedacht "hmm, 
vielleicht will ich mit der Software doch irgendwann einmal die Werte 
des TLC auslesen. Werde jetzt also erst einmal die Leiterbahn 
durchtrennen und dann ggf. einen Widerstand einfügen.

Danke euch nochmal für die Hilfe! Ich werde dann nachher posten, ob es 
klappt.

von Christian R. (cmrudolph)


Lesenswert?

Die Verbindung zu SOUT ist gekappt, leider ohne Erfolg.

Edit: die beiden MISO und MOSI habe ich jetzt auch noch vom TLC5940 
getrennt, es ist jetzt nur noch RESET am TLC.

: Bearbeitet durch User
von Christian R. (cmrudolph)


Lesenswert?

So, ich habe jetzt nochmal die Leitungen durchgemessen und keine Fehler 
festgestellt.
Kann es sonst noch etwas mit dem Takt des Mikrocontrollers zu tun haben?
Eigentlich sollte ja der interne Oszillator des ATtiny verwendet werden, 
da ich bisher ja noch keine Fuses setzen konnte.
Ich habe leider kein Oszilloskop und kann daher die Signalverläufe nicht 
nachvollziehen, deshalb stochere ich ein wenig im Dunklen.

Edit: AtmelStudio liefert übrigens eine Fehlermeldung im Log:
[ERROR] Failed to enter programming mode. ispEnterProgMode: Error status 
received: Got 0xc0, expected 0x00, ModuleName: TCF (TCF command: 
Device:startSession failed.)

: Bearbeitet durch User
von Sebastian W. (wangnick)


Lesenswert?

Wie hoch ist die ISP-Geschwindigkeit - 2kHz? Versuch doch mal 200kHz.

LG, Sebastian

von Christian R. (cmrudolph)


Lesenswert?

Laut Datenblatt ist der interne 8MHz Oszillator vom ATtiny167 bei 
Auslieferung aktiv und der Frequenzteiler aktiv, daher 1MHz Taktung.
Ich habe auch mit 125kHz und 250kHz (Maximum bei 1MHz) ISP Frequenz 
getestet - selbes Resultat.

von Sebastian W. (wangnick)


Lesenswert?

Kann eigentlich nur noch etwas ganz Blödes sein. Korrekter Prozessor in 
Visual Studio ausgewählt? ISP-Stecker richtig rum? Mach doch mal ein 
Foto.

LG, Sebastian

von Christian R. (cmrudolph)


Angehängte Dateien:

Lesenswert?

Ich habe die Einstellungen im Atmel Studio nochmal geprüft, da passt 
alles (ATtiny 167 eingestellt, ISP Frequenz ausprobiert). Mit einer 
anderen Schaltung (mit einem ATmega 1284P) funktioniert der 
Programmieradapter auch so, wie er soll.

Auf den hochgeladenen Fotos sieht man:
- den provisorisch eingelöteten Pullup-Widerstand
- die aufgebrochenen Brücken zum TLC5940 (MISO und MOSI)
- die aufgefräste Leiterbahn, die zum SOUT führte
- den ganzen Dreck, den das Austauschen vom ATtiny hinterlassen hat

von Frank K. (fchk)


Lesenswert?

Herzlichen Glückwunsch! Du bist in eine der gemeinen AVR Anfängerfallen 
geraten.

Du verwendest den !Reset-Pin des ATTiny (PB7) als Portpin. Das ist eine 
ganz dumme Idee. Erstens bräuchte der, solange er noch Reset ist, 10k 
nach Vcc, zum zweiten kannst Du den Chip damit genau einmal flashen und 
dann nie wieder. ISP funktioniert ohne Reset-Pin nämlich nicht. Das 
bekommst Du dann nur noch per HV-Programmierung in einem STK500 
zurückgesetzt. Bei einem PIC wäre das egal, da ist das so gemacht, dass 
Du den IMMER programmieren kannst, aber bei AVR sägst Du Dir den Ast ab, 
auf dem Du sitzt.

Also den !Reset-Pin niemals für was anderes verwenden als für Reset, es 
sei denn Du weißt genau, was Du machst, und es geht absolut nicht 
anders. Immerhin ist das ja bei Dir nicht nötig, Du hast noch freie 
Pins.

fchk

von Christian R. (cmrudolph)


Lesenswert?

Na toll. Das ist jetzt immerhin ein Schritt in die richtige Richtung.
Normalerweise versuche ich Doppelbelegungen für den ISP zu vermeiden, 
habe ihn aber verwendet, weil ich einen Timerausgang brauche. Naja. Der 
167er hat ja genügend Timerausgänge (Pin 17, OC1BV sollte funktionieren 
- nochmal das Datenblatt fragen).

Dann werd ich nochmal den Dremel anwerfen und die Verbindung kappen.
Ich hoffe das beste.

Vielen Dank für den Hinweis!

Edit: diese Leitung ist jetzt auch gekappt - keine Verbesserung.
War eigentlich ja auch klar, weil das ja nur dann eine Auswirkung hat, 
sobald man den ATtiny verfust.

: Bearbeitet durch User
von DB2ZN (Gast)


Lesenswert?

Betrifft :
Es sollte eigentlich alles korrekt gelötet sein (keine Kurzschlüsse oder
unterbrochene Verbindungen). => PlatineUnten.jpg/schaltplan.png

Atiny : Lötbrücke zwischen Pin9 und Pin10

von Frank K. (fchk)


Lesenswert?

Den 10k Pullup nach Vcc an !Reset hast Du? !Reset ist mit dem ISP 
verbunden?

fchk

von Christian R. (cmrudolph)


Lesenswert?

Es sieht tatsächlich so aus, als wäre da eine Lötbrücke zwischen Pin9 
und Pin10, ist allerdings (mit meinem Multimeter) nicht messbar. Ich 
habe den Zwischenraum nochmal gesäubert um außzuschließen, dass ich mich 
vielleicht doch vermessen habe. Allerdings ohne Erfolg.

Der 10k Pullup ist eingelötet - das ist der, der auf dem Foto der 
Platinenunterseite so auffällig hervorsteht.
Die Resetleitung habe ich auch vermessen (ebenso wie alle anderen 
Leitungen vom JP2 zum ATtiny).

: Bearbeitet durch User
von Christian R. (cmrudolph)


Lesenswert?

Welche Möglichkeiten gibt es, um festzustellen, ob der Mikrocontroller 
defekt ist?
Oder könnte es an zerstörten Abblockkondensatoren liegen?
Könnte es helfen, über Debugwire zu programmieren?

von Frank D. (Firma: Spezialeinheit) (feuerstein7)


Lesenswert?

Christian Rudolph schrieb:
> - den ganzen Dreck, den das Austauschen vom ATtiny hinterlassen hat

Wenn du den getauscht hast, kannst du ja mal versuchen den getauschten 
ausserhalb deiner Schaltung zu brennen.

von Georg G. (df2au)


Lesenswert?

Noch mal: Wenn du den Reset Pin einmal anders nutzt, sperrst du dich 
vom ISP aus. Da hilft auch kein Pullup oder Trennen der Leitung. Du 
musst per HV Programmierung erst den Reset Pin wieder zum Reset 
erklären.

von Christian R. (cmrudolph)


Lesenswert?

Fred Feuerstein schrieb:
> Wenn du den getauscht hast, kannst du ja mal versuchen den getauschten
> ausserhalb deiner Schaltung zu brennen.

Der ist dabei leider gestorben, ich habe aber noch weitere baugleiche 
µC. Dank SMD ist es aber leider nicht so einfach, das mal eben auf einem 
Breadboard zusammenzustecken.

> Noch mal: Wenn du den Reset Pin einmal anders nutzt, sperrst du dich
> vom ISP aus. Da hilft auch kein Pullup oder Trennen der Leitung.

Ich habe den Reset Pin bisher ja noch gar nicht genutzt, weil ich den µC 
nicht programmieren konnte. Dass der mit einem Inputpin von einem 
anderen IC verbunden ist, ist vorerst doch irrelevant, oder?

von Sebastian W. (wangnick)


Lesenswert?

Hallo Christian,

sind durch die ehemaligen Verbindung mit dem TLC5940 beim Anschluss des 
AVRISP mkII vielleicht so seltsame Opcodes entstanden, dass der Attiny 
jetzt verfused ist?

Ich hatte auch mal einen Attiny der über ISP einfach nicht mehr 
ansprechbar war, obwohl ich meinte nie nicht keine bösen Fuses gesetzt 
zu haben. Den konnte ich dann über HV-Programmierung wieder 
reaktivieren.

Ist die Versorgungsspannung garantiert stabil?

Du benutzt im Atmel Studio Tools->Device Programming, oder?

LG, Sebastian

von Christian R. (cmrudolph)


Lesenswert?

Sebastian Wangnick schrieb:
> Hallo Christian,
>
> sind durch die ehemaligen Verbindung mit dem TLC5940 beim Anschluss des
> AVRISP mkII vielleicht so seltsame Opcodes entstanden, dass der Attiny
> jetzt verfused ist?

Eigentlich kann ich mir das nicht vorstellen. Die Pins, die mit am ISP 
Connector hängen, sind abgesehen vom MISO Pin alles Inputpins. Und am 
MISO kamen dann wohl "durchgeschobene" Daten vom TLC an, was zwar zu 
einem Kommunikationsfehler, aber nicht zum verfusen führen kann.

> Ich hatte auch mal einen Attiny der über ISP einfach nicht mehr
> ansprechbar war, obwohl ich meinte nie nicht keine bösen Fuses gesetzt
> zu haben. Den konnte ich dann über HV-Programmierung wieder
> reaktivieren.

Noch habe ich drei fabrikneue Tinys, davon werde ich nachher 
wahrscheinlich einen opfern und auf eine minimalistische Platine mit ISP 
und Abblockkondensatoren setzen.

> Ist die Versorgungsspannung garantiert stabil?
Garantieren kann ich es nicht. Ich habe auf einer anderen Platine einen 
Spannungsregler (LM 2940 CT5), allerdings ist der recht weit entfernt. 
Ich habe das Board mit etwa 30cm Steuerlitze (0,14mm² Leiterdurchmesser) 
angebunden, aber keinen größeren Kondensator auf dem Board mit dem Tiny 
selbst. Da könnte ich nochmal einen ergänzen.

> Du benutzt im Atmel Studio Tools->Device Programming, oder?
Genau.

Vielen Dank und LG
Christian

von Frank K. (fchk)


Lesenswert?

Christian Rudolph schrieb:

> Ich habe den Reset Pin bisher ja noch gar nicht genutzt, weil ich den µC
> nicht programmieren konnte. Dass der mit einem Inputpin von einem
> anderen IC verbunden ist, ist vorerst doch irrelevant, oder?

Nein. Du kannst den RESET-Pin für Überhaupt rein gar nichts außer für 
Reset benutzen. Es sei denn, Du setzt die Fuse, und dann ist es kein 
Reset mehr, und Du kannst nicht mehr programmieren.

fchk

von Christian R. (cmrudolph)


Lesenswert?

Frank K. schrieb:
> Nein. Du kannst den RESET-Pin für Überhaupt rein gar nichts außer für
> Reset benutzen. Es sei denn, Du setzt die Fuse, und dann ist es kein
> Reset mehr, und Du kannst nicht mehr programmieren.

Ok, dass ich den Reset Pin nicht nutzen kann, ist mir mittlerweile klar. 
Aber es erschließt sich mir noch nicht, weshalb sich der ATtiny bei 
Beschaltung des Reset Pin auf einen Inputpin danach nicht mehr 
programmieren lassen soll.

---

Ich habe auf der Platine jetzt direkt an den JP1 einen 470µF Elko 
gelötet, damit sollte die Spannung wohl stabil sein. Das hat allerdings 
auch nicht geholfen.

Der nächste Schritt ist jetzt, die oben beschriebene Minimalbeschaltung 
eines ATtiny vorzunehmen. Außer, es hat noch jemand einen Einfall, wo 
die Problemursache liegen kann.

Vielen Dank
Christian

von Dietrich L. (dietrichl)


Lesenswert?

@Christian Rudolph:

Mal was ganz Anderes:
- ist Dein Programmer ein original Atmel AVRISP mkII ?
- und ganz wichtig: wie wird Schaltung versorgt?

Gruß Dietrich

von Christian R. (cmrudolph)


Angehängte Dateien:

Lesenswert?

Ja, es ist ein original AVRISP mkII.

Die Spannungsversorgung erfolgt mit einem LM2940 CT5, davor hängt ein 
billiges Steckernetzteil ( 
http://www.reichelt.de/Universalnetzteile/MW-3N06GS/3/index.html?&ACTION=3&LA=2&ARTICLE=87338&GROUPID=4945&artnr=MW+3N06GS 
), welches auf 7,5V eingestellt ist.
Auf der "Hauptplatine" ist eine Pfostenleiste, an welcher die TWI 
Leitungen sowie GND und Vcc liegen. Mit vieradriger Steuerleitung (ca 
30cm lang, 0,14mm² Querschnitt 
http://www.reichelt.de/Steuerleitung/LIYY-414-25/3/index.html?&ACTION=3&LA=446&ARTICLE=10367&GROUPID=3326&artnr=LIYY+414-25 
), an welcher Buchsenleisten stecken, gehe ich auf meine 
Erweiterungsplatine. Diese Platine ist oben als Foto abgebildet.

von Dietrich L. (dietrichl)


Lesenswert?

Christian Rudolph schrieb:
> Die Spannungsversorgung erfolgt mit einem LM2940

Das ist ein Low-Drop Regler, und die schwingen gerne. Hast Du einen Oszi 
zur Kontrolle, dass er nicht schwingt? Ggf. geht auch ein Multimeter mit 
"echtem" AC-Bereich.
Wie unwahrscheinlich das auch immer sein möge - man sollte es jedenfalls 
ausschließen.

Gruß Dietrich

: Bearbeitet durch User
von Christian R. (cmrudolph)


Angehängte Dateien:

Lesenswert?

Ich habe leider (noch) kein Oszilloskop, daher kann ich das nicht 
nachmessen. Allerdings beginnt ja der Spannungsregler zu schwingen. Der 
befindet sich auf der "Hauptplatine", dessen Mikrocontroller lässt sich 
einwandfrei programmieren und die Schaltung funktioniert auch.

Was meinst du mit "echtem AC Bereich"? Ich habe dieses Multimeter:
http://www.uni-trend.com/UT61D.html

Ich habe jetzt mal eine Miniplatine geätzt und werde sie gleich 
bestücken. Ich hoffe, dass ich damit die ATtiny's programmieren kann.

Die Schaltung davon habe ich mal angehängt.

: Bearbeitet durch User
von Georg G. (df2au)


Lesenswert?

Da du den Kondensator am Reset Eingang sowieso nicht angelötet hast, 
lässt du ihn besser weg. Dein Programmer möchte mit dem Pin recht 
hochfrequent spielen.

von Dietrich L. (dietrichl)


Lesenswert?

Christian Rudolph schrieb:
> Was meinst du mit "echtem AC Bereich"?

Der AC-Bereich hat einen Koppelkondensator, der Gleichanteile nicht 
anzeigt. Test: Messung an einer Batterie zeigt 0 an.

> Ich habe dieses Multimeter: http://www.uni-trend.com/UT61D.html

Wie das arbeitet, weiß ich nicht. Aber Du kannst es ja testen (s.o.).

Eine letzte Unsicherheit bei Messung mit dem Multimeter wäre noch, bis 
zu welcher (Schwing-) Frequenz das Gerät noch vernünftig messen kann.

Gruß Dietrich

von Christian R. (cmrudolph)


Lesenswert?

Ich habe meine ISP Schaltung jetzt fertiggestellt, und sie funktioniert 
ebenfalls nicht. Den 47nF Kondensator an Reset habe ich weggelassen.
Kann es am ATtiny liegen? Der 167er ist ja nicht sonderlich gängig, gibt 
es dabei vielleicht noch irgendwelche Sachen zu beachten?

Mein Multimeter zeigt im AC Modus sowohl an einer Batterie als auch an 
meiner Schaltun ca. 0,005V an, es scheint also einen "echten" AC Bereich 
zu haben und in meiner Schaltung nichts zu schwingen.

von Christian R. (cmrudolph)


Lesenswert?

Ich habe mir jetzt nochmal das Datenblatt des ATtiny angesehen: 
http://www.atmel.com/Images/doc8265.pdf

Dort steht bei den Fuses (Seite 225):
SPIEN: Enable Serial Program and Data Downloading. Default: 0 
(programmed, SPI programming enabled)

In der Fußnote zu SPIEN steht: "The SPIEN Fuse is not accessible in 
serial programming mode."

Das finde ich etwas verwirrend. SPIEN ist standardmäßig auf 0. Bedeutet 
das nun, dass ich nicht per SPI programmieren kann, bis ich die Fuse auf 
1 gesetzt habe? In der Klammer steht aber "SPI programming enabled"...

von Sebastian W. (wangnick)


Lesenswert?

Das ist ja wohl zum Mäusemelken!

Probier mal den Attiny über USB 5V zu versorgen.

LG, Sebastian

Christian Rudolph schrieb:
> Das finde ich etwas verwirrend. SPIEN ist standardmäßig auf 0. Bedeutet
> das nun, dass ich nicht per SPI programmieren kann, bis ich die Fuse auf
> 1 gesetzt habe? In der Klammer steht aber "SPI programming enabled"...

Nein, das ist es nicht. Fuses aktivieren ihre Funktion wenn man sie auf 
0 setzt (= programmiert).

: Bearbeitet durch User
von Christian R. (cmrudolph)


Lesenswert?

Sebastian Wangnick schrieb:
> Das ist ja wohl zum Mäusemelken!

Das sehe ich auch so ;-)

> Probier mal den Attiny über USB 5V zu versorgen.
Ich habe zwar schon verschiedene Spannungsquellen versucht, aber ich 
werde mal sehen, ob ich einen alten USB Hub finde und aus einem alten 
USB Kabel die 5V abgreifen kann.

Ok, dann verstehe ich jetzt auch die Klammern hinter den Angaben (stand 
überall unprogrammed, ich dachte erst, das bezieht sich auf einen 
unprogrammierten µC).

: Bearbeitet durch User
von Frank D. (Firma: Spezialeinheit) (feuerstein7)


Lesenswert?

Christian Rudolph schrieb:
> Ich habe jetzt mal eine Miniplatine geätzt und werde sie gleich
> bestücken.
Du kannst doch Drähte direkt an den Chip löten, dafür braucht es doch 
keine Leiterplatte. Ich sag dass nur deshalb, da in dem oberen Layout 
die Massefläche unter dem IC verdammt nah an die Anschlüsse kommt, 
vieleicht hast du da ein Kurzschluß.

von Christian R. (cmrudolph)


Lesenswert?

Fred Feuerstein schrieb:
> Du kannst doch Drähte direkt an den Chip löten, dafür braucht es doch
> keine Leiterplatte. Ich sag dass nur deshalb, da in dem oberen Layout
> die Massefläche unter dem IC verdammt nah an die Anschlüsse kommt,
> vieleicht hast du da ein Kurzschluß.

Das hatte ich auch schon versucht, allerdings ohne die 
Abblockkondensatoren, weil das ansonsten fliegend verdrahtet an dem SMD 
Baustein schon recht viel wird.
100%ig ausschließen kann ich einen Kurzschluss nicht, allerdings habe 
ich sämtliche Pins mit Masse und alle nebeneinander liegende 
Leiterbahnen miteinander auf Kurzschluss vermessen.

Testweise hatte ich auch eine Low Current LED an MISO, MOSI und SCK vom 
ISP gelötet. Beim Versuch zu programmieren hat die LED an MOSI und SCK 
kurz geblinkt, an MISO gab es keine sichtbare Reaktion.
Das habe ich so interpretiert, dass der Programmer versucht den µC 
"anzusprechen", dieser aber nicht geantwortet hat.

von Michael G. (uska1)


Lesenswert?

@Christian Rudolph:
Sagt dir dookie was ?

von Christian R. (cmrudolph)


Lesenswert?

Nein, dookie sagt mir nichts. Kurzes googlen führt zu einem Musikalbum.

von Christian R. (cmrudolph)


Lesenswert?

Ich messe zwischen dem Reset Pin und GND einen Widerstand von 30MOhm, 
ebenso zwischen Pin 15 (Vcc) und GND. Das ist aber wahrscheinlich 
normal, oder?

Hat jemand noch Ideen, wie ich das Problem weiter analysieren kann? 
Vielleicht auch erstmal unabhängig vom vorhandenen Equipment?

von Sebastian W. (wangnick)


Lesenswert?

Hallo Christian,

hast du es inzwischen mal mit einer anderen Spannungsversorgung 
probiert? Und schlägt das Programmieren mehrerer deiner Attiny167 
fehl?

LG, Sebastian

von Christian R. (cmrudolph)


Lesenswert?

Hi,

ich habe leider noch nicht einen einzigen ATtiny167 programmiert 
bekommen.
An eine USB-Spannungsversorgung werde ich mich heute Abend setzen.

Ich habe die µC über Aliexpress bei SICStock (hat eigentlich 
verhältnismäßig gute Bewertungen) gekauft. Die Controller sehen für mich 
authentisch aus, haben auch fortlaufende Seriennummern. Könnte es 
trotzdem ein Fake sein?


Außerdem überlege ich mir, ob ich mir einen AVR Dragon zulege und einen 
Versuch per High Voltage Programmierung unternehme. Könnte das zum Ziel 
führen?

Vielen Dank für die Geduld und Hilfe!

LG
Christian

von Christian R. (cmrudolph)


Lesenswert?

Gerade habe ich noch einmal eine USB-Schnittstelle als Spannungsquelle 
verwendet, der ATtiny lässt sich trotzdem nicht programmieren.

von Sebastian W. (wangnick)


Lesenswert?

Käse. Kommst du aus der Nähe von Aachen?

LG, Sebastian

von Frank K. (fchk)


Lesenswert?

Christian Rudolph schrieb:
> Hi,
>
> ich habe leider noch nicht einen einzigen ATtiny167 programmiert
> bekommen.
> An eine USB-Spannungsversorgung werde ich mich heute Abend setzen.
>
> Ich habe die µC über Aliexpress bei SICStock (hat eigentlich
> verhältnismäßig gute Bewertungen) gekauft. Die Controller sehen für mich
> authentisch aus, haben auch fortlaufende Seriennummern. Könnte es
> trotzdem ein Fake sein?

Klar, ausschließen kann man das nicht. Besorg Dir doch mal welche von 
Mouser oder Digikey, da solltest zu ziemlich sicher Originalware 
bekommen.

fchk

von Christian R. (cmrudolph)


Lesenswert?

@Sebastian: ich komme nicht aus der Gegend von Aachen, es sind über 
400km von hier ;-)

@fchk: bei Mouser und Digikey hatte ich die µC auch gefunden, allerdings 
sind die Versandkosten mit 18 bzw. 20 Euro recht happig - zumal der µC 
keine 2 Euro kostet. Gibt es keine Möglichkeit dort Versandkosten zu 
sparen (außer den Warenwert über 60 Euro zu bringen)?

von Christian R. (cmrudolph)


Lesenswert?

Ich habe mir heute einen AVR Dragon zugelegt. Im ISP Modus konnte ich 
(wie zu erwarten) nicht programmieren.
Morgen werde ich dann versuchen, das Pinout für HVPP herauszubekommen - 
in der Onlinehilfe steht das für den ATtiny167 leider nicht.
Hat jemand Tipps, wo ich dazu Hinweise finde?
Angeblich soll das Pinout des HVP Headers dem vom ATtiny2313 
entsprechen.
Quelle:
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=1081501

von Frank K. (fchk)


Lesenswert?

Christian Rudolph schrieb:
> @Sebastian: ich komme nicht aus der Gegend von Aachen, es sind über
> 400km von hier ;-)

sag mal ne PLZ, kann auch eine partielle sein

> @fchk: bei Mouser und Digikey hatte ich die µC auch gefunden, allerdings
> sind die Versandkosten mit 18 bzw. 20 Euro recht happig - zumal der µC
> keine 2 Euro kostet. Gibt es keine Möglichkeit dort Versandkosten zu
> sparen (außer den Warenwert über 60 Euro zu bringen)?

RS berechnet 6.90€ Versandkosten, im 10'er Pack kosten die Teile 1.35 
netto und sind verfügbar.

fchk

von Sebastian W. (wangnick)


Lesenswert?

Christian Rudolph schrieb:
> Morgen werde ich dann versuchen, das Pinout für HVPP herauszubekommen -
> in der Onlinehilfe steht das für den ATtiny167 leider nicht.
> Hat jemand Tipps, wo ich dazu Hinweise finde?
> Angeblich soll das Pinout des HVP Headers dem vom ATtiny2313
> entsprechen.

Das Pin-In für HVPP steht im Datenblatt des Attiny167 (Figure 21-1, 
Parallel programming). Du brauchst anscheinend 19 Strippen, plus 
eventuell  AGND (?)

Das Pin-Out der HV-Pins des Dragon steht in der Onlinehilfe vom Atmel 
Studio oder under 
http://support.atmel.no/knowledgebase/avrstudiohelp/mergedProjects/AVRDragon/AVRDragon_PP_Description.htm.

Mann muss glaube ich auch noch auf dem Dragon einen der +5V Vcc-Ausgänge 
mit dem Vsense-Eingang vom JTAG oder ISP-Header verbinden.

Good luck.

LG, Sebastian

: Bearbeitet durch User
von Christian R. (cmrudolph)


Lesenswert?

Frank K. schrieb:
> sag mal ne PLZ, kann auch eine partielle sein
Niedersachsen, in der Nähe von Oldenburg (hab es daher nicht soo weit zu 
Reichelt).

Frank K. schrieb:
> RS berechnet 6.90€ Versandkosten, im 10'er Pack kosten die Teile 1.35
> netto und sind verfügbar.
Super Tipp, da hatte ich noch nicht gesucht. Falls der Versuch mit HVPP 
heute fehlschlagen sollte, werde ich dort noch welche ordern.

Sebastian Wangnick schrieb:
> Das Pin-In für HVPP steht im Datenblatt des Attiny167 (Figure 21-1,
> Parallel programming). Du brauchst anscheinend 19 Strippen, plus
> eventuell  AGND (?)
Das ist mir jetzt schon fast peinlich, dass du das für mich nachgesehen 
hast. Gestern bin ich einfach nicht mehr dazu gekommen, das Datenblatt 
nochmal zu durchforsten.
Zusammen mit der Information, die ich bei den avrfreaks gefunden habe, 
werde ich das dann wohl hinbekommen.
In der Onlinehilfe im Atmel Studio zum Dragon steht für die "gängigen" 
µC eine Verkabelungsanleitung, dort sieht man auch, wie Vcc mit dem JTAG 
Header verbunden werden muss.

Vielen Dank
Christian

von Frank K. (fchk)


Lesenswert?

Christian Rudolph schrieb:
> Frank K. schrieb:
>> sag mal ne PLZ, kann auch eine partielle sein
> Niedersachsen, in der Nähe von Oldenburg (hab es daher nicht soo weit zu
> Reichelt).

Ah. Also andere Weserseite von mir aus (OHZ) gesehen.

> Frank K. schrieb:
>> RS berechnet 6.90€ Versandkosten, im 10'er Pack kosten die Teile 1.35
>> netto und sind verfügbar.
> Super Tipp, da hatte ich noch nicht gesucht. Falls der Versuch mit HVPP
> heute fehlschlagen sollte, werde ich dort noch welche ordern.

Ich hätte hier ansonsten noch ein STK500 rumliegen.

fchk

von Christian R. (cmrudolph)


Angehängte Dateien:

Lesenswert?

Ich habe nicht wirklich dran geglaubt, aber mit HVPP funktioniert es!
Woran es lag, dass es über ISP nicht funktioniert, kann ich nicht sagen.
Ich habe mal zwei Screenshots vom Erfolg hochgeladen :-)

Edit: habe noch nicht ins Datenblatt gesehen, aber EXTCLK_6CK_14CK_0MS 
scheint nicht zu passen. Eigentlich hätte da wohl eher INTRCOSC_XXX 
stehen müssen.
Vielleicht hilft es dann ja, wenn ich einen Quarzoszillator anschließe, 
um den Baustein korrekt zu fusen.

: Bearbeitet durch User
von Paul B. (paul_baumann)


Lesenswert?

Vielleicht standen die Fuse-Bits auf irgendwelchem Mumpitz. Das habe ich
schon ein paar Mal erlebt.

Ich habe mir dann ein solches Gerät gebaut:
http://mdiy.pl/atmega-fusebit-doctor-hvpp/

Damit wird erst mal alles neu Gekaufte an Kontrollern "behandelt"
Somit haben die Kollegen dann den eigentlichen Auslieferungszustand
und ich muß mir nicht die Schwindsucht an den Hals ärgern.
;-)
MfG Paul

von Christian R. (cmrudolph)


Lesenswert?

Paul Baumann schrieb:
> Vielleicht standen die Fuse-Bits auf irgendwelchem Mumpitz.

Genau so war es. Ich habe mit HVPP den internen Oszillator aktiviert und 
jetzt kann ich per ISP auf den µC zugreifen.

Den µC per HVPP zu programmieren hat ziemlich viel Löterei mit 
fliegenden Drähten erfordert, was ich bei meiner fertigen Platine 
vermeiden möchte. (Die Screenshots stammen von dem µC, den ich auf die 
kleine ISP-Platine gelötet habe. Den µC um den es mir geht, der auch auf 
den Fotos zu sehen ist, muss ich noch umfusen.)
Ich plane jetzt folgendes Vorgehen: ich werde den Quarzkristall von der 
fertigen Platine entfernen. Dann möchte ich einen externen 
Quarzoszillator anschließen, umfusen und den Quarzkristall wieder 
auflöten.
Stören die angelöteten 22pF Kondensatoren, wenn ich an XTAL1/2 den 
Oszillator anschließe?

Edit:

Paul Baumann schrieb:
> Ich habe mir dann ein solches Gerät gebaut:
> http://mdiy.pl/atmega-fusebit-doctor-hvpp/
Das ist ziemlich nützlich, hätte mir in diesem Fall aber wahrscheinlich 
so ohne weiteres auch nicht geholfen, weil es ja ein SMD Baustein ist.

: Bearbeitet durch User
von Paul Baumann (Gast)


Lesenswert?

Christian schrub:
>Stören die angelöteten 22pF Kondensatoren, wenn ich an XTAL1/2 den
>Oszillator anschließe?

Wahrscheinlich "staucht" der Kondensator das Signal. (kapazitiver 
Scheinwiderstand Xc), aber der Versuch macht kluch.

>Das ist ziemlich nützlich, hätte mir in diesem Fall aber wahrscheinlich
>so ohne weiteres auch nicht geholfen, weil es ja ein SMD Baustein ist.

Ja, gut -ich bin ein großer Fan von DIL-Schaltkreisen, aber habe mir
auch Adapter angeferigt, wo ich SMD-Kontroller mit einer kleinen Leim-
zwinge aus dem Modellbau nur auf die Kontakte presse und kann dann
so auch auf solche Kollegen zugreifen.

MfG Paul

von Frank K. (fchk)


Lesenswert?

Christian Rudolph schrieb:

> Ich plane jetzt folgendes Vorgehen: ich werde den Quarzkristall von der
> fertigen Platine entfernen. Dann möchte ich einen externen
> Quarzoszillator anschließen, umfusen und den Quarzkristall wieder
> auflöten.

Denke an das HV in HVPP! An !RESET werden 12V angelegt, um den Baustein 
in diesen Modus zu bringen. Die 12V sollten nirgendwo hinkommen, wo sie 
Schaden anrichten können. Bei PIC10/12/16, wo High Voltage Programming 
die Regel ist, setzen mache Leute eine Diode zwischen 5V und den Pullup 
an !MCLR (==!Reset). PS: Mit PICs wäre Dir das im Übrigen nicht 
passiert. ICSP funktioniert dort immer, egal wie die Config Words 
(==Fuses) dort stehen, und unabhängig von einem externen Taktgenerator, 
und über ICSP kann man auch debuggen (Einzelschritt, Speicher anschauen 
etc).

> Stören die angelöteten 22pF Kondensatoren, wenn ich an XTAL1/2 den
> Oszillator anschließe?

Das sollte so gehen.

fchk

PS: Es gibt Nullkraftsockel für SOIC. Sind zwar recht teuer, aber Du 
brauchst ja nur einen von der Sorte.

http://de.farnell.com/3m/220-7201-55-1902/sockel-ic-soic-zif-20polig/dp/9897518

: Bearbeitet durch User
von Christian R. (cmrudolph)


Lesenswert?

Frank K. schrieb:
> Denke an das HV in HVPP!

Die Resetleitung hatte ich ja mittlerweile durchtrennt, daher kann 
nichts passieren, wenn daran 12V anliegen.
Mit dem externen Quarzoszillator möchte ich ja nur vermeiden, HVPP 
machen zu müssen, um die Fuse zu korrigieren. Dadurch sollte dann auch 
der ISP ordnungsgemäß funktionieren.

Frank K. schrieb:
> Das sollte so gehen.

Dann werde ich das mal ausprobieren.

Paul Baumann schrieb:
> Ja, gut -ich bin ein großer Fan von DIL-Schaltkreisen, aber habe mir
> auch Adapter angeferigt, wo ich SMD-Kontroller mit einer kleinen Leim-
> zwinge aus dem Modellbau nur auf die Kontakte presse und kann dann
> so auch auf solche Kollegen zugreifen.

Eigentlich verbaue ich auch nur THT Bauteile, aber den ATtiny167 gibt es 
ja leider nur in SMD. Abgesehen von der Fusekatastrophe ließ sich der 
Baustein aber erstaunlich gut verarbeiten.

Frank K. schrieb:
> PS: Es gibt Nullkraftsockel für SOIC. Sind zwar recht teuer, aber Du
> brauchst ja nur einen von der Sorte.

Das lohnt sich in meinem Fall nicht sonderlich. Abgesehen von diesem 
Projekt habe ich bisher noch kein SMD verarbeitet.

: Bearbeitet durch User
von Christian R. (cmrudolph)


Lesenswert?

Mit dem externen Quarzoszillator hat es funktioniert. Ich bin genau wie 
oben beschrieben vorgegangen. Der ISP funktioniert auch ohne 10k Pullup 
an RESET.

Die durchtrennten Brücken habe ich auch wieder eingelötet - 
problematisch ist nur noch die Leitung von Pin 19 an den TLC (die, die 
vorher von RESET an den TLC ging). Aber das bekomme ich auch noch hin 
;-) Ein wenig Platz ist vor dem Pin ja noch, um eine "Via" zu bohren und 
auf der anderen Seite dann irgendwie(TM) zur durchtrennten Leiterbahn zu 
gelangen.

Also an alle noch einmal ein herzliches Danke!

LG
Christian

von Frank K. (fchk)


Lesenswert?

Christian Rudolph schrieb:
> Mit dem externen Quarzoszillator hat es funktioniert. Ich bin genau wie
> oben beschrieben vorgegangen. Der ISP funktioniert auch ohne 10k Pullup
> an RESET.
>
> Die durchtrennten Brücken habe ich auch wieder eingelötet -
> problematisch ist nur noch die Leitung von Pin 19 an den TLC (die, die
> vorher von RESET an den TLC ging). Aber das bekomme ich auch noch hin
> ;-) Ein wenig Platz ist vor dem Pin ja noch, um eine "Via" zu bohren und
> auf der anderen Seite dann irgendwie(TM) zur durchtrennten Leiterbahn zu
> gelangen.

Du bist lernresistent oder sogar lernrenitent. Du solltest den Reset-Pin 
für nix anderes benutzen als für Reset. Sonst bist Du beim nächsten 
Update wieder beim Rumhantieren mit HVPP.

fchk

von Christian R. (cmrudolph)


Lesenswert?

Frank K. schrieb:
> Du bist lernresistent oder sogar lernrenitent. Du solltest den Reset-Pin
> für nix anderes benutzen als für Reset. Sonst bist Du beim nächsten
> Update wieder beim Rumhantieren mit HVPP.

Bevor du mich beleidigst, solltest du lesen, was ich geschrieben habe... 
Ich habe geschrieben, dass ich jetzt noch die Leitung vom Pin 19 dorthin 
führen muss, wo VORHER der RESET hingeführt hat.

Grüße

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.