Forum: Mikrocontroller und Digitale Elektronik Attiny 12


von Sebastian (Gast)


Lesenswert?

Grüß Euch!

Wie kann ich denn den "Internal Rc Oscillator" bei einem Attiny 12
mit BASCOM einschalten und kallibrieren?

Kann mir da jamand helfen?
Aus dem Datenblatt
(www.reichelt.de/inhalt.html?SID=15psGhH6wQAREAAHdHWog69c7a9431da259d1c9 
390c08d5f64f08;ACTION=7;LASTACTION=6;SORT=artikel.artnr;GRUPPE=A362;WG=0 
;SUCHE=attiny%2012;ARTIKEL=ATTINY%252012%2520DIP;START=0;END=16;STATIC=0 
;FC=669;PROVID=0;TITEL=0;DATASHEETSEARCH=ATTINY%2012%20DIP;FOLDER=A300;F 
ILE=ATTINY11_ATTINY12%2523ATM.pdf;DOWNLOADTYP=1;DATASHEETAUTO=;OPEN=1)
werd ich leider nicht ganz schlau, bin ja noch Anfänger, hatte bisher
nur Erfahrung mit dem 90S2313.

Danke schon mal!

PS: Ich programmiere derzeit leider noch auschließlich mit BASCOM, wäre
schon wenn sich also die Antowrten nur auf BASCOM beziehen würden,Danke.

von Niels H. (monarch)


Lesenswert?

Den Internen RC_oszillator kann wohl nur durch programmieren der
fuse-bits anschmeissen. Dieser ist aber default-mässig aktiviert, wenn
du CKSEL0..3 noch nicht angefasst hast.

Der interne oszillator soll mit 1.2MHZ laufen, und kann über die
OSCAL-Variable innerhalb von 1% kalibiert werden. Ich würde einfach mit
einem Timer alle 256 Takte einen OverflowInterrupt generieren, in dem
ich den Pegel eines Portpins ändere. Mit einem Frequenzzähler kann man
dann bestimmen, ob der Takt stimmt, oder nicht.

Allerdings sind die Internen RC-Oszillatoren nicht besonders
temperaturstabil. Eine Uhr würde ich damit nicht programmieren ;)

von Hannes L. (hannes)


Angehängte Dateien:

Lesenswert?

Der interne RC-Oszillator ist beim neuen Tiny12 aktiviert.

Das Calibrationsbyte steht im H-Byte der Adresse 0 des
Signature-Bereiches und kann mit einschlägigen ISP-Programmen
ausgelesen werden.

Beim neuen AVR steht das Calibrationsbyte zusätzlich im H- und L-Byte
der letzten Speicherzelle (Word) des Flash-Speichers, wird aber beim
ersten Löschen mit gelöscht.

Deshalb nutze ich diese Variante auch, mein ISP-Programm liest bei
jedem Löschen automatisch das Calibrationsbyte aus dem
Signature-Bereich und schreibt es ins L-Byte der letzten Flash-Zelle.
Dort wird es von der Calibrationsroutine (Anhang), die Bestandteil der
Reset-Routine ist, bei jedem AVR-Reset per LPM ausgelesen und ins
OSCCAL-Register geschrieben.

BASCOM halte ich für relativ ungeeignet, den Tiny12/15 sinvoll zu
programmieren. Die Architektur dieser Tinys ist so überschaubar, dass
sie das ideale Einsteigerobjekt für ASM sind. Als Informationsquellen
reichen dann das Datenblatt und die Onlinehilfe des Freeware-Programms
AVR-Studio4 von ATMEL.

...

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
Noch kein Account? Hier anmelden.