La seriale é fatta così?

Salve Ng, una delucidazione

Se io invio un carattere nella seriale dal pin3 uscirà un segnale con questa forma?

S 1 2 3 4 5 6 7 8 P E __ __ __ __ __ __ __| |__| |__| |__| |__| |__| |__

Dove: S = bit di start

1-8 = bit dati che possono essere 0 o 1 a seconda del dato P = bit di parità E = bit di stop

in particolare quello che non capisco é:

la parità é facoltativa? ma lo stop é positivo o negativo? Il bit di stop dura come gli altri? i bit dati sono sempre 8 o anche meno?

Grazie

--
Gibe
Modena Italy
Utente Macintosh dal 1991
gibe[chiocciola]gosseyn[punto]com
Reply to
Gibe
Loading thread data ...

Il 25 Apr 2005, 03:32, Gibe ha scritto:

Quasi esatto. In realta' sulle linee della RS232 i segnali sono negati. Cioe' lo 0 logico corrisponde ad una tensione positiva, mentre l'1 logico e' una tensione negativa.

Si'.

Lo stop corrisponde allo 0 logico, cioe' tensione positiva se riferita all' RS232.

Di solito si', ma e' programmabile a 1, 1.5 o 2 bit. Tieni presente che questo e' il tempo che viene inserito dall'UART quando c'e' una trasmissione continua di dati. Se i dati vengono trasmessi con delle pause, per esempio nel caso della tastiera di un terminale, la durata dello stop e' indefinitivamente lunga.

Anche meno, ma in teoria potrebbero essere anche di piu'. Normalmente le UART possono essere programmate per trasmettere dati a 5, 6, 7, 8 bit.

Tutto chiaro adesso? Ciao.

-------------------------------- Inviato via

formatting link

Reply to
brown fox

"Gibe" ha scritto nel messaggio news: snipped-for-privacy@powernews.iol.it...

Esatto, solamente che il bit di stop è negato rispetto allo start bit. Tu hai indicato lo start bit come un livello alto, che corrisponde allo 0 logico... infatti la seriale in "posizione di riposo" si trova al livello logico 1, è a questo livello che lo stop bit riporta il segnale!

Si

Vedi sopra

I bit durano tutti allo stesso modo, ma per alcuni protocolli i bit di stop potrebbero essere anche 2. Inoltre capisci anche da solo che se trasmetti un solo byte il bit di stop si fonde con lo stato di riposo della seriale quindi la sua durata tende all'infinito! :-)

Di solito 8, ma anche 7. Questo perché 7 bit servono per codificare un carattere ASCII e 8 bit compongono un byte, ma nulla vieta di fare diversamente...

J.

Reply to
Regae

"Gibe" ha scritto

formatting link

Per parita' stop ecc hanno gia' detto gli altri.

ciao Claudio F

Reply to
Claudio F

Cut-----------

Molto esauriente, adesso il mio vero dubbio, questi 2 segnali sono validi (ho girato i livelli che adesso sono corretti e ho tolto la parita)?

S 1 2 3 4 5 6 7 8 E __ _______________________________ |__|

S 1 2 3 4 5 6 7 8 E __ ___________________ |______________|

In pratica nel primo esempio ho tutti i bit dati a 0 e nel secondo 4 a 1 e 4 a 0 Segnali del genere possono essere qualunque cosa, anche un rimbalzo di un contatto meccanico La seriale su cosa si basa per sapere che il byte é terminato? Dato il fronte di discesa del bit di start attende un tempo "T" pari a 10 "t" (t=durata di un singolo impulso impostato nei parametri della seriale) e considera chiuso il byte o cosa?

Grazie di tutto

--
Gibe
Modena Italy
Utente Macintosh dal 1991
gibe[chiocciola]gosseyn[punto]com
Reply to
Gibe

"Gibe" ha scritto nel messaggio news: snipped-for-privacy@powernews.iol.it...

I due segnali sono entrambi validi

Hai girato i segnali... quindi avendo negato la negazione hai la forma vera, nel primo segnale stai trasmettendo tutti 1, nel secondo quattro 1 e quattro

0.

Di solito non si collega un pulsante alla seriale! :-)

Quasi! In realtà dopo il fronte di discesa attende 1 bit e mezzo e campiona per 8 volte (se i bit dati sono 8) a distanza di un bit, infine controlla se il bit successivo è 1 (stop bit). Se lo stop è 1 mette il dato in coda, se è

0 restituisce un errore.

J.

Reply to
Regae

Multimetro alla mano a riposo la seriale del mio computer segnala sul pin 3 -5V (gnd pin 5), che in teoria non é ne TTL ne EIA, cosa devo pensare? Devo collegare alla seriale un cip CMOS alimentato a 5V, devo fare un adattatore o funziona lo stesso (in realta funziona perche l'ho gia fatto ma era per stare sul sicuro)?

--
Gibe
Modena Italy
Utente Macintosh dal 1991
gibe[chiocciola]gosseyn[punto]com
Reply to
Gibe

Gibe ha scritto:

Andando a memoria: Mi sembra che il segnale uscisse dal pin 2.

Giuliano

--


questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news segnala gli abusi ad abuse@newsland.it
Reply to
JUL

Pestando alacremente sulla tastiera Gibe ebbe l'ardire di profferire:

Appena dopo l'inizio del bit di stop attende t+1/2t e successivamente

1t per ogni bit successivo in modo da campionare gorsso modo il centro del bit stesso evitando di beccare magari l'inizio o la fine dei fronti di salita/discesa. Ad ogni campionamento memorizza lo stato trovato. Dal momento che devi SAPERE con che modalità ricevi sai in anticipo quanti bit devi campionare...
--
MIPS:  Meaningless Indicator of Processor Speed.
News 2000 [v 2.06] / StopDialer / PopDuster - http://www.socket2000.com
Akapulce portal: http://www.akapulce.net
Reply to
Due di Picche

Il 25 Apr 2005, 16:37, Gibe ha scritto:

Sono entrambi dati validi. Tieni presente che normalmente trasmettitore e ricevitore devono essere programmati per lavorare nella stessa modalita', cioe' stesso baud rate, n. bit, parita' ecc.

Essendo un protocollo asincrono, una volta iniziata la trasmisisone di un dato con lo start bit, il ricevitore non puo' fare niente di piu' che leggere i dati dal primo all'ultimo nella parte centrale di ogni bit nei tempi previsti per quella velocita' di trasmissione Almeno cosi' funzionavano le vecchie uart. In realta' da un po' di anni ogni bit viene campionato piu' volte, per esempio 16 volte, e fatto un semplice filtraggio digitale per mediare eventuali disturbi. Inoltre le uart fanno un'ultima verifica sul bit di stop. Se viene rilevato che non ha il valore corretto, viene segnalato uno specifico errore (frame error) che puo' indicare un disturbo o, piu' probabilmente, che il ricevitore aveva erroneamente interpretato uno start bit, oppure che c'e' una discordanza nel formato dei dati o di velocita'. Ciao.

-------------------------------- Inviato via

formatting link

Reply to
brown fox

"Gibe" ha scritto

I livelli validi vanno da +/-3V in su, il massimo non lo ricordo, forse

+/-15

Un'altra seriale potrebbe fornire valori differenti, quindi meglio sempre ragionare nell'ottica dei +/-3..+/-15.

ciao Claudio F

Reply to
Claudio F

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.