Wie kann ich kontrollieren, ob der Controller auch mit den 8MHz vom externen Quarz getaktet ist?
Ich weiß ja das es ein externer Quarz von 8MHz ist. Nur wie kann ich softwaremäßig feststellen, ob der Controller auch diesen verwendet und nicht seinen internen Osc.?
ne led im sek takt blinken lassen und mit ner stopuhr gucken, ob es ca. ne sek is oder viel schneller/langsamer....
Wenn du den externen ausbaust und es funktioniert immer noch kannst du dir sicher sein, dass es nicht der externe war
Wenn Du einen Oszi besitzt, kannst Du an den XTAL_Anschlüssen die Schwingungen messen. MfG Paul
Lass einfach nen Timer durchlaufen, am besten mit nem hohen prescaler und toggle b ei überlauf nen pin. Jetzt rechnest d dir aus wie lange es dauern sollte und guckst dann auf die Uhr wie lange es wirklich dauert. Wenn sich das deckt is externer wenn nicht wohl interner ... könnte aber auch der interne auf 8 MHz sein. Sicherste Methode deswegen: Ausbauen und gucken ob das ding immer noch läuft.
Für die FLL am MSP430 gibts einen Beispielcode, der die Frequenz mit Hilfe eines Timers überprüft. Klappt super, den Codeschnipsel setze ich jedes mal ein, wenn ich den DCO benutze. Da kannst du dir ja abgucken, wie man das macht.
Was Juergen wohl wissen will ist ob der Takt des µC auch wirklich 8 MHz ist, damit er seine Software optimieren kann. Wenn auf meinem Quarz 8 MHz draufsteht, dann heißt das ja noch lange nicht, das der Microcontroller dann auch 8 Mio. Impulse mit dem Teil erzeugt und die auch als 8 MIPS umsetzt. (Die richtigen Befehle vorausgesetzt.) Zu ZX81 Zeiten gab es da mal ein kurzes Programm, das nach dem Start eine bestimmte Anzahl von Rechen- Verschiebeoperationen durchgeführt hat, mit Befehlen, deren Bearbeitungszeit genau bekannt war. Dann wurde die Zeit mit einem Timer, dessen Grundtakt bekannt ist, gemesen und die Taktrate war kalkulierbar. Finde ich nur im Moment nicht mehr. Anfaenger
Das geht aber IMHO nur dann, wenn Timer-Takt und CPU Takt voneinander unabhängig sind. Was aber beim AVR meistens nicht der Fall ist.
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.