PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATTiny15 - Calibration byte und Taktfrequenz ?!?!



elcomportal
01.06.2007, 19:41
Hallo Leute,
ich brauche eure Hilfe.
Wer von Euch weiss, wie das mit dem Calibration byte zu machen ist?
Also ich habe eine Schaltung mit dem Tiny15. In Bascom habe ich 1,6MHz eingestellt. Dann eine Kleine Warteschleife in Assembler programmiert und im Simulator getestet. Der schreibt mir eine Ausführungszeit von 19mS hin. So soll es sein. Dann auf dem Chip gebrannt und mit Oszilloskop geprüft - Das dauert ja 80(!) mS. Ist viel zu lange!! Also denke ich der Chip lauft nur mit ein paar hundert kHz.
EEPROM und Flash waren schon komplett gelöscht. Aber irgendwo steht doch nochmal das Calibration Byte. Ich hatte mal gelesen, dass das 3 mal auf dem Chip ist. Aber wie kann ich das auslesen (Assembler) und wie muss ich das dann verarbeiten (OSCCAL) damit ich eine bestimmte Frequenz bekomme?
Mfg
Torsten Müller

elcomportal
01.06.2007, 21:32
Kann denn keiner helfen?
Bitte.

izaseba
02.06.2007, 12:11
Hallo,
Die Oscilatorfrequenz ist stark von der Spannungsversorgung abhängig.
Wie hoch ist die den bei Dir?
Ich mußte auch mal am OSCCAL Register drehen, wo ich den TN15 mit 3V versorgt hatte, es gibt aber keine Regel die besagt, welche Frequenz bei welchem Wert sich einstellt, das mußt Du schon selber rausfinden, einfach ein Programm schreiben, wo Du als erstes irgendwas in OSCCAL schreibst und mit Osci messen, was rauskommt.
Am sonsten gibt es auch eine schöne Appnote von Atmel, die den Calibrationbyte beschreibt, leider bin ich jetzt am falschem Rechner und kann Dir nicht sagen, welche Appnote das ist (such einfach bei Atmel danach)
Wenn Du nicht weiterkommst melde Dich mal, dann kann ich auch mal was konkretes sagen.

Gruß Sebastian

elcomportal
02.06.2007, 16:40
Hallo,
danke für die Hilfe. Ich habe die App Note gefunden.
Also mein Programmer (GALEP4) kann das Cal-Byte aus der Signatur auslesen. Ich arbeite mit 4,3 Volt. 7805 -> Diode und dann ein dicker ELKO um den Prozessor für 2 Sec zu puffern.
Also wenn ich das Cal-Byte in $ff reinschreibe und von da im Programm in OSCCAL dann funzt es. Kriege ich irgendwie so um die 1,55MHz raus. Hauptsache ist halt, dass alle Prozessoren (Kleinserie) die selbe Frequenz haben, damit die Servos die da dranhängen immer so halbwegs in die selbe Richtung drehen.
Auf jeden Fall funktioniert das Programm jetzt.
Vielen Dank.
Mfg
Torsten