Forum: Mikrocontroller und Digitale Elektronik Brauche Starthilfe bei Atmel Mega8 Programmierung


von Tobias O. (mdtobi)


Lesenswert?

Hallo allezusammen,

Ich wollte jetzt endlich auch mal mit der µC-Programmierung starten. Ich 
habe schon länger ein Evaluationsboard 2.0 von pollin.de und 2 Atmel 
Mega8 hier herumliegen. Da ich einen Laptop benutze (WinXP), welcher nur 
noch USB hat, habe ich mir noch einen mySmartUSB 2.11 USB-Programmer 
besorgt.

Das Evaluationsboard sollte funktionieren (habe nach dem Löten beim 
messen keinerlei Fehler gefunden). Der USB-Programmer ebenso (war schon 
fertig gelötet als er bei mir ankam).

Nun wollte ich mit AVR Studio 4 anfangen zu programmieren. Als Test 
diente mir das Programm aus eurem Tutorial, bei welchem ich lediglich 
die Ports (D statt B) umgeändert habe.

Als ich über Tools>>AVR Prog meinen ersten Schreibversuch starten wollte 
erhielt ich folgende Fehlermeldung:

Address: 0x0000, Expected: 0xef01, Received: 0xffff

Nun weiß ich nicht wo der Fehler liegt und frage daher euch.

Ich habe schon im Forum/Internet gesucht und die Treffer in der Suche 
probiert, beide Atmels einmal ausprobiert, nochmal alles durchgemessen, 
aber weiß einfach nicht woran es liegt...

Der Treiber ist richtig, der Programmer liegt an COM 4 und wird auch 
erkannt. Beim versuch ohne eigenes Programm kann ich über AVR Prog lesen 
und schreiben, allerdings sind es dann nur Null-gefüllte Dateien.

Wäre echt toll, wenn einer weiß was ich falsch gemacht habe.

Mein Programm:
1
.include "m8def.inc"         ; Definitionsdatei für den Prozessortyp einbinden
2
 
3
         ldi r16, 0xFF       ; lade Arbeitsregister r16 mit der Konstanten 0xF1
4
         out DDRD, r16       ; Inhalt von r16 ins IO-Register DDRD ausgeben
5
6
         ldi r16, 0b01100000 ; 0b01100000 in r16 laden
7
         out PORTD, r16      ; r16 ins IO-Register PORTD ausgeben
8
                             ; LED 1 und 2 sollen leuchten - liegen an PD5 und PD6 und sind laut Datenblatt gegen Masse geschaltet...
9
 
10
ende:    rjmp ende           ; Sprung zur Marke "ende" -> Endlosschleife

von Stefan B. (stefan) Benutzerseite


Lesenswert?

> Address: 0x0000, Expected: 0xef01, Received: 0xffff

Ist ein Hinweis darauf, dass der µC nicht programmiert werden konnte. An 
der Speicheradresse 0x0000 steht statt dem Anfang des kompilierte 
Programms (0xef01) ein leerer Speicher (0xffff).

Die Fehlersuche muss sich also auf den Übertragungsvorgang PC => µC bzw. 
den verwendeten Programmieradapter bzw. auf dessen Kommandozeile 
konzentrieren.

Versuche dein Vorgehen und die Ausgangssituation noch detailierter zu 
beschreiben. Im Moment ist die Beschreibung (mir) zu dünn.

von Norbert (Gast)


Lesenswert?

Moin,

fange mal mit BASCOM an, das ist viel leichter und übersichtlicher als 
dieses "C".

Norbert

von ... .. (docean) Benutzerseite


Lesenswert?

Das ist kein C!!!!

Das ist Assembler!!

von Johannes M. (johnny-m)


Lesenswert?

Norbert wrote:
> fange mal mit BASCOM an, das ist viel leichter und übersichtlicher als
> dieses "C".
Wenn Du wenigstens ein kleines Bisschen Ahnung hättest, dann hättest Du 
gesehen, dass das kein C ist sondern Assembler. Und das Problem des OP 
hat offensichtlich nichts mit der Programmiersprache zu tun!

von MySmartUSB Nutzer (Gast)


Lesenswert?

Ich würde als erstes meinen MysmartUSB auf die Version 2.5 updaten.
Download unter: http://www.myavr.info/download/firmwareupdate_25.zip
Und probiere doch mal mit dem myavr_progtool das Programm auf den AVR zu 
überspielen.
Download unter: http://www.myavr.info/download/myavr_progtool_111.zip

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.