RTV forum PL | NewsGroups PL

Jak radzić sobie z zawieszającymi się procesami w NutOS przy użyciu avr-gcc?

[avr-gcc] NutOS

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak radzić sobie z zawieszającymi się procesami w NutOS przy użyciu avr-gcc?

Paweł K
Guest

Sat Oct 16, 2004 10:25 am   



Witam,
kozysta ktos z tego RTOS'a?
Mam pytanie czy jak sie powiesi (zapetli) jakis proces
to zwisa wszystko???

--

--
Best regards
K@pW from Poland

kpw(at)qs.pl
http://kpw.qs.pl
UIN: 8017753
GG: 1263183
---------------- end ----------------

Jan Dubiec
Guest

Sat Oct 16, 2004 11:16 am   



On Sat, 16 Oct 2004 13:25:42 +0200, "Paweł K" <kpw@qs.pl> wrote:
Quote:
Witam,
kozysta ktos z tego RTOS'a?
Tak.


Quote:
Mam pytanie czy jak sie powiesi (zapetli) jakis proces
to zwisa wszystko???
Tak, ponieważ Nut/OS używa cooperative multitasking. Czyli jeśli wątek/zadanie

dobrowolnie co jakiś czas "nie odda procesora" systemowi, to pozostałe
wątki/zadania "będą" wisieć. Mówiąc inaczej, koder co jakiś czas musi jawnie
zawołać funkcję NutThreadYield().

Regards,
/J.D.
--
Jan Dubiec, jdx#slackware.pl, mobile: +48 506 790442

Głęboka wiara wymaga płytkiego rozumu i nikłej wiedzy.

Paweł K
Guest

Sat Oct 16, 2004 8:49 pm   



Quote:
Tak, ponieważ Nut/OS używa cooperative multitasking. Czyli jeśli
wątek/zadanie
dobrowolnie co jakiś czas "nie odda procesora" systemowi, to pozostałe
wątki/zadania "będą" wisieć. Mówiąc inaczej, koder co jakiś czas musi
jawnie
zawołać funkcję NutThreadYield().

Mam przed oczami prosty przyklad z 3 watkami i kazdy z nich
ma jakies procedury w nieskonczonej petli for(;Wink{} to jak to jest ...

--

--
Best regards
K@pW from Poland

kpw(at)qs.pl
http://kpw.qs.pl
UIN: 8017753
GG: 1263183
---------------- end ----------------

Jan Dubiec
Guest

Sat Oct 16, 2004 9:57 pm   



On Sat, 16 Oct 2004 23:49:05 +0200, "Paweł K" <kpw@qs.pl> wrote:
Quote:
Tak, ponieważ Nut/OS używa cooperative multitasking. Czyli jeśli
wątek/zadanie
dobrowolnie co jakiś czas "nie odda procesora" systemowi, to pozostałe
wątki/zadania "będą" wisieć. Mówiąc inaczej, koder co jakiś czas musi
jawnie
zawołać funkcję NutThreadYield().

Mam przed oczami prosty przyklad z 3 watkami i kazdy z nich
ma jakies procedury w nieskonczonej petli for(;Wink{} to jak to jest ...
Ano tak to jest że powinno tam gdzieś być wywołanie w/w funkcji,

np. gdzieś na końcu pętli:

for (;Wink {
/*
* tutaj coś się robi
*/

NutThreadYield();
}

Należy też dodać że wywołanie niektórych funkcji systemowych również
może spowodować przełączenie kontekstu. Np. w powyższym przykładzie
zamiast NutThreadYield() mógłbyś użyć NutSleep(ilość_milisekund).

Regards,
/J.D.
--
Jan Dubiec, jdx#slackware.pl, mobile: +48 506 790442

Głęboka wiara wymaga płytkiego rozumu i nikłej wiedzy.

Paweł K
Guest

Sat Oct 16, 2004 11:09 pm   



Quote:
Należy też dodać że wywołanie niektórych funkcji systemowych również
może spowodować przełączenie kontekstu. Np. w powyższym przykładzie
zamiast NutThreadYield() mógłbyś użyć NutSleep(ilość_milisekund).
i wszysto jasne ... Chcialem sobie skompilowac prosty programik

obslugujacy UART, zaladowalem i nie dziala. Jak debugowac
to w avrsrudio? Chyba musze skrecic jakiegos jtaga :(

--

--
Best regards
K@pW from Poland

kpw(at)qs.pl
http://kpw.qs.pl
UIN: 8017753
GG: 1263183
---------------- end ----------------

Jan Dubiec
Guest

Sun Oct 17, 2004 7:28 am   



On Sun, 17 Oct 2004 02:09:29 +0200, "Paweł K" <kpw@qs.pl> wrote:
Quote:
Jak debugowac to w avrsrudio?
Nie mam pojęcia - nigdy nie używałem AVR-ów a tym bardziej AVRstudio. Smile


Quote:
Chyba musze skrecic jakiegos jtaga Sad
No AVRy mają jakiś interfejs ISP ale to zdaje się nie jest JTAG. No

chyba że mówiąc JTAG miałeś na myśli kawałek płytki z HC244 służącej
do podłączenia AVR-a z pecetem. :-)

Regards,
/J.D.
--
Jan Dubiec, jdx#slackware.pl, mobile: +48 506 790442

Głęboka wiara wymaga płytkiego rozumu i nikłej wiedzy.

sobol
Guest

Sun Oct 17, 2004 9:52 am   



Quote:
Chyba musze skrecic jakiegos jtaga Sad
No AVRy mają jakiś interfejs ISP ale to zdaje się nie jest JTAG.
Niektore AVR-y maja JTAG np.ATMega128


ps. ostatnio ktos sie chwalil nawet ze sobie zmontowal jtaga
pozdr
sobol

Wojtek Kaniewski
Guest

Sun Oct 17, 2004 12:27 pm   



sobol wrote:
Quote:
Niektore AVR-y maja JTAG np.ATMega128

bodajże od ATmega16 w górę to już standard

Quote:
ps. ostatnio ktos sie chwalil nawet ze sobie zmontowal jtaga

wiesz, jeśli komuś potrzebny tylko do programowania pamięci, a nie do
debugowania, to wystarczy http://warmcat.com/milksop/cheaptag.html

w.

elektroda NewsGroups Forum Index - Elektronika Polska - Jak radzić sobie z zawieszającymi się procesami w NutOS przy użyciu avr-gcc?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map