Pages: 1 [2] 3 4   Go Down
Author Topic: RTOS  (Read 1829 times)
0 Members and 1 Guest are viewing this topic.
Ivrea
Offline Offline
God Member
*****
Karma: 5
Posts: 680
"La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché." Albert Einstein
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il problema è uno solo: io quei micro non li conosco, non sono sicuro (almeno in tempi ragionevoli) di renderli operativi, e per di più gli ambienti di sviluppo costano. Questo implica che se volessi provare ad usarli me li devo comprare io perché l'azienda per la quale lavoro non mi darebbe i soldi solo per fare delle prove e poi magari non fa nemmeno al caso nostro...
Logged

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

@janos:
non volevo sconsigliarti gli Arduino, volevo solo capire.
Se decidessi di usare questa scheda con l'IDE di Arduino ed un porting di un RTOS, se succede un problema software, chi ne risponde? Te?  smiley-wink
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Il problema è uno solo: io quei micro non li conosco,

La domanda è obbligatoria smiley
Allora vuol dire che conosci a fondo il micro usato sulla DUE ?
La questione è esattamente la stessa, studiare un micro o un altro richiede lo stesso tempo e comunque per gli STM32 esiste il MikroC che è semplice quanto l'ambiente di Arduino, però è più efficiente come compilatore, e ci sono ambienti di sviluppo, totalmente free, basati su Wiring con l'IDE identico a quello di Arduino.

Logged

Ivrea
Offline Offline
God Member
*****
Karma: 5
Posts: 680
"La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché." Albert Einstein
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Dai, voglio provare... Solo che non riesco a capire "cosa mi serve"...  smiley-sad-blue
Mi dai il link (specifico) di qualcosa per partire? Ovvero scheda di test, ambiente di sviluppo e documentazione (in altre parole dammi i compiti per casa...  smiley-wink) THANKS...  smiley-mr-green
« Last Edit: March 20, 2013, 05:47:46 am by Janos » Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Dai, voglio provare... Solo che non riesco a capire "cosa mi serve"...  smiley-sad-blue
Mi dai il link (specifico) di qualcosa per partire? Ovvero scheda di test, ambiente di sviluppo e documentazione (in altre parole dammi i compiti per casa...  smiley-wink) THANKS...  smiley-mr-green

Ok, come scheda ti consiglio questa, monta il processore più "grosso" della famiglia e come vedi costa pochissimo, il prezzo è basso perché le schede sono prodotte direttamente da ST utilizzando solo loro componenti e la danno via al puro prezzo di costo (loro).
Come compilatore per iniziare prova il MikroC Arm, se non registrato compila fino ad eseguibili di 32k senza alcuna limitazione nelle funzionalità e/o salvataggi, bastano per fare tutte le prove che desideri e riesci a realizzare anche programmi relativamente complessi.
Il bello del MikroC è che ha un IDE molto amichevole e il C/C++ è supportato da moltissime funzioni di libreria che rendono semplice l'uso delle periferiche, tutte, anche senza doverle studiare, cosa comunque da fare per lo step successivo, in pratica la semplicità di programmazione è la stessa offerta da Arduino.
Una volta che hai preso confidenza con il micro puoi passare direttamente al gcc arm, ovvero lo stesso compilatore usato per Arduino DUE, qui puoi scegliere se usare come IDE Eclipse, Netbeans, oppure quello Arduino Like, in alternativa c'è un ottimo sistema di sviluppo, completo di tutto, totalmente free però è abbastanza complesso da utilizzare e richiede di perderci del tempo, in compenso ha una estesa libreria di supporto, per quasi tutti i micro ARM, che semplifica molto la vita.

Logged

Ivrea
Offline Offline
God Member
*****
Karma: 5
Posts: 680
"La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché." Albert Einstein
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ma quelle schedine Discovery hanno processori che possono andare a 170MHz e montano oscillatori a 8MHz?

P.S. Ma un po' di documentazione per quel mikroC? Non trovo niente...
« Last Edit: March 20, 2013, 07:38:59 am by Janos » Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ma quelle schedine Discovery hanno processori che possono andare a 170MHz e montano oscillatori a 8MHz?

Certo, pure il tuo pc ha un quarzo da 10-20 MHz però il micro lavora a tot GHz, dentro il micro c'è un complesso sistema di pll, prescaler e postscaler che permette di ottenere quasi qualunque frequenza operativa partendo da un ampio range di frequenze in ingresso.
La gestione del clock degli STM32F4 è molto flessibile e complessa da implementare, ST ha rilasciato un apposito sheet Excel che calcola in automatico come impostare i vari parametri del clock in base alla frequenza input (quarzo) e quella operativa, non solo il Core lavora a una frequenza e le periferiche a una frequenza/e diversa perché ci sono dei limiti operativi da rispettare.
Però adesso non ti spaventare per questa cosa perché trovi tutto già pronto e tabellato, oppure usi lo sheet Excel e in un attimo hai la configurazione per il clock.
Logged

