Newsgroup: it.hobby.elettronica.digitale
Titolo: Consigli e suggerimenti

Per me è la prima volta che posto su questo NG e l'elettronica un
hobby oltre che una passione.
Sto cercando di realizzare un sistema che mi consenta di inviare e
ricevere comandi a diversi circuiti sparsi per casa mia utilizzando un
bus...
Con l'assemblaggo e la programmazione assembly dei micro me la cavo
abbastanza bene, ma non ho molta famigliarità con i componenti
disponibili sul mercato, nel senso che potrei realizzare il sistema non
usando proprio i componenti e le soluzioni migliori... dal mio
precedente post (sui IC MAXIM) potete capire che faccio un po di
confusione.
Se vi spiego cosa vorrei fare e in che modo, verò che mi date qualche
suggerimento?
Sapevo di poter contare su di voi! ;)
Ho un circuito con un microcontrollore collegato su un bus: questo
circuito viene definito come Master.
Allo stesso bus posso collegare un numero variabile di altri circuiti
che chiamerò Slave.
La distanza tra i circuiti Slave può variare da pochi centimetri a
diverse decine di metri... ma la lunghezza complessiva del bus non
dovrebbe superare i 300 o 400 metri.
Il Master invia dati e interroga gli Slave con un polling continuo...
naturalmente ogni Slave ha un indirizzo univoco.
E' importante che il tempo di ciclo di polling di tutti gli Slave sia
il più basso possibile, in modo da avere un immediato riscontro al
comando inviato.
Inoltre (date le mie personali risorse) il costo dei singoli Slave
dovrebbe essere ridotto al minimo... e proprio per questo motivo non mi
interessa che la comunicazione sul bus sia full-duplex.
Quindi, secondo voi:
- Che tipo di Micro dovrei usare per il Master e per gli Slave?
- Che interfaccia potrei adottare per interfacciare il Master e gli
Slave al Bus?
- Dovendo ridurre al minimo il numero dei fili del Bus senza
compromettere il funzionamento quanti ne dovrei usare?
- Schemi? Link? Codici? Suggerimenti?
Io avevo pensato di usare dei Micro della MicroChip e le interfaccie
verso il Bus della Maxim, utilizzando due fili intrecciati per il
Bus... ma mi rendo conto che potrebbe non essere la soluzione migliore.
Se volete potete rispondermi in forma privata alla mia mail:
giulia...@yahoo.it
Il massimo sarebbe avere anche qualche consiglio su come interfacciare
il Master ad un personal computer...!  :)
Grassie!
Giuly

il Master ad un personal computer...!  :)
Ti ho già risposto prima su i.h.e.
--
ciao
  Stefano

> 1 per ogni periferica (o no ?)    ;-))
No, no! Se collego 256 Slave non posso permettermi di far passare 256
cavetti!
Infatti volevo usare un bus proprio per usare una coppia di cavi per
tutti gli Slave.
Giulia

> 1 per ogni periferica (o no ?)    ;-))

Pensavo ti riferissi ai drivers, si il doppino può essere unico se non fai
collegamenti a stella.
Attenzione che la linea deve essere terminata con una resistenza da 50 - 100
ohms per evitare riflessioni se vuoi andare veloce.
--
ciao
  Stefano

 Grassie!
Prego


puoi usare un CAN bus: si usano due fili, ci sono dozzine di CPU con CAN
controller integrati ed il protocollo e' tutto hardware, i driver
di linea sono economici e molto sicuri (82C250 o simili, con alcuni
si raggiungono i 110 carichi).
Per i micro ti suggerisco gli AVR, sono molto piu' semplici da usare dei
PIC e si trova anche il compilatore C free (Gnu).
La topologia di linea e' point-to-point, terminata alle due estremita'
(come un bus per RS485)da 100..120Ohm.
Per 400m la velocità non deve essere eccessiva.
i cablaggi a stella sono da evitare. comunque e' possibile dividere
la rete in diversi tronconi usando due bus driver per separare i
segmenti.
In alternativa una bella RS485 con un protocollo master/slave.
Per fare polling solo sugli slave presenti basta fare un giro
preventivo per rilevare gli slave in rete e poi pollare sole questi.
Aggiungi un indirizzo 'broadcast'(lo 0) per inviare a tutti gli slave
contemporamente lo stesso messaggio.
Il CAN comunque e' meglio :-)
bye brix