Forum: Mikrocontroller und Digitale Elektronik ATmega88PA-PU, Diamex USB-ISP und avrdude


von Malte M. (mmalte)


Lesenswert?

Hallo allerseits,

ich steh gerade ganz am Anfang und probiere, avrdude über den DIAMEX 
USB-ISP (avr-programmer.com/usb-isp) mit dem ATmega88PA sprechen zu 
lassen.

Aufbau ist wie im AVR-Tutorial inklusive 4-MHz-Quarzoszillator, dabei 
habe ich auch auf die Pin-Belegung geachtet und dafür im Datenblatt 
nachgeschaut (da das Tutorial ja mit nem ATmega8 arbeitet).

Ich arbeite mit Linux Mint 17. Das erste Problem war, dass avrdude den 
ATmega88PA nicht kannte. Nach einer Suche im Forum hab ich aber 
herausgefunden, dass ich anscheinend einfach die Datei /etc/avrdude.conf 
erweitern muss:
1
part parent "m88" 
2
    id               = "m88pa";
3
    desc             = "ATmega88PA";
4
    signature        = 0x1e 0x93 0x0f; 
5
6
    ocdrev              = 1;
7
  ;

Danach habe ich avrdude wie folgt aufgerufen (der ISP hängt tatsächlich 
an /dev/ttyACM0 und spricht das Protokoll stk500v2, daran kanns also 
nicht liegen).
1
$ avrdude -P /dev/ttyACM0 -c stk500v2 -p m88pa -n
2
3
avrdude: stk500v2_command(): command failed
4
avrdude: initialization failed, rc=-1
5
         Double check connections and try again, or use -F to override
6
         this check.
7
8
9
avrdude done.  Thank you.
10
11
$ avrdude -P /dev/ttyACM0 -c stk500v2 -p m88pa -n -F
12
13
avrdude: stk500v2_command(): command failed
14
avrdude: initialization failed, rc=-1
15
avrdude: AVR device initialized and ready to accept instructions
16
avrdude: Device signature = 0xc857c2
17
avrdude: Expected signature for ATmega88PA is 1E 93 0F
18
19
avrdude done.  Thank you.

Das sieht schon merkwürdig aus: jedes Mal kommt eine andere Signatur 
zurück (die fängt immer mit c8 an, ist aber sonst anders).

Nach einiger Recherche habe ich zwei Vermutungen, was sein könnte:
1. Ich hab die Pin-Belegung vom ISP trotz mehrfachem Lesen falsch 
verstanden 
(http://avr-programmer.com/downloads/usb-isp/usb-isp_installation_de.pdf). 
Pin 1 ist da, wo ein kleiner Pfeil auf dem Stecker ist, oder? Und ich 
muss das ganze spiegelverkehrt nehmen, wenn ich auf den Stecker 
draufschaue?
2. Der ISP spricht zu schnell für den μC. Ich hab jetzt einiges über 
Fuses etc. gelesen, bin daraus aber nicht so recht schlau geworden. 
Außer, dass der Quarzoszillator vermutlich noch nicht verwendet wird. 
Jedenfalls hilft auch die avrdude-Option -B mit verschiedenen Werten (4, 
10, 16, …) nicht weiter.

Kann mir jemand helfen und sagen, ob an meinen Vermutungen was dran ist? 
Und ob das Problem vielleicht wo ganz anders liegt und was ich jetzt tun 
kann?

Viele Grüße,
Malte

von Malte M. (mmalte)


Lesenswert?

Der Vollständigkeit halber noch einmal eine Ausgabe mit -vvvv, die 
vielleicht anderen mehr sagt als mir:
1
$ avrdude -P /dev/ttyACM0 -c stk500v2 -p m88pa -n -F -vvvv
2
3
avrdude: Version 6.0.1, compiled on Oct 21 2013 at 15:55:32
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5
         Copyright (c) 2007-2009 Joerg Wunsch
6
7
         System wide configuration file is "/etc/avrdude.conf"
8
         User configuration file is "/home/malte/.avrduderc"
9
         User configuration file does not exist or is not a regular file, skipping
10
11
         Using Port                    : /dev/ttyACM0
12
         Using Programmer              : stk500v2
13
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14] 
14
avrdude: Recv: . [1b] 
15
avrdude: Recv: . [01] 
16
avrdude: Recv: . [00] 
17
avrdude: Recv: . [0b] 
18
avrdude: Recv: . [0e] 
19
avrdude: Recv: . [01] 
20
avrdude: Recv: . [00] 
21
avrdude: Recv: . [08] 
22
avrdude: Recv: S [53] 
23
avrdude: Recv: T [54] 
24
avrdude: Recv: K [4b] 
25
avrdude: Recv: 5 [35] 
26
avrdude: Recv: 0 [30] 
27
avrdude: Recv: 0 [30] 
28
avrdude: Recv: _ [5f] 
29
avrdude: Recv: 2 [32] 
30
avrdude: Recv: . [02] 
31
avrdude: stk500v2_getsync(): found STK500 programmer
32
         AVR Part                      : ATmega88PA
