static promenne v codevisionu

admin.mtech admin.mtech@gmail.com
Čtvrtek Březen 5 12:58:48 CET 2009


pokial viem klucove slovo "static" vravi, ze nasledne deklarovana 
premenna bude mat priradene pamatove miesto aj po vyskoceni z funkcie. 
Cize sa z nej vlastne stane globalna premenna.
To ale nenamena, ze po starte programu bude mat premenna definovanu hodnotu.
Teoreticky by sa mala nastavit na 0. Prakticky ale treba vediet co s 
nou  (s jej pamatovym miestom) urobi cstartup.asm
Pokial sa pouzije (u IAR-a) klucove slovo _no_init_, tak sa nebude 
nulovat po resete.

Co vlastne od tej (tych) premennej potrebujete?

-mt-

Luboš Melichar  wrote / napísal(a):
> codevision 1.25.7a
>
> void Fce(void){
> 	static byte countCycle=0;
> 	static byte countCycle2=0;
>
> 	Vypis(countCycle);
> 	Vypis(countCycle2);
> }
>
> pri vypisu dostavam naprosto silene hodnoty, pokazdem resetu jine..
> jednou 52 a 47, po druhe 73, 47 atd...
> stack mam naddimenzovany..
>
> v cem ma codevision problem? reseni? asi nepouzivat static promenne..
> uz nekolikrat jsem je ale s uspechem pouzil, na problem jsem narazil
> az ted.
>
>
>
>   




Další informace o konferenci Hw-list