Kazalo po Svet elektronike forumu Svet elektronike
Revija za prave elektronike
 
AlbumAlbum   Pomoč pogostih vprašanjPomoč pogostih vprašanj   IščiIšči   Seznam članovSeznam članov   Skupine uporabnikovSkupine uporabnikov   Registriraj seRegistriraj se 
 Tvoj profilTvoj profil   Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil   PrijavaPrijava 

programiranje ure s kristalom,atmel m8535

 
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
plutakis
Novinec


Pridružen/-a: Tor Mar 2007 9:22
Prispevkov: 1
Kraj: Ljubljana

PrispevekObjavljeno: Pet Mar 30, 2007 4:06 pm    Naslov sporočila: programiranje ure s kristalom,atmel m8535 Odgovori s citatom

pozdrav,

tako, prescaler sem nastavil na tako vrednost, da bi Casovnik2 moral preplaviti vsako sekundo... vendar se Casovnik sploh ne premakne iz svoje zacetne lege.

Po mojem mnenju sem naredil prakticno vse potrebne korake opisane v application notesu.

prilagam del kode, kjer se nastavi asinhroni casovnik. (while zanka je zakomentirana zato, ker tukaj se program ustavi. torej se tisti register nikoli ne posodobi. kar mi daje slutiti, da je bodisi kristal - ceprav sem kupil dva - ali pa prevajalnik kriv (ali pa moje neznanje) za ta kiks). Da se Casovnik ne premakne nikamor sem pregledal preko UARTA.

Koda:
#define GLOBAL_INTERUPTS_ENABLED      SREG |= (1<<0x08);
#define GLOBAL_INTERUPTS_DISABLED      SREG &= ~(1<<0x08);

#define PRESCALER_SECONDS            0x05
#define RESET_TIMER_2               0x00
#define UPDATE_NOT_FINISHED            0x07

/* *******************************************  */
/* function: init_function                  */
/* Arguments:                            */
/* Return:                                 */
/* Description: init the ports and interupts   */
/* *******************************************  */
VOID init_function(VOID)
{
 int temp0;
 int temp1;
 /* Wait for external clock crystal to stabilize */
 for(temp0 = 0;temp0 < 0x0040; temp0++)
 {
  for(temp1 = 0;temp1<0xFFFF;temp1++);
 }
 
 DDRA = 0x00;   /* PortA as input clock manipulation */
 DDRB = 0xff;   /* PortB as output for values on displays */   
 DDRC = 0x3f;    /* Pin C0-C5 as output*/
 DDRD = 0xff;    /*PortD as output for turning the displays/UART on*/
 
 /*The procedure to properly enable asynchr. in TC2 pp.132*/
 TIMSK &=~((1<<TOIE2)|(1<<OCIE2));/*Disable TC2 interrupt*/
 ASSR |= (1<<AS2);               /*set TC2 to be asynchronous*/
 TCNT2 = RESET_TIMER_2;           /*reset the TC register*/
 TCCR2 = PRESCALER_SECONDS;      /*prescale the timer to overflow every 1s*/
 /*while(ASSR & UPDATE_NOT_FINISHED);*//*wait until TC2 is updated*/
 TransmitString("Update Succeess!!");
 TIMSK |= (1<<TOIE2);            /*set 8-bit Timer/Counter2 Overflow*/
                                /*Interrupt Enable*/
 GLOBAL_INTERUPTS_ENABLED        /*global Interrupt Enable*/


kristal dela super, sem ga pogledal preko oscilatorja.

Torej je bodisi koda bodisi prevajalnik... Morebiti je pa logika okoli kristala znotraj AVRMEGA8535 nedelujoca?

pomeril sem se z osciloskopom vse skupaj. signal na pinih TOSC1 in TOSC2 plese, frekvenca ni niti priblizno stabilna, kaj sele 32kHz....

do prekinitev tako sploh ne pridem. drugace sem probal prižigati LEDiko, ampak kot rečeno do prekinitve ne pride, ker se časovnik ne premakne.
Seveda se niti ne more, ker ga baše ura.

Pomeril sem še glavno uro in tiktaka lepo pri 8 MHz.

morebiti ni pravi kristal? ampak v specifikacijah nisem našel nobenih posebnih zahtev razen frekvence.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika Časovni pas GMT + 1 ura, srednjeevropski - zimski čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
You cannot attach files in this forum
You cannot download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group