33
         Chip Erase delay              : 9000 us
34
         PAGEL                         : PD7
35
         BS2                           : PC2
36
         RESET disposition             : dedicated
37
         RETRY pulse                   : SCK
38
         serial program mode           : yes
39
         parallel program mode         : yes
40
         Timeout                       : 200
41
         StabDelay                     : 100
42
         CmdexeDelay                   : 25
43
         SyncLoops                     : 32
44
         ByteDelay                     : 0
45
         PollIndex                     : 3
46
         PollValue                     : 0x53
47
         Memory Detail                 :
48
49
                                  Block Poll               Page                       Polled
50
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
51
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
52
           eeprom        65    20     4    0 no        512    4      0  3600  3600 0xff 0xff
53
                                  Block Poll               Page                       Polled
54
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
55
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
56
           flash         65     6    64    0 yes      8192   64    128  4500  4500 0xff 0xff
57
                                  Block Poll               Page                       Polled
58
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
59
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
60
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
61
                                  Block Poll               Page                       Polled
62
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
63
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
64
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
65
                                  Block Poll               Page                       Polled
66
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
67
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
68
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
69
                                  Block Poll               Page                       Polled
70
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
71
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
72
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
73
                                  Block Poll               Page                       Polled
74
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
75
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
76
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
77
                                  Block Poll               Page                       Polled
78
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
79
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
80
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
81
82
         Programmer Type : STK500V2
83
         Description     : Atmel STK500 Version 2.x firmware
84
         Programmer Model: STK500
85
avrdude: Send: . [1b] . [02] . [00] . [02] . [0e] . [03] . [90] . [86] 
86
avrdude: Recv: . [1b] 
87
avrdude: Recv: . [02] 
88
avrdude: Recv: . [00] 
89
avrdude: Recv: . [03] 
90
avrdude: Recv: . [0e] 
91
avrdude: Recv: . [03] 
92
avrdude: Recv: . [00] 
93
avrdude: Recv: . [0a] 
94
avrdude: Recv: . [1d] 
95
avrdude: Send: . [1b] . [03] . [00] . [02] . [0e] . [03] . [91] . [86] 
96
avrdude: Recv: . [1b] 
97
avrdude: Recv: . [03] 
98
avrdude: Recv: . [00] 
99
avrdude: Recv: . [03] 
100
avrdude: Recv: . [0e] 
101
avrdude: Recv: . [03] 
102
avrdude: Recv: . [00] 
103
avrdude: Recv: . [02] 
104
avrdude: Recv: . [14] 
105
avrdude: Send: . [1b] . [04] . [00] . [02] . [0e] . [03] . [92] . [82] 
106
avrdude: Recv: . [1b] 
107
avrdude: Recv: . [04] 
108
avrdude: Recv: . [00] 
109
avrdude: Recv: . [03] 
110
avrdude: Recv: . [0e] 
111
avrdude: Recv: . [03] 
112
avrdude: Recv: . [00] 
113
avrdude: Recv: . [0a] 
114
avrdude: Recv: . [1b] 
115
         Hardware Version: 10
116
         Firmware Version Master : 2.10
117
avrdude: Send: . [1b] . [05] . [00] . [02] . [0e] . [03] . [9a] . [8b] 
118
avrdude: Recv: . [1b] 
119
avrdude: Recv: . [05] 
120
avrdude: Recv: . [00] 
121
avrdude: Recv: . [02] 
122
avrdude: Recv: . [0e] 
123
avrdude: Recv: . [03] 
124
avrdude: Recv: . [c0] 
125
avrdude: Recv: . [d1] 
126
avrdude: stk500v2_command(): command failed
127
avrdude: stk500v2_getparm(): failed to get parameter 0x9a
128
         Topcard         : Unknown
129
avrdude: Send: . [1b] . [06] . [00] . [02] . [0e] . [03] . [94] . [86] 
130
avrdude: Recv: . [1b] 
131
avrdude: Recv: . [06] 
132
avrdude: Recv: . [00] 
133
avrdude: Recv: . [03] 
134
avrdude: Recv: . [0e] 
135
avrdude: Recv: . [03] 
136
avrdude: Recv: . [00] 
137
avrdude: Recv: 2 [32] 
138
avrdude: Recv: ! [21] 
139
         Vtarget         : 5.0 V
140
avrdude: Send: . [1b] . [07] . [00] . [02] . [0e] . [03] . [98] . [8b] 
141
avrdude: Recv: . [1b] 
142
avrdude: Recv: . [07] 
143
avrdude: Recv: . [00] 
144
avrdude: Recv: . [03] 
145
avrdude: Recv: . [0e] 
146
avrdude: Recv: . [03] 
147
avrdude: Recv: . [00] 
148
avrdude: Recv: . [03] 
149
avrdude: Recv: . [11] 
150
avrdude: Send: . [1b] . [08] . [00] . [02] . [0e] . [03] . [95] . [89] 
151
avrdude: Recv: . [1b] 
152
avrdude: Recv: . [08] 
153
avrdude: Recv: . [00] 
154
avrdude: Recv: . [03] 
155
avrdude: Recv: . [0e] 
156
avrdude: Recv: . [03] 
157
avrdude: Recv: . [00] 
158
avrdude: Recv: 2 [32] 
159
avrdude: Recv: / [2f] 
160
avrdude: Send: . [1b] . [09] . [00] . [02] . [0e] . [03] . [96] . [8b] 
161
avrdude: Recv: . [1b] 
162
avrdude: Recv: . [09] 
163
avrdude: Recv: . [00] 
164
avrdude: Recv: . [03] 
165
avrdude: Recv: . [0e] 
166
avrdude: Recv: . [03] 
167
avrdude: Recv: . [00] 
168
avrdude: Recv: . [00] 
169
avrdude: Recv: . [1c] 
170
avrdude: Send: . [1b] . [0a] . [00] . [02] . [0e] . [03] . [97] . [89] 
171
avrdude: Recv: . [1b] 
172
avrdude: Recv: . [0a] 
173
avrdude: Recv: . [00] 
174
avrdude: Recv: . [03] 
175
avrdude: Recv: . [0e] 
176
avrdude: Recv: . [03] 
177
avrdude: Recv: . [00] 
178
avrdude: Recv: . [00] 
179
avrdude: Recv: . [1f] 
180
         SCK period      : 17.4 us
181
         Varef           : 5.0 V
182
         Oscillator      : Off
183
184
avrdude: Send: . [1b] . [0b] . [00] . [03] . [0e] . [02] . [9e] . [01] . [80] 
185
avrdude: Recv: . [1b] 
186
avrdude: Recv: . [0b] 
187
avrdude: Recv: . [00] 
188
avrdude: Recv: . [02] 
189
avrdude: Recv: . [0e] 
190
avrdude: Recv: . [02] 
191
avrdude: Recv: . [00] 
192
avrdude: Recv: . [1e] 
193
avrdude: Send: . [1b] . [0c] . [00] . [0c] . [0e] . [10] . [c8] d [64] . [19]   [20] . [00] S [53] . [03] . [ac] S [53] . [00] . [00] ? [3f] 
194
avrdude: Recv: . [1b] 
195
avrdude: Recv: . [0c] 
196
avrdude: Recv: . [00] 
197
avrdude: Recv: . [02] 
198
avrdude: Recv: . [0e] 
199
avrdude: Recv: . [10] 
200
avrdude: Recv: . [c0] 
201
avrdude: Recv: . [cb] 
202
avrdude: stk500v2_command(): command failed
203
avrdude: initialization failed, rc=-1
204
avrdude: AVR device initialized and ready to accept instructions
205
avrdude: Device signature = 0xc8e776
206
avrdude: Expected signature for ATmega88PA is 1E 93 0F
207
avrdude: Send: . [1b] . [0d] . [00] . [03] . [0e] . [11] . [01] . [01] . [0a] 
208
avrdude: Recv: . [1b] 
209
avrdude: Recv: . [0d] 
210
avrdude: Recv: . [00] 
211
avrdude: Recv: . [02] 
212
avrdude: Recv: . [0e] 
213
avrdude: Recv: . [11] 
214
avrdude: Recv: . [00] 
215
avrdude: Recv: . [0b] 
216
217
avrdude done.  Thank you.

von Jobst M. (jobstens-de)


