Attiny861 PLL

Všetko čo sa týka mikropočítačov + Sekcia Arduino

Moderátori: psichac, Moderátori

Dumitru
Stály člen
Stály člen
Príspevky: 374
Dátum registrácie: 06 Nov 2011, 22:19
Vek: 32

Attiny861 PLL

Príspevok od používateľa Dumitru » 13 Apr 2021, 21:18

Ahojte využívam timer1 na attiny861 kde ako vstupne hodiny je PLL o frekvencii 64Mhz
image.png
Samotný timer funguje ale chcel som vyviesť na PB5 nožičku výstupnú frekvenciu čo tiež funguje
image.png
image.png
Timer mam v normal mode čo znamená že TCNT1 kmitá kým nedosiahne hodnotu uloženú v OCR1C
image.png
No a teraz problém je že na výstupe PB5 som podľa nastavenej hodnoty OCR1C očakával dostať tieto frekvencie :
image.png
image.png (6.34 KiB) 1745 zobrazení
Po bod 7 frekvencie naozaj sedia ale ďalej ostáva konštantných 8Mhz neviete poradiť prečo....

nastavenie TIMERU :

Kód: Vybrať všetko

oid TIMER1_Init (void)
{


PLLCSR |= ( 1 << PLLE ); // PLL ENABLE

_delay_us(100); // wait to start PLL

while ( ! (PLLCSR & ( 1 << PLOCK ))) // wait to start PLL
{

}
    PLLCSR |= ( 1 << PCKE ); // 64Mhz PLL start

    TCCR1A &= ~( 1 << PWM1A); // normal mode
    TCCR1A &= ~( 1 << PWM1B); // normal mode

TCCR1B |= (1 << CS10); // set prescaler to 1 PCK/1
TCNT1 = 0;
OCR1C = 255 ;

TCCR1C  |= ( 1 << COM1D0); // vystúp pb5 spína keď TCTN1 == OCR1C
TCCR1E |= ( 1 << OC1OE5);


}
0

step-hunk
Okoloidúci
Okoloidúci
Príspevky: 27
Dátum registrácie: 07 Júl 2013, 22:17

Re: Attiny861 PLL

Príspevok od používateľa step-hunk » 04 Jún 2021, 12:27

Ako je nastavený CKSEL? Nie je náhodou aktivovaný len vstup v strede mux-u do ktorého ide len 8MHz?
0

Dumitru
Stály člen
Stály člen
Príspevky: 374
Dátum registrácie: 06 Nov 2011, 22:19
Vek: 32

Re: Attiny861 PLL

Príspevok od používateľa Dumitru » 04 Jún 2021, 13:07

Ahoj mam to takto Obrázok
Prílohy
image.png
0

step-hunk
Okoloidúci
Okoloidúci
Príspevky: 27
Dátum registrácie: 07 Júl 2013, 22:17

Re: Attiny861 PLL

Príspevok od používateľa step-hunk » 07 Jún 2021, 12:52

Zdá sa že si si nastavil externý zdroj hodín(kryštál). Z neho ide signál len do prescaleru, interná pll je tým pádom mimo hry. Táto sa kŕmi práve z interného oscilátoru 8MHz.. Podľa tvojho CKSEL 1110 tam máš externý kryštál 8MHz.. Je tak?
0

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok