Niezmienność zmiennej w pętli while(1) w programie dla AVR ? co może być przyczyną?

C dla AVR problem





Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: C dla AVR problem
Date: Sun, 13 Nov 2005 21:15:35 +0100


Witam mam problem
chce w petli nieskonczonej zmieniac wartosci zmiennej i ja wykorzystywać w
przerwaniu do wyswietlania na wysw. led
i w tym programie co napisalem przed wejsciem do while(1)
"zmienna" jest zmieniana prawidłowo

a po wejsciu sie nie zmienia

nierozumiem czemu?


..............
zmienna = pgm_read_byte(&wzor_cyfr[1]); //działa ok

while(1)
{
zmienna = pgm_read_byte(&wzor_cyfr[2]); // nic sie nie zmienia czemu?
}
................


AzaZeL



Poprzedni Następny
Wiadomość
Spis treści
From: Waldemar Krzok <waldemar.krzok_at_nospam_t-online.de>
Subject: Re: C dla AVR problem
Date: Sun, 13 Nov 2005 21:33:27 +0100


AzaZeL wrote:
Witam mam problem
chce w petli nieskonczonej zmieniac wartosci zmiennej i ja wykorzystywać w
przerwaniu do wyswietlania na wysw. led
i w tym programie co napisalem przed wejsciem do while(1)
"zmienna" jest zmieniana prawidłowo

a po wejsciu sie nie zmienia

nierozumiem czemu?


..............
zmienna = pgm_read_byte(&wzor_cyfr[1]); //działa ok

while(1)
{
zmienna = pgm_read_byte(&wzor_cyfr[2]); // nic sie nie zmienia czemu?
}

tyż nie całkiem ta grupa, ale nie zmienia się prawdopodobnie dlatego, że
kompilator ci zoptymalizował kod. Zadeklaruj odpowiednie zmienne jako
volatile i powinno chodzić.

Waldek

Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: Re: C dla AVR problem
Date: Sun, 13 Nov 2005 21:49:47 +0100


ok działa wielkie dzieki

AzaZeL