Eine Sache die micht wurmt muss ich mal den Spezialisten als Frage stellen: Mein Projekt: Ich habe einen AVR Net-IO von Pollin. Darin habe ich einen Atmega1284 auf den eine veränderte Version von Ulrich Radigs Webserver aufgespielt ist. Es geht mir darum um die Steuerung diverser Funksteckdosen und RGB Streifen. Konkret hängt da noch ein RFM12 dran das mir von den Schaltern die Signale empfängt und diese dann an eine original Fernbedienung der Pollin Dosen ausgibt. Auf dem einem Mac der eh immer an ist bin ich dabei eine WebApp fürs iPhone zu machen (Ideen aus Ulis Forum) um die Sache auch über iPhone und Browser zu steuern. Nun muss des öfteren der µC neu programmiert werden um die Anfragen auszuwerten und darauf zu reagieren. Am Sonntag um 22:50 reagierte er nach der Programmierung nicht mehr. Natürlich habe ich einen Fehler im Coder vermutet und eine Stunde gesucht. Bis mir auffiel dass nach der Programmierung die Meldung: "unequal at 0x0002" erschien. Auch ein kleines Testprogramm konnte ich nicht mehr aufspielen. Immer unequal an der gleichen Stelle. Ich habe dann eine Stunde eine abgespeckte Version für einen Atmega644 erstellt und den Chip gewechselt. Diesen konnte ich direkt fehlerfrei programmieren. Darauf habe ich mir einige neue 1284 geordert und gerade eben einen eingebaut. Ich konnte ihn direkt bespielen und alles ist wieder beim alten. Nun meine Frage: Kann ich den µC durch zu häufiges programmieren zerstört haben? Ich dachte die Schreibzyklen wären > 10.000 mal. Wenn dem so sein sollte muss ich da in Zukunft wohl besser aufpassen. Die 1284 sind ja nicht ganz billig? Oder muss ich den Fehler an anderer Stelle suchen. Ich werde, so die Zeit es mir mal wieder erlaubt, die Tage einen Aufbau machen um den defekten 1284 zu testen. (Nur das nötigste und SPI anschliessen) Gruss Chris
Christoph Hoell schrieb: > Nun meine Frage: Kann ich den µC durch zu häufiges programmieren > zerstört haben? Nein. Du wirst ihn eher verpolt oder verfust haben. Christoph Hoell schrieb: > Die 1284 sind ja nicht ganz billig? für das was sie leisten sind sie tatsächlich teuer.
Lehrmann Michael schrieb: > Christoph Hoell schrieb: >> Nun meine Frage: Kann ich den µC durch zu häufiges programmieren >> zerstört haben? > > Nein. Du wirst ihn eher verpolt oder verfust haben. > Er ist seit 15.11. in der Schaltung. Die Fuses wurden einmal zu Anfang gesetzt. Und am Sonntag abend waren sie noch so wie sie sein sollten. Logisch, denn ich war ja nie mehr auf dem Reiter zur Fuse Programmierung. Und da er so lange eingebaut war und lief, ich auch nichts an oder abgeschlossen habe schliesse ich eine Verpolung aus. Ich begann am Sonntag morgen gegen 10 Uhr damit daran zu arbeiten. Habe ihn sicher 20 bis 25 mal programmiert. Und dann war auf einmal Ende. > Christoph Hoell schrieb: >> Die 1284 sind ja nicht ganz billig? > > für das was sie leisten sind sie tatsächlich teuer. Eben. Aber mir ist kein µC bekannt der als PDIP besser geeignet wäre und günstiger ist. Zum Glück ist kein SMD drauf, denn hätte ich jetzt erst recht die Arschkarte....
Christoph Hoell schrieb: > Er ist seit 15.11. in der Schaltung. > Die Fuses wurden einmal zu Anfang gesetzt. > Und am Sonntag abend waren sie noch so wie sie sein sollten. Logisch, > denn ich war ja nie mehr auf dem Reiter zur Fuse Programmierung. > Und da er so lange eingebaut war und lief, ich auch nichts an oder > abgeschlossen habe schliesse ich eine Verpolung aus. > Ich begann am Sonntag morgen gegen 10 Uhr damit daran zu arbeiten. Habe > ihn sicher 20 bis 25 mal programmiert. Und dann war auf einmal Ende. Es kann auch sein das der AVR beim Programmieren ungeplant verfust wurde, durch ein Störereigniss während des Schreibzugriffes... Dieses "Verfusen" beim normalen Programmieren ist eine echte Schwachstelle wo ich immer noch nicht verstehe wieso die da keine Abhilfe schaffen. Probiere den µC mal mit einem HV fähigen Programmer, das sollte den dann wiederbeleben wenn es ein verfusen war. Bei diesem Bausteinpreis lohnt sich sogar über die Anschaffung eines HV fähigen Brenners nachzudenken, zumal das sicher nicht dein letzter verfuster Baustein sein wird wenn du weiterhin einiges mit AVR machst! > >> Christoph Hoell schrieb: >>> Die 1284 sind ja nicht ganz billig? >> >> für das was sie leisten sind sie tatsächlich teuer. > > Eben. Aber mir ist kein µC bekannt der als PDIP besser geeignet wäre und > günstiger ist. Naja, dann hast du aber nicht wirklich geschaut. Es gibt durchaus noch eine Menge mehr µC hersteller und zumindest Atmels größter Konkurent in deutschen Hobbykreisen hat noch einen wesentlich größeren Anteil seiner Produkte AUCH im PDIP. Und das meist günstiger als diesen... Wenn man natürlich nur bei Atmel schaut und bei Microchip nur an den fast 20JAhre alten 16F84 (16c84)denkt, klar dann findet man nichts... > Zum Glück ist kein SMD drauf, denn hätte ich jetzt erst recht die > Arschkarte.... Das ist ja auch mit DER Grund warum ich mittlerweile AVR so wenig wie möglich einsetze. Ich arbeite fast nur noch in SMD und wenn dann mal wieder das FuseBit falsch gesetzt ist oder sonst etwas passiert dann ist das Blöd. OK, wenn der Proz HV-SP unterstützt und man alle für HV-SP nötigen Leitungen auch rausgeführt hat (rausführen konnte), dann geht es ja noch, aber wehe wenn nicht! (Wo ich in der gewerblichen entwicklung tätig war gab es ganz andere Vorgaben zum Prozessor...) Natürlich, man bekommt die Probleme gelöst, aber warum wenn man sich das Risiko sparen kann und auch noch geld dabei spart ;-) Von der Verfügbarkeit mal abgesehen Gruß Carsten
Du kannst beim Mega1284 nur den Takt verfusen. Hast Du ihn auf langsam gestellt, mußt Du eben im Programmierer auch den SPI-Takt runtersetzen. Hast Du ihn auf extern gestellt, dann ~1MHz an XTAL1 einspeisen. Einen HV-Programmierer braucht man nicht. Allerdings sollte man einen ordentlichen SPI-Programmierer nehmen, z.B. AVRISPMKII. Mir ist damit noch nie eine Fuse unabsichtlich verdreht worden. Auch sind die Einstellungen im AVRStudio im Klartext, da kann man kaum ein Häckchen falsch setzen. Nur die LPT- und COM-Programmer mit Bit-Banging sind berüchtigt für alle möglichen Probleme, z.B. Fuses verstellen ohne Befehl. Wenn Du keinen ordentlichen Programmierer hast, brenn nen Bootloader rein. Ein Bootloader kann nur den Flash schreiben, aber niemals die Fuses. Peter
Ich habe diesen diesen Programmer: http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR-Programmer.html Als Software nutze ich AVR OSP II in der neusten Version. Eben hab ich den Chip nur mit Abblockkondensatoren und SPI Anschlüssen auf einem Steckbrett gecheckt. Die Fuses sind genau wie sie sein sollen. umindest lese ich das aus. Aber beim beschreiben kommt immer der gleiche Fehler wie oben schon angegeben. Seltsam seltsam.... Zu den Alternativen: Es ist zur Zeit wirklich so, dass ich nur bei Atmega geschaut habe. Ich mach das ja erst seit etwas über einem Jahr und da will ich jetzt nicht mit anderen Chips nochmal bei 0 anfangen. Zudem bin ich ja auch durch das AVR Net IO in der Auswahl zusätzlich eingeschränkt. Ich kann ja sowas jetzt nicht noch komplett selbst entwickeln. Aber danke für die Tips. So ein HV Programmer wäre wirklich mal noch ne Anschaffung wert. Chris
Christoph Hoell schrieb: > Aber danke für die Tips. So ein HV Programmer wäre wirklich mal noch ne > Anschaffung wert. Wie schon gesagt, brauchst Du nicht. Lies mal die Signatur, wenn die nicht stimmt, dann geht alles andere auch nicht. Wenn das klappt, setz mal die Fuses auf intern RC mit 8MHz und versuch dann den Flash zu schreiben. Bei einem externen Quarz unbedingt darauf achten, daß man den Full-Swing-Mode benutzt! Ansonsten schwingt der Quarz nur sporadisch. Dann hilft nur, einen externen Takt einzuspeisen, z.B. von einem 2. AVR. Peter
Ich teste das vorgeschlagene noch. Ich bin nur noch nicht dazu gekommen. Hoffe am Wochenende ist Zeit dafür. Nicht dass ihr denkt ich würde keine Meldung mehr geben. Chris
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.