UART in comune

Jul 17, 2007 8 Replies

Salve, ho un dispositivo (server) dotato di UART che deve dialogare (non in contemporanea) con altri 3 dispositivi. Mi è venuto in mente di collegare direttamente i pin RX e TX dei 3 dispositivi direttamente ai pin TX ed RX del dispositivo "server". Lì per lì mi sembrava un'idea semplice e funzionante, poi però ho pensato che magari avrei dei problemi su TX dei vari dispositivi client, poichè quando uno di questi è abilitato nell'inviare dati al server i segnali elettrici mi arrivano anche sui piedini di TX degli altri client... cosa magari non tanto consigliata! O Sbaglio? Come la potrei risolvere? Potrei utilizzare dei diodi veloci ma poi il segnale mi cade di voltaggio e magari creo anche correnti non desiderate... che consigliate? Grazie per l'aiuto. (Piano piano anche io smetterò di chiedere ed inizierò a rispondere... non temete... mi manca solo qualche anno di esperienza!!!!)


Se utilizzi lo standard RS485 puoi mettere tutte le periferiche seriali sullo stesso bus. Una per volta potrà trasmettere quando la linea non è occupata (vi è il pin di enable sul TX) e per quanto i dati saranno inviati in broadcast ciascuna unità potrà scartare i pacchetti destinati alle altre semplicemente includendo nell'header del pacchetto l'indirizzo del destinatario (ed eventualmente del mittente).

Ciao! Marco / iw2nzm

Purtroppo non utilizzo lo standard RS485. Ho a disposizione periferiche UART 5V TTL. Insomma utilizzo uno standard RS232 però con livelli TTL.

74[HC]138 in uscita, 74[HC]251 in ingresso otiteni la moltiplicazione dei pani e dei pesci ( pardon degli ingressi e delle uscite ) 3 bit d'indirizzo, gestisci fino ad 8 'seriali' e le seriali in uscita non usate si portano al livello logico 'giusto'

collegare in parallelo linee a bassa impedenza d'uscita (come i segnali TX) =E8 male. Pensaci un attimo, e ci arrivi da solo...

. . .

.=2E .=2E .=2E

.=2E. .=2E. .=2E.

Ci sei arrivato ? Se parliamo di segnali TTL, puoi disaccoppiare i segnali con dei diodi in serie ad ogni TX e mettere un pull down sull'ingresso RX. Ovviamente, se c'=E8 la possibilit=E0 di collisione sul "bus" cos=EC costruito, devi prevedere un'opportuna strategia di rilevazione (tipo codice CRC).

saluti simone.bern

Il pull-down sull'ingresso RX (credo tu indenta su ogni RX dei client giusto?) che mi comporta?

Mcippaedo ha scritto:

Per caso ha il compito di migliorarmi il livello logico basso e velocizzare l'uscita dalla saturazione del transistor altrimenti più lenta del normale a causa della presenza di due porte logiche collegate sulla stessa linea (e quindi maggiore capacità in gioco)?

Mcippaedo ha scritto:

Qualcuno mi potrebbe confermare o meno la seguente cosa:

Mcippaedo ha scritto:

Ok, ho trovato la mia soluzione idela un bel 74LVC126... in questo modo non ho alcun tipo di problema... mi manca da trovare quale sia la frequenza massima a cui può arrivare l'integrato ma credo sia sicuramente superiore almeno ai 57600bps.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required