Keil - nowa wersja niekompatybilna ze starsza?



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "ArturVF500" <strobole_at_nospam_o2.pl>
Subject: Keil - nowa wersja niekompatybilna ze starsza?
Date: Thu, 28 Oct 2004 20:38:56 +0200


jakis czas term oprogramowalem '51 uzywajac keila bodajrze 6;
przy probie kompilacji 7 sa problemy... dokladniej z wywolywaniem procedury
z parametrem - z maina wywoluje bez klopotu, z innej procedury pojawia sie
ostrzezeine, a skompilowany program dziala nieprawidlowo... w przypadku
procedury bez parametru wszystko jest ok...
ma ktos pomysl jak zwalczyc problem?

pozdrawiam
Artur



========
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Andy" <anokWYTNIJ_at_nospam_ceti.pl>
Subject: Re: Keil - nowa wersja niekompatybilna ze starsza?
Date: Thu, 28 Oct 2004 20:53:58 +0200


Użytkownik "ArturVF500" <strobole_at_nospam_o2.pl> napisał w wiadomości news:clregg$r85$1_at_nospam_nemesis.news.tpi.pl...
jakis czas term oprogramowalem '51 uzywajac keila bodajrze 6;
przy probie kompilacji 7 sa problemy... dokladniej z wywolywaniem procedury
z parametrem - z maina wywoluje bez klopotu, z innej procedury pojawia sie
ostrzezeine, a skompilowany program dziala nieprawidlowo...
...

jaki konkretnie warning ?

--
Andrzej






========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.atman.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "ArturVF500" <strobole_at_nospam_o2.pl>
Subject: Re: Keil - nowa wersja niekompatybilna ze starsza?
Date: Thu, 28 Oct 2004 21:23:17 +0200


jaki konkretnie warning ?
juz opisuje dokladnie:
procedurka z ktora problem (uzyje nazw, zeby bylo latwiej) LCDpisz wywoluje
LCDputchar, ktora zamienia ciag znakow na chary i wyrzuca na wyswietlacz;
LCDpisz wywolywana z main pracuje bez zarzutu, wywolywana z innej procedury,
czy przerwania powoduje warning:
* WARNING L15: MULTIPLE CALL TO SEGMENT
SEGMENT: ?PR?_LCDPISZ?PROJEKT
CALLER1: ?PR?IT_T0?PROJEKT
CALLER2: ?C_C51STARTUP

zrobilem maly test i stworzylem procedurke wywolujaca tylko LCDpisz i
odpalilem ja z main; efekt byl taki, ze LCDpisz w kolko wyswietlal zadany
text, tak jak by nie wracal z wywolania; i oczywiscie na starszej wersji
keila dzialalo bez zarzutu,niesty po padzie systemu juz jej nie posiadam...

pozdrawiam
Artur



========
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "Andy" <anokWYTNIJ_at_nospam_ceti.pl>
Subject: Re: Keil - nowa wersja niekompatybilna ze starsza?
Date: Thu, 28 Oct 2004 21:31:30 +0200


Użytkownik "ArturVF500" <strobole_at_nospam_o2.pl> napisał w wiadomości news:clrgts$due$1_at_nospam_atlantis.news.tpi.pl...
jaki konkretnie warning ?
juz opisuje dokladnie:
procedurka z ktora problem (uzyje nazw, zeby bylo latwiej) LCDpisz wywoluje
LCDputchar, ktora zamienia ciag znakow na chary i wyrzuca na wyswietlacz;
LCDpisz wywolywana z main pracuje bez zarzutu, wywolywana z innej procedury,
czy przerwania powoduje warning:
* WARNING L15: MULTIPLE CALL TO SEGMENT
SEGMENT: ?PR?_LCDPISZ?PROJEKT
CALLER1: ?PR?IT_T0?PROJEKT
CALLER2: ?C_C51STARTUP
...

taki warnig oznacza, ze jedna procedura jest wywolywana z dwoch watkow

startup code ja wola ale nie wiem dlaczego, (moze cos inicjalizuje , jakies zmienne statyczne czy cos ?)
a Ty ja wolasz z przerwania timerowego jak sie domyslam po nazwie

trzeba sie zastanowic dlaczego startup code chce cos od tej procedury

jesli sie okaze, ze tak musi byc to funkcje trzeba zadeklarowac jako reentrant
i wtedy powinno dzialac tylko funkcja taka po kompilacji
bedzie troche bardziej rozpasiona

--
Andrzej




========
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!newsfeed.atman.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai

Poprzedni Następny
Wiadomość
Spis treści
From: "ArturVF500" <strobole_at_nospam_o2.pl>
Subject: Re: Keil - nowa wersja niekompatybilna ze starsza?
Date: Thu, 28 Oct 2004 22:15:30 +0200


jesli sie okaze, ze tak musi byc to funkcje trzeba zadeklarowac jako
reentrant
i wtedy powinno dzialac tylko funkcja taka po kompilacji
bedzie troche bardziej rozpasiona
niestety jako reentrant sie wysypuje... zauwazulem ze problemem jest wkaznik
w deklaracji procedury; bez wzgledu na to co jest wewnatrz, jezeli pojawia
sie wskaznik w deklaracji a wewnatrz jakiekolwiek wywolanie to pojawia sie
ow blad... nic to chyba dluga noc przede mna...
dzieki i pozdrawiam
Artur



========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mai