papero Inserito: 15 marzo 2006 Segnala Share Inserito: 15 marzo 2006 Ciao ragazzi, ho un problema...Sto cercando di far comunicare dei PIC con il PC, dato che le distanze di comunicazione sono lunghe, e i PIC sono più di uno ho pensato di usare la linea RS485.Ho fatto dei test di comunicazione tramite la 232 "classica" quindi usando i MAX232, e tutto va regolare, ma appena metto i MAX485... cominciano i problemi.La linea funziona, e riesco a ferli comunicare, ma invece di ricevere i caratteri ASCII che invio al PIC, ricevo dei caratteri stranissimi.So che la linea è bilanciata, e su alcuni siti ho visto che vengono puotati i +5V e il GND in uscita al 485, ma del datasheet del MAX, non c'è nulla. Mi sapete dire se servono?Inoltre, c'è un protocollo di comunicazione particolare, oppure posso inviare delle stringhe e dati nornalmente come se stessi usando una RS232 classica?Attualmente per semplificarmi la vita ho trovato dei MAX490, che lavorano in fullduplex quindi senza bisogno di abilitare le linee di trasmissione, ma non li ho ancora provati, vorrei prima chierirmi meglio le idee.Grazie a tutti in anticipo! Link al commento Condividi su altri siti More sharing options...
ifachsoftware Inserita: 15 marzo 2006 Segnala Share Inserita: 15 marzo 2006 Se vuoi lavorare come con la RS232 puoi usare un semplice convertitore RS422 (4 fili) e non hai problemi.Se vuoi lavorare a 2 fili , con il pic devi gestire un segnale in piu' per abilitare trasmissione o ricezione (e modificare di conseguenza il protocollo) mentre sul lato PC devi mettere un convertitore RS232->RS485 con gestione automatica della direzione altrimenti devi gestire anche li il protocollo 485.Ciao Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 15 marzo 2006 Segnala Share Inserita: 15 marzo 2006 (modificato) Utilizza pullup/puldown per fissare le linee della 485. altrimenti se tutti i driver sono in ricezione la linea non è fissata in alcun modoControlla i tempi di commutazione. Se interroghi il PIC dal PC aspetta prima di rispondere.Il driver lato PC potrebbe essere ancora commutato in trasmissione. Di soltio si mette un ritardo programmabile per evitare collisioni.leggi questo spiega come calcolare le resistenxe di polarizzazione della 485. Modificato: 15 marzo 2006 da accacca Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 15 marzo 2006 Segnala Share Inserita: 15 marzo 2006 Domanda banale. La porta del PC è RS232, l'hai interfacciata con un convertitore 232-485 prima di collegarla al PIC? Link al commento Condividi su altri siti More sharing options...
papero Inserita: 15 marzo 2006 Autore Segnala Share Inserita: 15 marzo 2006 Si, ho un convertitore 232 - 485 sul pc, e dal pic ho montato il solo 485.Riguardo all'abilitazione della linea di trasmissione penso di aver risolto il problema usando 4 max 485 ovviamente in fase sperimentale...Praticamente dal pc ne uso uno abilitato alla trasmissione, l'altro alla ricezione, idem sul pic.sembra che va tutto bene, solo che non riesco a far ricevere al pic le stringhe.Se invio una lettera da visualizzare su un LCD, mi visualizza un carattere completamente diverso, di solito sono simboli, se lo invio direttamente dal pic, tutto è regolare.Preciso che parlo di un 18F252 con frequenza di 4MHZ so che è poco, ma per ora ho solo questo a disposizione...Altra domanda, forse banale... La linea va alimentata oppure no? Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 15 marzo 2006 Segnala Share Inserita: 15 marzo 2006 Devi alimentare i MAX485. Sei sicuro che i MAX in ricezione (lato PIC) siano abilitati nella direzione giusta?. Inveve di MAX485 potresti usare altri integrati maxim con linea 422; è identica alla 485 solo ch eè bidirezionale (full duplex) come la 232. Link al commento Condividi su altri siti More sharing options...
papero Inserita: 15 marzo 2006 Autore Segnala Share Inserita: 15 marzo 2006 infatti adesso do reperito dei max490 che sono fullduplex, e tra un po li provo.comunque ho fatto una prova banale, inviare un dato farmelo rimandare, mi ritorna dei caratteri completamente strani...non capisco, gli invio la lettera a, e mi rimanda dei simboli strani...da che dipende? mi sono bloccato... Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora