Newsgroup: it.hobby.elettronica.digitale
Titolo: ma esiste un pic

che abbia una seriale e un bus i2c?
non riesco a capire se i pic hanno un'unica porta che può furnazionare in
due modi distinti o se sono due porte diverse...

 due modi distinti o se sono due porte diverse...
prima di tutto dipende dal tipo di PIC che vuoi usare, ne esistono di tipi
differenti e non tutti mettono a disposizione
dell'utente entrambe le porte di comunicazione da te citate.
In particolare la porta seriale, genericamente denominata USART, se presente
occupa due pin che in tutti i PIC
sono contraddistinti da TX ed RX, ad esempio per la famiglia PIC16F87X con
package DIP il pin 25 tra le altre
funzioni si comporta come TX per la seriale, mentre il pin 26 si comporta
come RX. Quando non usati per la seriale questi pin assolvono le funzioni di
normale IO. Per la seriale vale la pena spendere ancora due parole, infatti
esistono due modalità con cui puoi far funzionare il modulo seriale:
1) Sincrono (master / slave)
2) Asincrono (full duplex)
i pin utilizzato sono sempre gli stessi, ma vengono associati nomi
differenti per ricordare che il protocollo risulta differente, in
particolare avrai  CK (clock) e DT (data) per la modalità sincrona (che si
differenzia ancora in modalità
master oppure slave). Per la modalità asincrona i pin sono referenziati
mediante le etichette TX ed RX rispettivamente per trasmettere e ricevere
dati (devi anche impostare mediante i registri associati il Baud rate, il
numero di bit, se vuoi il bit di parità ecc...).
Per il bus I2C oppure SPI devi fare riferimento al modulo MSSP (Master
Synchronous Serial Port) che consente di utilizzare un tipo di interfaccia
seriale utile per comunicare con altri dispositivi in particolare altri uP
oppure device
che supportino la comunicazione seriale. Tieni presente che sia I2C/SPI che
USART supportano protocolli di tipo seriale, cioè comunemente vengono
chiamate interfaccie seriali, ma l'utilizzo è per ambiti differenti, il
protocollo I2C (Inter IC Bus) sviluppato inizialmente dalla Philips serviva
per permettere la comunicazione fra chip a livello di scheda, mentre la
seriale normalmente nota come RS232/422/485 è nata con l'intento di rendere
possibile la comunicazione fra sistemi di tipo differente, quindi anche
distanti fisicamente fra di loro.
Dopo questa premessa veniamo al bus I2C oppure SPI, per I2C il PIC non
supporta tutte le funzionalità ed in particolare è implementata
completamente l'interfaccia I2C in modo master e slave per il PIC16F87X, ma
per altri modelli di PIC mi sembra che l'implementazione sia di tipo
parziale.
Il bis I2C, nella sua forma più essenziale, utilizza solo due linee per la
comunicazione con il device esterno SCL per il clock ed SDA per il dato. Per
il bus SPI, utilizzi tre linee che fanno capo ad altrettanti pin del uP
(SDO, SDI, CLK).
Se ti serve altro a disposizione, in ogni caso ti consiglio di leggere il
data-sheets del PIC16F87X per avere maggiori
info.
Ciao
Pow
----------------------------------------------------
Ama il tuo mestiere con passione
E' il significato della tua vita
Auguste Rodin (1840-1917)

 due modi distinti o se sono due porte diverse...
prima di tutto dipende dal tipo di PIC che vuoi usare, ne esistono di tipi


Ciao, Ottavio!
Il giorno 11/05/2003 alle ore 12:27 hai scritto:
 OC> che abbia una seriale e un bus i2c?
 OC>
 OC> non riesco a capire se i pic hanno un'unica porta che può furnazionare
 OC> in due modi distinti o se sono due porte diverse...
Basta guardare nel datasheet se le funzioni i2c e seriale sono sullo stesso
pin o su pin diversi. Se non ricordo male il 16F877 ha le funzioni i2c e
seriale distinte e indipendenti.
Bye