|
22 gennaio 08, 10:29 | #1 (permalink) Top |
User Data registr.: 22-01-2008
Messaggi: 4
| Pic Rs232
Ciao a tutti. Quello che avrei bisogno e' realizzare un multiplexr di segnali NMEA. Alla base del mio problema sta quale PIC utilizzare, considerando come vincoli il numero di entrate e uscite di cui avrei bisogno. In particolare, mi servirebbero 5 entrate RS232 e 2 uscite sempre RS232. Sapreste gentilmente indicarmi quale piu' potrebbe essermi utile...e se per caso avete letto in giro qualcosa di simile potreste inviarmi il link? Grazie a tutti. Ciao Fa |
22 gennaio 08, 20:26 | #2 (permalink) Top |
User Data registr.: 10-06-2007 Residenza: Sansepolcro (Ar)
Messaggi: 1.948
|
Non so se ci sia um micro con 7 rs232 hardware, certamente puoi farlo in maniera software anche se devi trovare compromessi tra le velocità di polling e l'aggiornamento dei dati. Se l'aggiornamento non deve essere veloce e puoi fare in modo che i dispositivi nmea sparino di continuo i dati, puoi permetterti di metterti in ascolto di una seriale alla volta per un certo tempo, per esempio 200ms in modo che nel giro di 1 secondo li hai ascoltati tutti. Ovviamente se da una seriale ricevi la stringa che aspetti poi passare subito all'altra in modo da accelerare il processo. Per le uscite non ci sono grossi problemi anche se le fai software dal momento che decidi tu quando sparare le stringhe. Io personalmente faccio grande use di basic sui pic, anche se è lento e occupa abbastanza memoria (rispetto all'assembler), è molto immediato come sviluppo e tratta abbastanza bene le seriali in modo software. Già lavorare in C sarebbe un vantaggio ma per me è uno sconosciuto... Ciao
__________________ Modifica Optic 8Ch ---- Luci Programmabili ---- RcSwitch ---- Il Mio Sito HK500GT & Flymentor - HK450 & SMPilot- SMTech450 & SMPilot --- SM-PILOT [ The Stabilizer ] |
23 gennaio 08, 08:34 | #3 (permalink) Top |
User Data registr.: 22-01-2008
Messaggi: 4
|
Grazie mille per la risposta. Sapresti indicarmi anche qualche link con qualcosa di simile a quanto mi hai descritto?? In particolare mi servirebbe aiuto per quanto riguarda l'individuazione dei PIC da utilizzare sia per swappare sulle N porte seriali, sia per il pic da programmare per fare il vero compito. Preferirei molto programmare il PIC in C. Grazie ancora. Fapic. |
23 gennaio 08, 13:16 | #4 (permalink) Top |
Guest
Messaggi: n/a
|
Ciao,fino a 19200 Baud/s con un (esempio) 16F84 a 4Mhz in Assembler riesci a leggere e scrivere contemporaneamente in real time cioè anche sovrappose come segnali tutte e 5 le porte,dipende poi come vuoi gestire internamente i dati.... Come Pic io ti consiglio il 16F628 che costa la metà del 16F84 e và fino a 20 Mhz,ha + memoria,+ porte ecc. (ti rimando al data Sheet) Comunque dipende poi da quello che devi fare,come sono legate le periferiche? Cioè il GPS ti dà una stringa al secondo o mezzo secondo,è fisso il tempo e non puoi leggere quando vuoi,se le altre periferiche sono MCU puoi usare un Pic serie 12 con 8 piedini configurando una Rs232 ed utilizzando il protocollo I2c per comunicare con le altre MCU essendo questo un protocollo bidirezionale studiato appositamente per gestire una linea multiutenza con gestione di attese,+ veloce ecc. In tal caso puoi programmare il Pic benissimo in Basic abbassando tantissimo i tempi di sviluppo e,se devi scabiare un mucchio di dati inserire una ram o Eeprom in I2c ed utilizzarla per memorizzare tutti i dati da passare che poi ogni MCU và a prendersi quando vuole o ne ha bisogno. Insomma puoi fare a tuo piacere,dipende tutto da che cosa vuoi fare,a cosa servono le altre 4 porte? Ciao! |
23 gennaio 08, 14:20 | #5 (permalink) Top |
User Data registr.: 22-01-2008
Messaggi: 4
|
Molto bene. Allora..le periferiche sono i vari strumenti presenti su un'imparcazione, quindi pilota automatico, bolinometro, GPS, ecoscandaglio, piu' un'uscita. Direi che usare un 16F628 puo' andare piu' che bene...sto cercando in rete qualche schema vedere qualche esempio per connettere almeno 2 rs232 al 16F628. se riesci a mandarmi qualcosa...te ne sarei molto grato. Il discorso del Pic serie 12 con 8 piedini per configurare un RS232...non mi e' molto chiaro...ovvero: Ogni PIC serie 12 serve per creare l'interfaccia tra l'rs232 e il protocollo I2C? Come capirai dalle mie domande...mi serve vedere qualche esempio per chiarirmi le idee.... grazie ancora...soprattutto per la pazienza. Ciao |
23 gennaio 08, 16:16 | #6 (permalink) Top |
Guest
Messaggi: n/a
|
Quindi adesso mi è tutto molto + chiaro ,bolinometro ed ecoscandaglio penso (correggimi se sbaglio) abbiano l'uscita come il GPS cioè ogni tot tempo inviano i dati,questi ovviamente devono essere gestiti in modo tale da poter leggergli indifferentemente dal momento di invio,anche sovrapposti. Il pilota automatico utilizzerà l'Rs232 come "porta" in sola ricezione quindi aspetta gli siano inviati i dati e l'altra uscita penso tu la voglia tenere per un eventuale Computer o quant'altro comunque immagino "un'uscita" dati che può aspettare.(si parla sempre di mS) A questo punto userei solo il 16F628,facciamo un pò di conti: premettendo che gli strumenti "trasmittenti" probabilmente (GPS sicuro) lavorano con codici ASCII possiamo configurare il tutto esempio a 4800 Baud ed abbiamo che una stringa da 8 Bit + 1 di inizio e 1 di fine ci mette (1s/4800Baud)*10bit = 2.083mS ed il singolo bit 0.2083mS o si può tradurre in 208.3 uS (microsecondi). Il Pic lavorando a 4Mhz in quel tempo (Assembler) esegue 208 istruzioni... Sono un'enormità per scansionare 3 porte visto che lo fai in poche istruzioni. Poi esagerando in quel tempo ti stà anche il ciclo per scrivere sulle uscite usando tutto a livello Software e ci puoi fare pure i calcoli (se serve interpretare le stringhe). Se lo usi in questo modo usi un solo piedino per porta visto che sarebbero unidirezionali e te ne resterebbero pure 11 libere...(quel pic ne ha 16) Tieni conto anche che 4Mhz sono con l'oscillatore interno al Pic mentre se usi un quarzo lo porti a 20Mhz di istruzioni in quel tempo al porto che 208 ne fai 1040!!! Ovvio che come software c'è un pò da lavorare specialmente se fai calcoli, se lo usi solo per trasferimento vai come una freccia (sempre assembler) Alternativa,investi un pò di + come soldi ((te la caverai con una ventina di Euro)) ti scarichi Mikrobasic (gratis non commerciale fino a 2K) ed usi un pic serie 12 con oscillatore interno ogni porta e in 20 minuti crei un programma di conversione di "standard" da Rs232 a I2C,sicuramente stai molto meno a livello di tempo ed usi un Pic Master ( 16F628 ) per gestire calcoli e conversioni dati, in Basic è una cosa immediata e la versione Free ti basta abbondantemente. Ovvio che stò parlando di piattaforme per uso non commerciale!!! Fammi sapere! |
Bookmarks |
| |
Discussioni simili | ||||
Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
Cavo rs232 per riceventi synt multiplex | Rondone_64 | Radiocomandi | 3 | 23 dicembre 06 22:11 |
usb rs232 converter | ady | Circuiti Elettronici | 29 | 18 aprile 06 12:53 |
Interfaccia rs232 o parallela x mx-12 jr | hasby | Simulatori | 2 | 13 dicembre 05 22:44 |