Pages: 1 ... 24 25 [26] 27 28 ... 31   Go Down
Author Topic: leOS - un semplice OS per schedulare piccoli task  (Read 37761 times)
0 Members and 1 Guest are viewing this topic.
0
Online Online
Faraday Member
**
Karma: 47
Posts: 5909
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non ho capito  smiley
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

le librerie vengono importate direttamente dallo .zip ma non vanno in libraries dell'IDE ma in una cartella dentro alla cartella Sketch. E' una scelta intelligente perche' quando si cancella l'ide vecchio non si perde nulla, ne' gli sketch ne le librerie
Se ti ricordi io ho sempre suggerito di mettere le librerie di terzi proprio sotto /sketchbook/libraries per evitare i problemi che hai menzionato te  smiley-wink
Logged


0
Online Online
Faraday Member
**
Karma: 47
Posts: 5909
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

yes, quando lessi la caratteristica dissi, questo lo ha gia' inventato Leo  smiley-lol

tu hai capito cosa intende Lesto ? mi sembra che dica che in alcune condizioni questa idea crea problemi ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

tu hai capito cosa intende Lesto ? mi sembra che dica che in alcune condizioni questa idea crea problemi ?
So a cosa si riferisce, ed è in pratica una specie di sua personale "guerra santa" nata qualche mese fa  smiley-yell
Se non ricordo male, propose anche un hack per sistemare quello che a lui pareva un bug dell'IDE, che cioè secondo i suoi test pareva ignorare le cartelle /utility contenute in una lib in fase di compilazione, quando l'IDE estraeva dalle cartelle i file .cpp ed .h
Ora di preciso non mi ricordo cos'è che a lui non tornava né in che condizioni si manifestava il problema, per cui sarebbe meglio aspettare un suo intervento  smiley-wink

PS:
vedo con piacere che nessuno ha provato il leOS2 2.1... ottimo...  smiley-sweat smiley-sweat
Logged


0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10474
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

guarda, sinceramente alla luce dei nuovi ide devo capire anche io cosa succede, però prima era che la utility era l'unica cartella NON ignorata, e importata in modo non standard
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Nuove versioni delle libreries (leOS 1.0.3 e leOS 2.1.1) che aggiungono la possibilità di far eseguire un task nel momento stesso in cui viene aggiunto allo scheduler. Per far ciò basta usare la parola chiave SCHEDULED_IMMEDIATESTART come stato del task al momento dell'aggiunta allo scheduler.

Ecco un esempio di utilizzo:
Code:
myOS.addTask(miaFunzione, intervallo, SCHEDULED_IMMEDIATESTART);
In questo modo il task miaFunzione sarà eseguito subito e poi dopo ogni intervallo.
Prima invece un task veniva eseguito la prima volta solo dopo il tempo stabilito per intervallo.
Logged


Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

PS:
sul forum internazionale gli RTOS in queste ultime settimane sono spuntati come funghi  smiley-yell

RTuinOS
Avr-OS
SCoop

Più i soliti port di FreeRTOS e ChibiOS/RT per Arduino fatti da fat16lib.
Logged


Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Letture per le feste smiley
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Letture per le feste smiley
L'ultimo arrivato RTuinOS, ha un PDF da 40 pagine  smiley-sweat
Lo sto leggendo la sera.

Cmq dico una cosa. Tutti gli RTOS che ho visto sono sicuramente belli, funzionanti, veramente RT, con prelazione, cooperativi ecc... ma facili come il leOS nessuno  smiley-wink
Vabbè che non è un RTOS però sfido a trovare uno scheduler più facile da usare  smiley-razz
Logged


Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ogni scarrafone... smiley-grin

Non l'ho ancora usato in modo estensivo, ma ho un tarlo che mi rode le cervela... ed è il fatto che il codice utente di fatto è una ISR... Qualche problema lo dovrà pur dare, no ? (si scherza... smiley )
Logged

0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10474
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sì ma più o meno aggirabile, vedi discussione precedente
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ogni scarrafone... smiley-grin

Non l'ho ancora usato in modo estensivo, ma ho un tarlo che mi rode le cervela... ed è il fatto che il codice utente di fatto è una ISR... Qualche problema lo dovrà pur dare, no ? (si scherza... smiley )
Se dentro alla ISR ci infili di tutto, sostituendo in pratica il loop principale con un task, allora la risposta è sì. Se usi i task per piccoli compiti, di problemi non dovresti averne.

Considera che gli RTOS che ho citato (avr-os, RTuinOS, SCoop) consumano ben 256 byte di RAM per ogni task! Una cifra che li preclude all'utilizzo sui piccoli Tiny, dove alle volte la Ram è pari o inferiore a quest valore. Il leOS invece funziona egregiamente anche in queste condizioni
Logged


Genova
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3391
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Lo sketch di esempio leOS2_use_of_reset.ino mi ha creato per 2 volte il blocco dell'AVR sul mio 2560, entrambe le volte ho dovuto applicare la manovra di emergenza.

ciao
Logged

no comment

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Lo sketch di esempio leOS2_use_of_reset.ino mi ha creato per 2 volte il blocco dell'AVR sul mio 2560, entrambe le volte ho dovuto applicare la manovra di emergenza.

ciao
Con che versione?
Preciso che la 2.0.90 aveva la gestione del reset buggata. La 2.1.0 ha rimediato a quei problemi.
Logged


Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22813
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Lo sketch di esempio leOS2_use_of_reset.ino mi ha creato per 2 volte il blocco dell'AVR sul mio 2560, entrambe le volte ho dovuto applicare la manovra di emergenza.

ciao
Con che versione?
Preciso che la 2.0.90 aveva la gestione del reset buggata. La 2.1.0 ha rimediato a quei problemi.
Pablos, potresti confermarmi la versione che stai usando?
Non avendo una MEGA, non posso riprodurre l'eventuale bug  smiley-sweat
Logged


Pages: 1 ... 24 25 [26] 27 28 ... 31   Go Up
Jump to: