Forum: Mikrocontroller und Digitale Elektronik ATmega48 programmiert fehlerfrei, tut aber nichts.


von Tim H. (h0rbie)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

hab ein kleines Problem mit meinem ATmega48. Habe vor kurzem wieder mit 
dem Programmieren von Mikrocontrollern begonnen und vorerst mit dem 
Radig Board V1 (ATmega8) aus der Berufschule weitergearbeitet. Danach 
habe ich die Grundschaltung für Stromversorgung und den USB ASP 
Programmer auf mein Breadboard gesteckt zusammen mit einer LED zum 
Testen. Mit dem ATmega8 funktioniert auch alles weiterhin. Nur meine 
ATmega48 wollen leider nichts machen (Fuses sind auch auf externen 
Quartz gestellt wie beim 8er).

Programmieren funktioniert bei beiden einwandfrei. Beim ATmega8 leuchtet 
die LED danach, beim ATmega48 leider nicht. Habe alles an Tutorials 
gelesen und versucht und mir sind die Ideen jetzt ausgegangen :D.

Ich Programmiere und Compile das ganze mit Codeblocks und dem GNU AVR 
GCC Compiler. Auf den Controller schreiben mache ich mit dem 
AVR-Burn-O-Mat.
Wahrscheinlich habe ich auch nur eine dusselige Kleinigkeit 
übersehen/vergessen, aber ich komme einfach nicht drauf.


hier der Test-Code:
1
#include <avr/io.h>
2
3
int main(void)
4
{
5
    DDRD  = 0xFF;
6
    PORTD = 1;
7
8
    while(1)
9
    {
10
    }
11
}

von Dietrich L. (dietrichl)


Lesenswert?

Hast Du den Hex-File des ATmega8 verwendet und damit den ATmega48 
programmiert?
Falls das so ist: Das kann nicht gehen.

Du musst bei den Projekteinstellung den tatsächlich verwendeten µC 
auswählen (wie auch immer das bei Codeblocks geht..), dann Compilieren 
und den hiermit erzeugten Hex-File zum Programmieren verwenden.

Hintergrund: Die Registeradressen des im Programm verwendeten Ports 
(DDRD und PORTD) sind unterschiedlich.

Gruß Dietrich

von Tim H. (h0rbie)


Lesenswert?

Danke Dietrich, daran hat es gelegen. Fast schon peinlich, dass ich 
daran nicht gedacht habe... . Jetzt funktioniert alles wie gewünscht. :)

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.