Serial1-3 tipo di dato.

Salve!
Ma i vari Serial1..3 del Mega a che tipo di dato corrispondono?
Dovendo fare una classe che accetta nel costruttore una seriale, come faccio a passare la corretta seriale come riferimento?
Grazie 1000 a tutti
Dino

Il riferimento è a delle funzioni che lavorano con una serie di indirizzi fisici in memoria (vedi datasheet del micro) a seconda della seriale 1, 2 o 3.

Per quello che vuoi fare tu devi passare un puntatore alla funzione... (ma se non sai usare i puntatori potresti ritrovarti in un mare di c...a! :stuck_out_tongue: )

Comunque sia, per farti un'idea leggiti queste discussioni:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1201746843
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1248867829

e se vuoi approfondire ancora meglio fai una ricerca con google con questa query "arduino pointer function"

Ciao kokiua,
Grazie innanzitutto per la risposta.
Lavorare con i puntatori non è un problema, tuttavia, con una prima occhiata ai link che mi hai postato non leggo di cose che fanno al caso mio.
Credo che le varie Serial, Serial1.. Serial3 siano istanze di una stessa classe... il problema e che non riesco a vedere quale...

Se hai voglia di scoprirlo devi dare uno sguardo dentro alla libreria già presente nel software di Arduino.
La libreria la trovi in libraries/SoftwareSerial con i file SoftwareSerial.h e SoftwareSerial.cpp
Con il mio Mac per accedere alle librerie procedo così:
Tasto destro sull'icona di Arduino (Arduino.app) scegli "Mostra contenuto pacchetto", quindi navighi dentro Contents -> Resources -> Java -> libraries
con winzoz non so (e tanto meno con linux dove forse però è più simile a MacOSX)

per leggere il contenuto delle librerie su window$ tasto destro sul file ed "apri con" wordpad
su linux puoi darle in pasto a vim, ma se usi linux magari lo sai già... :wink:

Grazie a tutti.
Allora. Penso che kokiua si riferisce all'opcode java e non al file di testo cpp o h. Non sono così a terra :slight_smile:
Ho dato un'occhiata a SoftwareSerial, ma quella è la libreria software appunto ed io uso il Mega proprio perchè ho necessità di avere 3 seriali distinte, ognuna col proprio stato. la SWSerial ha dei limiti in questo. Referenziandone una si perde lo stato delle altre...
Penso tuttavia che il puntatore a funzione sia la soluzione migliore.
In effetti leggendo meglio il primo post di kokiua (madò che nome difficile!) ho capito cosa intendeva.
Grazie 1000, spero di risolvere rispolverando il Deitel & Deitel..

Penso che kokiua si riferisce all'opcode java e non al file di testo cpp o h. Non sono così a terra

:frowning: mi spiace che tu abbia frainteso, e probabilmente non usi un Mac altrimenti non avresti fatto questa affermazione palesemente errata! ...
Che ti piaccia o no, nel Mac le librerie si trovano sotto la directory Java e questo non comporta che i file debbano per forza essere PER java!!!

Mi sarebbe piaciuto di più un intervento del tipo: "sei sicuro che si trovino sotto la directory Java, mi sembra molto strano..." :frowning:

In merito poi al tuo problema, direi che probabilmente stai "lottando" con il fatto che il Mega sia un prodotto non ancora totalmente supportato da Arduino e che quindi, se vorrai usarlo appieno, dovrai accettare di leggerti TUTTO il datasheet e scriverti le funzioni che ti servono e magari anche in ASM (e sono certo che anche in questo sarai ferratissimo...)
Del resto è come fanno ed hanno fatto tutti quelli che sino ad oggi hanno programmato microprocessori senza supporti progrediti come Arduino ... (tra l'altro in modo del tutto gratuito :wink: )

magari cerca una cosa simile...

c'è l'esempio con il mega,
ma magari non ho capito la domanda :-/

Oddio.
Credo che ci sia un grosso frainteso.
Innanzitutto scusate se assolutamente senza volerlo ho offeso qualcuno. Non era mia intenzione.
Non conosco il MAC, ma un file .app con un contextmenu "mostra contenuto pacchetto" mi davano l'impressione di far altro.
Ad ogni modo, no, non è necessario leggersi il datasheet o lavorare in ASM. La dritta dei puntatori a funzione fa perfettamente al caso mio e sto cercando di risolvere in questo modo.
grazie di nuovo.
Dino

OT (ma inevitabile)
.app NON è un file (nel senso comune nel quale è definito) bensì una speciale directory che nel Mac contiene tutti i files necessari all'applicazione. Di fatto nel Mac un programma è un "contenitore" accessibile SOLO mediante quel comando (che ho citato) per semplificare la vita all'utente normale, che con il semplice comando "apri" avvia l'applicazione (che risiede all'interno del "contenitore").
Tanto è vero che sul Macintosh OS X per installare un'applicazione è sufficiente "copiarla" in una qualsiasi directory accessibile all'utente, e per cancellarla si fa altrettanto (non come in winzoz che l'installer ti riempie di file sparpagliati qua e la, tanto che senza la procedura inversa cancellare qualcosa ti lascia l'hd pieno di roba inutile)

L'irritazione è ed era inevitabile, visto che con la tua "battuta" hai voluto mostrare che non dovresti essere un novellino, sottintendendo così che forse io possa averti "sottovalutato" o, peggio ancora, io potessi ignorare una cosa cosi "scontata" come quella del Java (.. peccato che la "pestata" l'abbia invece fatta tu... :wink: )

Io di solito mi astengo dal parlare di argomenti che non conosco, ma non tutti siamo uguali... :-/

Con questo spero che l'argomento OT sia chiuso e che sia stata un'ottima occasione per conoscerci meglio (per queste cose credo sia meglio l'uso del messaggio personale)

Odio queste cose. Soprattutto quando non ce n'è motivo:
La risposta "non sono così' a terra" era riferita al post di brainbooster
il quale, scriveva:
"per leggere il contenuto delle librerie su window$ tasto destro sul fie ed "apri con" wordpad"
Ho messo l'emoticon del sorriso proprio perchè - appunto - di battuta si trattava.
Non ho necessità di mostrare a nessuno che so aprire un file di testo (?????)
Mi sono anche scusato se, inavvertitamente, qualcuno si fosse offeso per ciò che ho detto: Sortendo l'effetto contrario. Nè mi sognerei di fare flame o bacchettare qualcuno per una cosa così sciocca.
Si, non siamo tutti uguali. Consentimelo. Per fortuna.

ha, allora mi dovrei incaxxare io...
ma oggi è venerdì e potete dirmi di tutto ;D
dai, visto che l'argomento potrebbe essere interessante per altri chiudiamo dicendo che è colpa mia