Hallo allerseits, ich habe bereits etwas Erfahrung beim Programmieren von Microcontrollern gesammelt (AT90S8515, ATMEGA8515 und ATMEGA8), aber manchmal, wenns nicht so läuft wie es soll, wird mir klar, dass mir irgendwo mit meinem Wissen Grenzen gesetzt sind. Daher wende ich mich an Euch...... in der Hoffnnung auf Hilfe.. Ich habe gerade zwei aktuelle Probleme. Das Schlimmere ist, dass ich nie weiß, was ich bei den Fuses der diversen µC's als SUT_CKSEL einstellen soll, damit das Teilchen nicht anschließend abgeschossen ist. Ich habe einen ATMEGA8515 auf einer externen Platine aufgebaut und via ISP-Connection mit einem STK500 verbunden.... alles toll soweit.. kann das Teil Programmieren... alles schön... Nur glaube ich, dass das Teilchen auf nem internen Taktgeber läuft, wird auch so angedeutet, wenn ich die Fuses auslese... (siehe Bild Fuses). Aber ich habe auf der externen Platine einen 8 MHz Quarz eingelötet, mit dem der µC eigentlich laufen soll. Das funktionierte auch irgendwann mal... ist lange her und ich bin jetzt kürzlich erst wieder in die Programmierung und Schaltungsentwicklung eingestiegen... nur jetzt habe ich nur noch Probleme... Habe die Fuses dann mal geändert und neu programmiert... zupp... kein Zugriff mehr auf den Controller... abgeschossen... Ich weiß nicht mehr, welche Einstellungen von den vielen ich verwendet hatte.. egal... möchte nur noch wissen, welche die Richtigen sind, ohne den Controller abzuschießen.... habe dazu hier im Forum auch schon was gelesen, aber ich bin mir nicht so sicher.... Das Zweite Problem: Habe ein kleines Programm geschrieben, bei dem ich mit zwei Schaltern (eigentlich sollens später mal Taster werden) eine Programmauswahl treffen kann, um gewisse Ausgänge mit verschiedenen Programmen anzusteuern. Das funktioniert alles prima... Dann wollte ich mich mal wieder an die internen Timer/Counter heranwagen... ja.. wie zu erwarten... Probleme... Ich wollte die internen Timer/Counter dazu benutzen, einen BEEP auf einen Piezokeramischen Schallwandler zu bringen. Klappt auch teilweise... aber ich hatte mir die Timer/Counter ausgesucht, weil die ja dafür gut geeignte sind, eine stabile Zeitgrundlage/Frequenzgrundlage zu bieten. Nur ist es bei meinem Programm so, dass der BEEP manchmal so eine halbe Sekunde dauert (so wie es sein soll) aber manchmal dafür auch so um die drei Sekunden (was nicht sein soll) obwohl das Unterprogramm BEEP() nur von einer Stelle aus aufgerufen wird. Da es immer nur von dieser Stelle aus aufgerufen wird, und das Unterprogramm komplett ausgeführt werden muss, bevor es verlassen wird, frage ich mich, woher die unterschiedlichen Zeitdauern der BEEPs herkomen. Ich habe alles so oft nachgeschaut... finde aber keinen Fehler... Kann eigentlich nur an der Initialisierung der Timer/Counter Register liegen, glaube ich.. aber echt.. ich kann den ganzen englischen Sch nicht mehr sehen... vielleicht ist ja auch was falsch in der Beschreibung... oder ich habs falsch interpretiert. Ich weiß nicht weiter... Programmcode in C siehe Datei Programm.c Vielen Dank im Voraus André
Wenn der Atmega in deiner Schaltung gesockelt ist, dann kannst du den über HVPP mit dem STK500 retten. Mit der HVPP bzw HVSP kann man auf verfuste Atmegas und Attinys zugteifen. Gruß JackFrost
André Derfert (dufman): > Das Schlimmere ist, dass ich nie weiß, was ich bei den Fuses der > diversen µC's als SUT_CKSEL einstellen soll, damit das Teilchen nicht > anschließend abgeschossen ist. Na ganz einfach, wenn du 8MhzQuarz anliegen hast nimmst du ExternCrystal***** müsste dort dann auch stehen... wichtig ist halt nicht den EXTERNRC*** zu nehmen, sonst musst du nämlich externen Takt anlegen zum nutzen wie auch zum proggen. > Zugriff mehr auf den Controller... abgeschossen... Sicher?? nicht nur die ISP-Frequenz zu hoch gewählt?? sollte 1/4 der Taktfrequenz sein... Problem würde ich erst angehen wenn du das erste gelöst und du musst nicht jedes mal die Fuses einstellen. Das wird einmal beim Fabrikneuen gemacht auf extern Crystal umgeschaltet, Brownout auf 4V/2,7V/1,8V und gut ist.
@Bastian: Ja, habe ich auch schon ausprobiert, wusste anfangs aber auch nicht, welche Clocksource ich da einstellen soll, damit ISP wieder läuft. Habe mittlerweile rausgefunden, dass internal oscillator mit 1 Mhz scheinbar immer funktioniert. Trotzdem danke für den Hinweis. @chris: Dir auch erst einmal vielen Dank für Deine Tipps. chris schrieb: > Na ganz einfach, wenn du 8MhzQuarz anliegen hast nimmst du > > ExternCrystal***** müsste dort dann auch stehen... Ja, also es steht nicht ganz so da, wie Du es geschrieben hast. Ich habe da zum Beispiel folgende Auswahlmöglichkeiten: EXTLOFXTAL_1KCK_4MS, EXTLOFXTAL_1KCK_64MS, EXTLOFXTAL_32KCK_64MS. Bei den Tooltips/Quickinfos wird bei diesen Auswahlmöglichkeiten folgendes angezeigt: Ext. Low-Freq. Crystal; Start-up time: 1K CK + 4 ms etc. Jetzt frage ich mich, ob mein 8-MHz-Quarz ein Low-Freq. Crystal ist, weil .. also, 8 Mhz finde ich jetzt nicht sooo Low-Freq. Dann bleibt immer noch die Frage, was man am besten bei "CK" und "Millisekunden" wählt. Es besteht auch die Möglichkeit, Medium- oder High-Freq. Clocksources auszuwählen, wie zum Beispiel EXTMEDFXTALRES (Ext. Crystal/Resonator Medium Freq; Start-up time 1K CK + 64 ms) oder EXTHIFXTALRES (Ext. Crystal/Resonator High Freq; Start-up time 1K CK + 64 ms). Aber wie Du schon an der Bezeichnug bzw. am Tooltip siehst, steht da Crytal/Resonator und nicht nur Crystal. Wenn ich wieder das verkehrte auswähle, ist der Zugriff wieder futsch... und beim ATMEGA8515 ist es immer umständlich, wieder mit High Voltage Programmierung alles wiederherzustellen, da für HV-Programmierung ein anderer Sockel zuständig ist... also wieder IC umsockeln, die Programmierkabel wieder stecken.. etc chris schrieb: > Sicher?? nicht nur die ISP-Frequenz zu hoch gewählt?? sollte 1/4 der > Taktfrequenz sein... Ja,ich weiß... hatte auch schon verschiedene Einstellungen ausprobiert, aber es lag wirklich daran, dass ich die Clocksource mit den Fuses falsch eingestellt hatte. Vielen Dank für eure Tipps... Ich hoffe, chris, Du schreibst mir nochmal zurück, ob ich den Low-Freq Crystal nehmen soll, oder ob die Medium- bzw. High-Freq Crystal/Resonator die richtigen Einstellungen beinhalten. Grüße André
Nachdem kein Beitrag mehr zurückkam, hab ich es mal mit EXTHIFXTALRES ausprobiert.... hat funktioniert für meinen 8MHz Quarz...
Ich habe ehrlich gesagt keine Ahnung, wie man das Thema hier abschließen kann, echt keine Idee....
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.