Niezmienność zmiennej w pętli while(1) w programie dla AVR ? co może być przyczyną?
C dla AVR problem
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
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
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