Hallo animiert durch dieses Forum habe ich mal den Webserver von Ulrich Radig "nachgebaut". Vielen Dank Urich für diesen Webserver. Ich bin relativ neu in dem Atmelgeschäft drin und bin auf einige Probleme gestossen und suche Hilfe. Ich habe den Webserver mit einem Atmega32 in Verbindung mit dem STK500 und einer Isa Karte nach einigen (Anfänger)Problemchen zum laufen bekommen. Soweit ok. Ich wollte nun den Atmega32 gegen einen Atmega16 austauschen und das Ganze zum Laufen bringen. Das ist mir bis jetzt noch nicht gelungen. Ich bin (war?) bis jetzt der Meinung die beiden sind gleich bis auf die Speichergröße. Der Code müßte ja in einen Atmega16 passen. Mir ist noch beim Testen aufgefallen, dass wenn man die ISA-Karte rauszieht trotzdem die ...34 für korrekte Initialisierung zurück kommt. Hat mir jenmand einen Tipp, wie ich das Problem mit dem Atmega16 angehen kann? Ein weiteres Problem: Ich habe mir ein eigenes Board zusammengebaut um das Ganze ohne STK500 zu betreiben. Leider geht das mit dem ATMEGA32 überhaupt nicht. Ich kann den mit dem AVRISP nicht ansprechen. Es kommt ein Fehlermeldung, dass er nicht in den Programmiermode kann. Ferner geht der im STK500 programmierte ATMEGA32 nicht. Es kommt an der ser. Schnittstelle nichts zurück. Das ist bei einem neu gebauten Board ja nichts außergewöhniches. Setze ich jedoch einen Atmega16 in das selbstgebaute Board, läßt sich dieser problemlos mit einem ASM-Schnittstellen-Testprogramm mit dem AVRISP programmiern. Die serielle Schnittstelle geht auch problemlos. Wiederum die Frage: Was ist der (Hardware)Unterschied zwischen ATMEGA16 bzw. 32 außer der Speichergröße? Am RESETeingang habe ich eine 100K gegen 5V und 100 nF gegen Masse. Haben die Beiden ein unterschiedliches rücksetzverhalten? Oder was kann das sein? Wenn gar nichts geht kann man ja gezielt suchen aber so...mmmhh .. Seltsam seltsam kann mir jemand hilfreiche Tipps geben wie ich die Fehler finden kann. Bin für jeden Tipp dankbar. Viele Grüße Achim
Wenn nur ein Chip in der selbstgebauten Schaltung ansprechbar ist, so würde ich auf unterschiedlich eingestellte Fuse-Bits tippen. Villeicht erwartet der eine einen externen Quarz und der andere läuft einfach mit dem internem Oszillator. Ansonsten hat der MEGA16 weniger RAM als der MEGA32, villeicht erfolgt so ein Stacküberlauf. Als letztes musst du überprüfen, ob du in der Makefile auch MEGA16 eingestellt hast.
Hallo Malte beide sollten mit einem externen Quarz laufen. Ich programmiere die Atmegas auf dem STK500. Der Atmega16 läßt sich mit dem AVRISP dann auf der selbstgebauten Schaltung ansprechen, der Atmega32 jedoch nicht. Das ist ja eines meiner besagten Probleme. Achim
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.