Ivrea
Offline Offline
God Member
*****
Karma: 5
Posts: 680
"La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché." Albert Einstein
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ah, ok... =) Comunque non mi prendere a noia ma non ho capito come utilizzare i vari tool su quella schedina...
Inoltre non mi è chiaro come posso farci "qualcosa"... Ad esempio, c'è una porta seriale? Dove? C'è il max232 o equivalente?
E' possibile fare un debug?

Fai conto che devo partire da zero, dove posso trovare un po di documentazione?

P.S. Capisci me che essendo profano degli ARM e trovandomi davanti una schermata dove mi chiede Internal ed External high-speed oscillator, clock security system enable, main pll, plli2s, etc....... (tutte configurazioni del mikroC) mi trovo un attimo spiazzato....
« Last Edit: March 20, 2013, 08:11:44 am by Janos » Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ad esempio, c'è una porta seriale? Dove? C'è il max232 o equivalente?

L'STM32F4 ha ben sei porte seriali, tutte CMOS/TTL, e moltissime altre periferiche come I2C, SPI, ADC, CAN, Ethernet (solo MAC, serve un PHY aggiuntivo), USB OTG (Host e device), etc.

Quote
E' possibile fare un debug?

Certamente e di tipo hardware, sulle schede Discovery oltre al micro c'è anche un programmatore/debugger hardware ST Link V2, è utilizzabile anche per programmare micro stand alone, si collega al pc tramite USB e lo puoi utilizzare sia con il suo software stand alone che tramite IDE dell'ambiente di sviluppo, il MikroC lo supporta direttamente.
In pratica è come avere un Avr Dragon sulla tua scheda, giusto per fare un paragone col mondo Arduino smiley

Quote
Fai conto che devo partire da zero, dove posso trovare un po di documentazione?

Ovviamente sul sito ST, nella pagina dedicata alla scheda puoi scaricare il suo reference, il software di esempio completo delle librerie, poi ti devi scaricare il data sheet del micro e il reference per i core Cortex M4, questo non ti serve subito però fa comodo averlo.

Quote
mi davanti una schermata dove mi chiede Internal ed External high-speed oscillator, clock security system enable, main pll, plli2s, etc....

Capisco benissimo, ti consiglio di guardare, e copiare, dai vari esempi forniti con il compilatore, ce ne sono diversi specifici per il micro usato sulla Discovery, ti allego un semplice progetto di prova che ho realizzato io per la STM32F4, è uno switch/mixer midi, usa tutte e sei le seriali, un display grafico 128x64 e un encoder ottico come manopola, oltre ad avere un base specifica per questa scheda hai anche il setup del clock pronto all'uso smiley


* STM32f4 Discovery test.rar (241.3 KB - downloaded 7 times.)
Logged

Ivrea
Offline Offline
God Member
*****
Karma: 5
Posts: 680
"La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché." Albert Einstein
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Semplice?  smiley-razz smiley-razz smiley-razz
Vabbè, dai, vedo di portarne a casa una e quando sarò riuscito a far lampeggiare un paio di led vedrò come fare per andare avanti... =)
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Semplice?  smiley-razz smiley-razz smiley-razz

Dal mio punto di vista è semplice smiley
Logged

Ivrea
Offline Offline
God Member
*****
Karma: 5
Posts: 680
"La teoria è quando si sa tutto ma non funziona niente. La pratica è quando funziona tutto ma non si sa il perché. In ogni caso si finisce sempre con il coniugare la teoria con la pratica: non funziona niente e non si sa il perché." Albert Einstein
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Eh già...
Peccato che dove lavoro non ci sia una persona che mi possa fare da mentore come te per queste cose... Qui i softwaristi che ci sono si dividono in due: quelli che lavorano con lo Z80 e quelli che lavorano con i PLC. Solo una persona, oltre a me, sta nel mezzo e fa entrambe le cose, e comunque non c'è nessuno che si occupi dei microcontrollori... Per vedere di farli entrare in azienda li ho convinti a prendermi un Arduino per gestire questa comunicazione ModbusTCP...
Ad ogni modo questa cosa ormai è fatta, e visto che l'Arduino Uno mi sta stretto come RAM e la MEGA costa quanto la DUE mi farò prendere una Due... Fermo restando che inizierò a studiarmi anche gli STM32...  smiley-wink
Logged

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

Fermo restando che inizierò a studiarmi anche gli STM32...  smiley-wink
Poi ti dovrò bannare, lo sai?  smiley-yell smiley-yell

PS:
cmq quella schedina volevo prendermela anch'io...  smiley-sweat smiley-sweat
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

cmq quella schedina volevo prendermela anch'io...  smiley-sweat smiley-sweat

No, tu devi prendere Linuxino smiley
Logged

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

No, tu devi prendere Linuxino smiley
Siorsì Signore!
Logged


Pages: 1 [2] 3 4   Go Up
Jump to: