Newsgroup: it.hobby.elettronica.digitale
Titolo: Segnale seriale con trasmissione asincrona (quesito)

Dovendo intercettare con un uC PIC una sequenza di caratteri su una linea
seriale (rs232)asincrona tra 2 PC sono andato a vedermi con un oscilloscopio
a memoria come si presentava la sequenza di bit di questi caratteri, mi
aspettavo di trovare dopo il bit di start il carattere con i bit negati,
invece con mia grande sorpresa ho trovato tutt'altro, considerando che
comunque tra i 2 PC i dati arrivano in modo corretto mi viene il dubbio che
la seriale operi qualche strana operazione tra i il singolo bit da
trasmettere e il suo clock interno
qualcuno sa darmi qualche indicazione?
Saluti  e Ringraziamenti
Dodo.

 Dovendo intercettare con un uC PIC una sequenza di caratteri su una linea
seriale (rs232)asincrona tra 2 PC sono andato a vedermi con un oscilloscopio
a memoria come si presentava la sequenza di bit di questi caratteri, mi
aspettavo di trovare dopo il bit di start il carattere con i bit negati,
invece con mia grande sorpresa ho trovato tutt'altro, considerando che
comunque tra i 2 PC i dati arrivano in modo corretto mi viene il dubbio che
la seriale operi qualche strana operazione tra i il singolo bit da
trasmettere e il suo clock interno. qualcuno sa darmi qualche indicazione?
Saluti  e Ringraziamenti Dodo.
http://members.xoom.it/stor/elettronica/rs232.htm
ciao
Claudio


Ti ringrazio ma non è un problema di livelli di tensione.
Dodo

 qualcuno sa darmi qualche indicazione?
no, non ci sono codifiche di canale (tipo "mescolare" dati e clock).
Tieni presente che il primo bit trasmesso dopo lo start e` il meno
significativo (quello piu` a destra), e poi la trasmissione va avanti
fino a quello piu` significativo. Segue parita` e stop.
 
Franco

Franco
Confermo, forse la "stranezza" che vede dovuta al fatto che interpreta
i bit come se fossero dall'MSB all'LSB invece del viceversa.
Ciao, Massimo - IW1FDX
E-Mail    
max...@libero.it
Visita la pagina dedicata ai microcontrollori ST62
all'indirizzo 
http://digilander.iol.it/max4000

 Franco
Devo premettere che questo problema è saltato fuori per un'area di progetto
che stanno svolgendo degli studenti di un ITIS, a cui io ho cercato di dare
una mano (lavoro no profit),
 io non mi sono occupato della parte delle procedure per la gestione della
seriale,  a quanto mi hanno riferito sono stati usati degli interrupt
(standard) specifici per la gestione della seriale,
i dati inviati, con il programma fatto, partono ed arrivavano correttamente,
ma non vi è corripondenza tra il carattere inviato e quello effettivamente
presente sul filo ad eccezione del carattere 255
sia  guardandolo da sx verso dx
sia si guardandolo da dx  verso sx
da notare che si è provato a trasmettere dei testi lunghissimi formati da
una sequenza ininterrotta dello stesso carattere per non incorrere in
equivoci
inoltre per ogni carattere trasmesso la linea opposta ripondeva con un
carattere 255 (questo si corretto)
sono stati inviati caratteri che non dessero adito a dubbi,  con sequenze di
bit immediatamente identificabili tipo 240 128 127 64 63 32 31
ora cerco qualcuno che abbia effettivamente verificato, con un oscilloscopio
o qualsiasi altra cosa, i segnali trasmessi e ricevuti da una seriale con
cavo null modem in modalità asincrona e la loro corrispondenza con i dati
inviati
per capire se questa "stranezza" è dovuto direttamene all'hardware della
seriale dei PC o al software del protocollo
Saluti
  Dodo

 Saluti
Premesso che il protocollo di trasmissione RS232 è uno standard ben preciso
e non è opinabile e tantomeno casuale mi piacerebbe sapere cosa hai
realmente visto, dici di non ottenere concordanza dei dati ma non dici cosa
vedi al posto di quello che ti aspetti, salvo per il carattere 255.
Ciao
Marco d'Ambrosio  
m.dam...@tiscalinet.it
http://utenti.tripod.it/razzimodellismo
    ACME I-RM-05 /TRA L1/
http://web.tiscalinet.it/mda
http://digilander.iol.it/robotica
 (under construction)

   Dodo

Ringrazio tutti gli amici del N.G. che hanno risposto ai miei quesiti
Non volevo mettere in discussione nulla ma solo segnalare una stranezza e
sapere
se qualcuno aveva avuto dei problemi simili
tra l'altro mi sono ricordato che qualche anno fa, per altri motivi, avevo
fatto una verifica tra la seriale è un kit di Nuova Elettronica con
microcontrollore STxx e tutto funzionava e corrispondeva perfettamente
********** Per ora chiudo questo discorso**********
Mi ripropongo appena avrò abbastanza tempo (chissà quando) di andare a
controllare il software del protocollo che hanno scritto i ragazzi,
un mio amico mi ha messo una pulce nell'orecchio ipotizzando che la
trasmissione che ho visualizzato non era su 8 bit, come mi era stato
dichiarato, ma su 5 o 6 bit
se il fatto continuerà a persistere vi invierò le foto dei segnali
sull'oscilloscopio
comunque vi farò sapere qualcosa
di nuovo Grazie a tutti
Dodo

 wrote in message

Se il software è stato scritto dai ragazzi e non è un programma standard,
p.e. Hyper Terminal, probabilmente hanno usato qualche libreria già pronta
per la comunicazione seriale che non lavora in modalità ASCII, solamente
usando tale modalità di trasmissione puoi paragonare quello che vedi
sull'oscilloscopio con la tabella ASCII.
Per esempio potrebbero aver usato un protocollo che prevede l'uso della
codifica in EBCDIC che è molto diverso dall'ASCII, il carattere 'A' da 41h
diventa C1h in EBCDIC, codifica molto usata nei protocolli per i terminali
perchè permette un miglior controllo degli errori.


 carattere 255 (questo si corretto) [...]
Non e` ben chiaro che programmi usate per le comunicazioni. Se usate un
normale terminale come l'Hyperterminal di Windows, e` garantito che i
byte vengano spediti come devono; ad esempio spedendo 00110011 in 8n1 la
sequenza sarebbe:
0110011001
Il primo 0 e` lo start bit (+12V), l'ultimo 1 e` lo stop bit (-12V), i
bit intermedi sono trasmessi da LSB a MSB. Su questo ci metto la mano
sul fuoco, dato che ho scritto con successo delle routine di
comunicazione seriale per PIC e che all'inizio usavo proprio
Hyperterminal per fare gli esperimenti. ;-)
Se usate programmi di altro tipo, nessuno assicura che non utilizzino un
formato di codifica strano anziche` i normali ASCII, VT100 ecc...
---
Bye! Lorenzo Lutti
http://www.geocities.com/SiliconValley/Peaks/6258/

  Dodo
Il protocollo seriale RS232 e' uno solo e quello rimane :
Bit di Start
5,6,7,8 bit di Dati
1,1.5,2 Bit di Stop
Non ci sono altri valori.
Se non leggi il valore giusto e i due computer comunicano
correttamente e' perche' o leggi il pin sbagliato o altro non saprei.


 Non ci sono altri valori.
Non proprio: il protocollo RS232 non specifica che debba essere un
seriale asincrono. Dice solo la definizione dei livelli di tensione,
la definizione delle linee di handshacking, di clock e di dati, et
similia. L'RS232 puo` essere benissimo usato per sistemi sincroni.
Ciao, anzi 73 de N6... 
Franco

Franco
A rigore hai ragione, nulla da eccepire. Probabilmente era piu'
corretto se scrivevo "La RS232/COM del PC".


Ho risolto il problema.
LA SERIALE NON C'ENTRAVA PER NULLA
è c'entrata invece la mia ingenuità e la pirlaggine di alcuni elementi
"pataccari"
questa mattina mi sono procurato i programmi del protocollo e DA SOLO
ho collegato 2 pc e ho cominciato a trasmettere dati per osservarli con
l'oscilloscopio per poi  disegnare diligentemente la sequenza di bit di ogni
singolo carattere
a fine tx di ogni pacchetto appariva il messaggio "arrivato con successo e
senza errori"
intanto la mia ragione vacillava, perche' i dati NON CORRISPONDEVANO
dopo 2 ore di tentativi sono andato sul PC server per vedere il contenuto
dei file che avevo
inviato
sorpresa            NON C'ERA UN CAZ..
Allora ho aperto i sorgenti del protocollo mi sono accorto che avevo davanti
UN PACCO tipo quello che ti rifilano sulle autostrade con i telefonini
giocattolo
o i mattoni al posto del videoregistratore
e mi è tornato alla mente il pirla
a cui chiedevo: "i dati nel file corripondono?"
e il pirla: "SI!"
ed io, il "fesso", a fare la figura del cioccolataio andando a chiedere a
destra
e a manca il perche' di questo "mistero buffo"
... per la serie fidarsi e bene non fidarsi e meglio
Scusate lo sfogo
Saluti e Ringraziamenti
Dodo
P.S.
per il "pirla", e i geni dell'informatica della 5A,
se leggete questo messaggio,
va da se che
quando ci vediamo  ....
... SORCI VERDI ...