Lesenswert?

Malte M. schrieb:
> Pin 1 ist da, wo ein kleiner Pfeil auf dem Stecker ist, oder?

Korrekt.

> Und ich muss das ganze spiegelverkehrt nehmen, wenn ich auf
> den Stecker draufschaue?

???

Wenn Du den Stecker umdrehst, ist es immernoch so:
> Pin 1 ist da, wo ein kleiner Pfeil auf dem Stecker ist


Im Tutorial ist der Stecker falsch belegt ... (steht dort aber auch)
In dem von Dir verlinkten pdf jedoch korrekt und auch so, wie in dem im 
Tutorial verlinkten AVR042 - welches ich als bindend ansehe.
Der Anschluss ist von oben auf den Verbinder auf dem Board gesehen. Auf 
den Stecker geschaut natürlich entsprechend gespiegelt.



Gruß

Jobst

von Malte M. (mmalte)


Lesenswert?

Gut, dann hab ich das schon mal richtig verstanden. Ja, kompliziert 
ausgedrückt, aber wir meinen tatsächlich das gleiche ;)

von Malte M. (mmalte)


Lesenswert?

bump (von Seite 4 der Übersicht)

Jobst hat mir ja schon bestätigt, dass meine erste Vermutung, was ich 
falsch gemacht haben könnte, nicht stimmt. Wie siehts mit der zweiten 
aus?

man avrdude und das bisschen Dokumentation, was auf avr-programmer.com 
so rumliegt, haben mir leider beim Verständnis nicht weiter geholfen.

Hat jemand eine Idee und kann mir weiterhelfen?

von Klaus I. (klauspi)


Lesenswert?

Ich habe am Anfang am liebsten einfach das Pollin-Board mit Atmega8, 
Lunaavr und ein usbasp-Programmer für 2 EUR verwendet.

Daneben habe ich auch die den Ansatz mit Assembler, C, Bascom und Ada 
getestet. War aber (zumindest damals) deutlich schwieriger das ganze 
erstmal zum Laufen zu bekommen.

von Malte M. (mmalte)


Lesenswert?

Danke für deine Antwort. Sie hilft mir leider bei meinem konkreten 
Problem nicht weiter. Auch ich habe ja hier eine Situation, die 
schwierig zum Laufen zu bekommen ist, allerdings eine andere …

von Alexander S. (alesi)


Lesenswert?

Malte M. schrieb:
> Danach habe ich avrdude wie folgt aufgerufen (der ISP hängt tatsächlich
> an /dev/ttyACM0 und spricht das Protokoll stk500v2, daran kanns also
> nicht liegen).

Wo das Problem liegt kann ich auch nicht sagen, aber warum kommt bei
Dir erst:

$ avrdude -P /dev/ttyACM0 -c stk500v2 -p m88pa -n -F

avrdude: stk500v2_command(): command failed
avrdude: initialization failed, rc=-1

und dann:

$ avrdude -P /dev/ttyACM0 -c stk500v2 -p m88pa -n -F -vvvv

...
         Using Port                    : /dev/ttyACM0
         Using Programmer              : stk500v2
...
avrdude: stk500v2_getsync(): found STK500 programmer
         AVR Part                      : ATmega88PA

D.h. warum wird der stk500v2 programmer beim ersten Aufruf nicht
erkannt, aber dann beim zweiten? Die Option -vvvv sollte da keinen
Unterschied machen?

von Harald N. (Gast)


Lesenswert?

Ich verwende den gleichen Programmer. Allerdings mit Atmel Studio. Dabei 
ist mir aufgefallen dass ich manchmal die ISP Frequenz verringern muss. 
Dabei scheint das vom verwendeten Controller (vlt auch der Schaltung) 
abzuhängen. Vielleicht hilft dir das weiter.

von Malte M. (mmalte)


Lesenswert?

Doch, anscheinend macht das einen Unterschied, mit -v, -vv, -vvv, -vvvv 
werden Port und Programmer ausgegeben, ganz ohne -v reproduzierbar nicht 
(avrdude-Version 6.0.1).

von Malte M. (mmalte)


Lesenswert?

Harald Nagy schrieb:
> Ich verwende den gleichen Programmer. Allerdings mit Atmel Studio. Dabei
> ist mir aufgefallen dass ich manchmal die ISP Frequenz verringern muss.
Hmja, sowas hab ich vermutet. Allerdings scheinen die entsprechenden 
avrdude-Optionen nicht das zu tun, was sie sollen (bzw. 
wahrscheinlicher: was ich denke, was sie sollen).

