Forum: Mikrocontroller und Digitale Elektronik clock settings im attiny13


von vlad (Gast)


Lesenswert?

Hi,
Ich werde aus den Beschreibungen zu den Frequenzen nicht schlau, 
vielleicht kann mir da jemand weiterhelfen.

es gibt ja den clock-prescaler, mit dem man den systemtakt reduzieren 
kann (register CLKPR)
weiterhin kann man mit den fuse bits CKSEL1 und CKSEL0 zwischen 9,6 und 
4,8 (standardeinstellung) MHz wählen.
weiterhin kann mit dem Fusebit CKDIV8 der takt geachtelt werden 
(standardeinstellung).

Heißt das jetzt, dass die cpu mit standardmäßig mit 0,6Mhz arbeitet?
gilt der über das CLKPR-register konfigurierbare prescaler zusätzlich zu 
CKDIV8, oder sorgt das Fusebit nur für eine andere initialisierung von 
CLKPR?

mit welchem takt arbeiten AD-konverter und timer?
mit dem CPU-takt, oder dem systemtakt?


meine vorstellung:

              clock
fuses CLKSEL        9,6 oder 4,8
fuse CKDIV8           (/8)
              |                           |
              v                           v
      CLKPR (/1 | ... | /256)       ADPS0:2 (/2 | ... | /128)
              |                           |
              v                           v
            CPU                          ADC


So, ich hoffe von euch blickt da jemand durch.
Vlad

von avr (Gast)


Lesenswert?

Der Vorteiler CLKPR beeinflust alle angeschlossenen Module.
1
6.3 System Clock Prescaler
2
The ATtiny13A system clock can be divided by setting the CLKPR  Clock Prescale Register
3
on page 28. This feature can be used to decrease power consumption when the requirement for
4
processing power is low. This can be used with all clock source options, and it will affect the
5
clock frequency of the CPU and all synchronous peripherals. clkI/O, clkADC, clkCPU, and clkFLASH
6
are divided by a factor as shown in Table 6-8 on page 28.

Also auch den AD.

von spess53 (Gast)


Lesenswert?

Hi

>Heißt das jetzt, dass die cpu mit standardmäßig mit 0,6Mhz arbeitet?

Nein, 9,6MHz/8= 1,2MHz.

>gilt der über das CLKPR-register konfigurierbare prescaler zusätzlich zu
>CKDIV8, oder sorgt das Fusebit nur für eine andere initialisierung von
>CLKPR?

Letzteres.

>mit welchem takt arbeiten AD-konverter und timer?
>mit dem CPU-takt, oder dem systemtakt?

Mit dem Takt nach CLKPR.

MfG Spess

von vlad (Gast)


Lesenswert?

Ah, diesen kurzen aber wichtigen Absatz habe ich glatt zwischen den 
gaznen tabellen und fußnoten übersehen ;-).

und was das CLKDIV8 angeht, glaube ich zwischen den Zeilen heruasgelesen 
zu haben, dass damit CLKPR auf 8 vorinitialisiert wird.

Auch ist, die voreistellung von CLKSEL nicht 4,8 sondern 9,6, hier bin 
ich (wieder mal)) der inversen logik der FUSE-bits auf den Leim 
gegangen.
das würde heißen standardmäßig läuft der tiny13 mit 1,2 Mhz

Danke, jetzt ist mir alles etwas klarer.


fuses CLKSEL   9,6 oder 4,8
                   |
                   v
 CLKPR (/1 | ... | /256) initial /8 wenn CLKDIV8
   |                 |                    |
   |                 v                    |
   v         ADPS0:2 (/2 | ... | /128)    |
  CPU                |      CS02:0 (/0|/8|/64|/256|/1024)
                     v                    |
                    ADC                   v
                                         Timer


Aber bitte korrigiert mich, wenn ich falsch liege.

von vlad (Gast)


Lesenswert?

oh, zu spät

Danke euch allen!

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.