Der Tiny12 läuft ab Werk mit einem undefinierten Takt im Bereich von
etwa 800kHz (sehr hohe Exemplarstreuungen!). Um den internen
RC-Oszillator davon zu überzeugen, mit den standardmäßigen 1,2MHz
(nicht 2MHZ!) zu arbeiten, muss der Tiny12 calibriert werden. Dazu muss
das im AVR befindliche Programm das individuelle Calibrationsbyte eben
dieses Exemplars in das Register osccal schreiben. Dieses
Calibrationsbyte muss vorher von einem ISP-Programm aus dem
Signature-Space des Tiny12 ausgelesen werden, da das im AVR befindliche
Programm da nicht ran kommt. Einzelheiten erfährt man im Datenblatt des
Tiny11/12 und in der Appnote zur Calibration der internen
RC-Oszillatoren der AVRs.
Sämtliche integrierte Peripheriebausteine des Tiny12 arbeiten auch mit
dem internen RC-Oszillator, für 'ne Uhr ist's aber etwas zu ungenau.
Für UART auch, aber der TINY12 hat ja kein Hardware-UART.
...