Vielleicht sollte ich mal probieren, ob Atmel Studio unter wine läuft …

von Klaus I. (klauspi)


Lesenswert?

Malte M. schrieb:
> Vielleicht sollte ich mal probieren, ob Atmel Studio unter wine läuft …

Ist vielleicht ein Versuch wert. Aber ehrlich gesagt geht mein Gedanke 
eher in die Richtung, dass Du Deinen Aufbau mal vereinfachen solltest.

Ansonsten sollte man sich alles was Du imersten Post ausgeschlossen hast 
mal unbefangen ansehen. Vielleicht kannst Du ja mal Fotos von Deinem 
Aufbau machen.

Dumme Frage: Schonmal als root probiert?

von Malte M. (mmalte)


Lesenswert?

Vielen Dank für deine Antwort.

Klaus I. schrieb:
> Ist vielleicht ein Versuch wert. Aber ehrlich gesagt geht mein Gedanke
> eher in die Richtung, dass Du Deinen Aufbau mal vereinfachen solltest.
Ich kann den Quarzoszillator mal rausnehmen, ja. Aber sonst gibts glaub 
ich nichts zu vereinfachen. Ich hab jedenfalls noch nichts an den 
IO-Pins hängen, keine Spannungsversorgung außer dem USB-ISP, der ja 
wahlweise 3,3 oder 5 V mitbringt (direkt an den (A)VCC- und GND-Pins 
5,11 V gemessen) und die drei Kondensatoren und der Widerstand im 
Tutorial sind ja notwendig (ich konnte auch halbwegs nachvollziehen, 
warum und warum sie möglichst nah am μC sitzen sollen).
> Ansonsten sollte man sich alles was Du imersten Post ausgeschlossen hast
> mal unbefangen ansehen. Vielleicht kannst Du ja mal Fotos von Deinem
> Aufbau machen.
Hab leider keine Kamera und kein Smartphone.
> Dumme Frage: Schonmal als root probiert?
Vermutlich nicht ganz dumme Frage, aber das hab ich schon gemacht. Ohne 
kann ich nämlich auf /dev/ttyACM0 gar nicht zugreifen.

Bin jetzt erstmal weg, aber morgen abend bau ich vielleicht einfach 
nochmal frei nach dem Motto „have you tried turning it off and on 
again?“ alles ganz ab und wieder neu auf.

von Malte M. (mmalte)


Angehängte Dateien:

Lesenswert?

So, ich bin wieder da und habs nochmal ganz ab- und wieder neu 
aufgebaut, diesmal ohne Quarzoszillator. Ich kam noch auf die Idee, 
meine (leider nicht so tolle) Webcam zu verwenden; das Foto sagt glaub 
ich nicht viel aus, außer dass es meine folgende Vermutung verdeutlicht:

Kann es sein, dass der Weg vom USB-ISP bis zum μC zu lang ist? 
Zusätzlich zum Flachbandkabel kommen nämlich noch 15cm Kabel bis zu den 
MISO/MOSI/SCK/RESET-Pins des μC (zu VCC und GND sogar eher 30cm, aber 
das dürfte ja kein Problem sein, 5,1V schaffen es bis zu den Pins ;)).

Wie ich darauf komme: Es macht für die Ausgabe von avrdude (auch im 
„terminal mode“ mit der Option -t) keinen Unterschied, ob ich den μC 
angeschlossen hab oder der Stecker des USB-ISP einfach „in der Luft 
hängt“ und irgendwo habe ich mal was von zu langen Programmer-Kabeln 
gelesen.

Oder fällt jemandem noch was anderes auf?

Edit: gerade gesehen: Die Kabel reichen rechts aus dem Bild raus. Die 
verbinden einfach nur VCC bzw. GND am oberen und unteren Rand des 
Steckbretts.

von Christian O. (hightec)


Lesenswert?

Wenn du dir sicher bist dass die Verbindungen passen (auch bitte nochmal 
Prüfen ob der Atmega auch die Verbindung zum Steckbrett selbst hat, die 
kann manchmal echt wackelig ausfallen) dann versuch mal mit -B22 die 
ISP-Frequenz herunter zu setzen.
Ich benutze den gleichen Programmer und habe ab und an das gleiche 
Problem.
Das herabsetzen der ISP-Frequenz + einen einfachen Chip Erase bringt in 
den meisten Fällen die Lösung.

Gruß

Christian

von Klaus I. (klauspi)


Lesenswert?

Ist der eine Abblockkondensator wirklich zwischen AVCC (Pin 20) und GND 
(Pin 22)?

Das an Reset (Pin 1) ist aber KEIN Kondensator, oder?

Steckerbelegung zu uC ist richtig schwierig zu erkennen. Hast Du keine 
von den billigen flexiblen Jumper-Wires vom Chinesen Deines Vertrauens? 
Die halten ganz gut in Buchse und im Steckbrett. Dann könntest Du mit 
unerschiedlichen Farben arbeiten.

von Malte M. (mmalte)


Lesenswert?

Klaus I. schrieb:
> Ist der eine Abblockkondensator wirklich zwischen AVCC (Pin 20) und GND
> (Pin 22)?
>
Ja, ist er, hab die Beine vorsichtig ein bisschen auseinandergebogen.
> Das an Reset (Pin 1) ist aber KEIN Kondensator, oder?
>
Zwischen Reset und GND ist ein 47nF-Kondensator, doch. Zwischen Reset 
und VCC ein 100kΩ-Widerstand, beides hab ich so aus dem AVR-Tutorial.
> Steckerbelegung zu uC ist richtig schwierig zu erkennen.
Alles dreimal nachgezählt und im Datenblatt überprüft.
> Hast Du keine
> von den billigen flexiblen Jumper-Wires vom Chinesen Deines Vertrauens?
> Die halten ganz gut in Buchse und im Steckbrett. Dann könntest Du mit
> unerschiedlichen Farben arbeiten.
Nein, beim Reichelt gabs die nur in 15cm lang und je 10 in einer Farbe, 
hab deshalb erstmal ein Paket bestellt und die mit Zetteln markiert 
(auch da die Reihenfolge im ISP-Stecker dreimal überprüft). Ich schau 
aber heute oder morgen mal, ob ich im hiesigen Elektronikladen welche 
kriege (die hatten allerdings auch schon kein Multimeter, als ich eins 
brauchte, weil ich das bei der Bestellung vergessen hatte …)

Christian O. schrieb:
> Wenn du dir sicher bist dass die Verbindungen passen (auch bitte nochmal
> Prüfen ob der Atmega auch die Verbindung zum Steckbrett selbst hat, die
> kann manchmal echt wackelig ausfallen)
Wie überprüfe denn die Verbindung zum Steckbrett? Kann da ja nicht 
reinschauen. Außer … ah, ja, hab ne Idee … Durchgangsprüfung …

Vielen, vielen Dank an Christian! Da wär ich nie drauf gekommen. Pin 17 
(MOSI) war anscheinend nicht ganz drin. Danke auch an alle anderen, die 
sich so viel Mühe gegeben haben, mir zu helfen.

> dann versuch mal mit -B22 die
> ISP-Frequenz herunter zu setzen.

Das ist jetzt sogar nicht mehr nötig.

von Christian O. (hightec)


Lesenswert?

Malte M. schrieb:
 Außer … ah, ja, hab ne Idee … Durchgangsprüfung …


Badum Tsss .. ;-) genau

von Malte M. (mmalte)


Lesenswert?

Christian O. schrieb:
> Malte M. schrieb:
>  Außer … ah, ja, hab ne Idee … Durchgangsprüfung …
>
>
> Badum Tsss .. ;-) genau

Ja, ich weiß, dass das jetzt eigentlich nicht so schwer war, darauf zu 
kommen … aber ich hab am Donnerstag oder Freitag das erste Mal im Leben 
so ein Multimeter bedient und mich nur schwach aus der 
Bedienungsanleitung erinnert, dass das ja sowas kann ;)

von Christian O. (hightec)


Lesenswert?

Malte M. schrieb:
> Ja, ich weiß, dass das jetzt eigentlich nicht so schwer war, darauf zu
> kommen … aber ich hab am Donnerstag oder Freitag das erste Mal im Leben
> so ein Multimeter bedient und mich nur schwach aus der
> Bedienungsanleitung erinnert, dass das ja sowas kann ;)

In dem Fall sei noch dazu gesagt, dass du mit so einem Multimeter bei 
der Durchgangsprüfung vorsichtig sein musst.

Das Multimeter gibt zur Durchgangsprüfung eine Spannung auf den Weg 
welcher unter Umständen deinen uC schrotten kann.

D.h. Prüfe nur Wege damit wo der Weg der Prüfung NICHT durch den uC 
führt. Hab damit auch schon den ein oder anderen uC ins jenseits 
beförfert.

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.