dexterman Inserito: 24 gennaio 2006 Segnala Share Inserito: 24 gennaio 2006 Salve a tutti,semplice domanda,almeno per voi è semplice,si può far eseguire l'invio e la ricezione di dati sullo stesso pin di un pic 16f84? es. DATO var byte INOUT VAR PORTB.7 MODEOUTC CON 3 MODEINC CON 3 Connetti: serout INOUT,MODEOUTC,["I"] Ricevi: serin inout,modeinc,300,connetti,dato 'codice gestione dati ricevuti goto connetti grazie mille in anticipo Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 24 gennaio 2006 Segnala Share Inserita: 24 gennaio 2006 Bisogna vedere cosa ci colleghi dall'altra parte Per utilizzare lo stesso pin del micro come pin bidirezionale di comunicazione fai cosìConfigura la porta in modo che il pin sia in input ed esternamente fissalo con una resistenza collegata all'alimentazione.Configura il registro di output della porta con uno zero.A questo punto quando ricevi ti basta leggere il pin della porta configurato come input.Quando trasmetti se trasmetti 1 (livello alto) non fai niente se trasmetti 0 cambi la configurazione del pin da input a output per il tempo necessario alla trasmissione del bit poi la riposizioni in input.Il trucco per la trasmissione è: non utilizzare il bit di output della porta (che va lasciato sempre a zero) ma utilizzare il bit di configurazione input/output della porta. Link al commento Condividi su altri siti More sharing options...
dexterman Inserita: 28 gennaio 2006 Autore Segnala Share Inserita: 28 gennaio 2006 Bisogna vedere cosa ci colleghi dall'altra parte Per utilizzare lo stesso pin del micro come pin bidirezionale di comunicazione fai cosìConfigura la porta in modo che il pin sia in input ed esternamente fissalo con una resistenza collegata all'alimentazione.Configura il registro di output della porta con uno zero.A questo punto quando ricevi ti basta leggere il pin della porta configurato come input.Quando trasmetti se trasmetti 1 (livello alto) non fai niente se trasmetti 0 cambi la configurazione del pin da input a output per il tempo necessario alla trasmissione del bit poi la riposizioni in input.Il trucco per la trasmissione è:non utilizzare il bit di output della porta (che va lasciato sempre a zero) ma utilizzare il bit di configurazione input/output della porta. Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 28 gennaio 2006 Segnala Share Inserita: 28 gennaio 2006 (modificato) Purtroppo non conosco i PIC leggerò la doc ma non prometto nulla Modificato: 28 gennaio 2006 da accacca Link al commento Condividi su altri siti More sharing options...
dexterman Inserita: 30 gennaio 2006 Autore Segnala Share Inserita: 30 gennaio 2006 perdonami ma da come hai scritto su la risposta sembra il contrario, perchè in effetti se ci pensi bene una persona che non conosce il pic non può dare una mano consigliando o sbaglio?comunque grazie milleaspetto una tua risposta riguardo il problemaciao Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 30 gennaio 2006 Segnala Share Inserita: 30 gennaio 2006 dexter voglio darti una mano!!Il problema è che i PIC non li ho mai utilizzati.Non credo siano diversi dagli altri micro ci saranno sempre i registri di configurazione della porta in/out e di set/reset del registro d'uscita.Posso aiutarti con NECPHILIPSSILABSTEXASNATIONALRABBITma non con microchipHo cercato goffamente di spiegarti il principio poi l'applicazione sul micro specifico non sono in grado di scriverla.ciao Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 30 gennaio 2006 Segnala Share Inserita: 30 gennaio 2006 un'altra cosala linea di comunicazione a cosa viene collegata dall'altro lato ? Quando tu piloti in TX la linea devi essere sicuro di non avere conflitti con chi si trova all'altro estremo. (dev'essere in input)La cosa migliore è lavorare con uscite in open collector. Link al commento Condividi su altri siti More sharing options...
dexterman Inserita: 30 gennaio 2006 Autore Segnala Share Inserita: 30 gennaio 2006 grazie si scusa la mia risposta, ti ringrazio ancora per la risposta,comunque cil micro 16f84a viene collegato ad un altro micro uguale!!! Link al commento Condividi su altri siti More sharing options...
dexterman Inserita: 6 febbraio 2006 Autore Segnala Share Inserita: 6 febbraio 2006 grazie ho risolto puo chiarirmi le idee spiegandomi perchè mi hai consigliato di inserire la resistenza sul pin?grazie Link al commento Condividi su altri siti More sharing options...
dlgcom Inserita: 6 febbraio 2006 Segnala Share Inserita: 6 febbraio 2006 grazie ho risolto Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 6 febbraio 2006 Segnala Share Inserita: 6 febbraio 2006 cioa dextermanio ho ipotizzato la configurazione del driver della porta in open collector quindi ci vuole qualcosa che tenga a una tensione nota il pin quando è configurato come ingresso. Non solo quando vai in trasmissione (in output) senza resistenza il pin rimarrebbe sempre bassoNon ho considerato la configurazione del driver pushpull perchè la ritengo pericolosa (e questo non vuol dire non si fa)Se sbagli una commutazione ti puoi trovare nella situazione in cui entrambi i micro pilotano il pin come uscita. Se da un lato è alta e dall'altro è bassa hai un corto netto attraverso i pin dei micro.In questo caso io mettrei una resistenza serie sulla linea di comunicazione per limitare la corrente in caso di errore. nel caso open collector non ci sono situazioni potenzialmente pericolose. Se entrambi pilotano in uscita non si rompe nulla. Link al commento Condividi su altri siti More sharing options...
dexterman Inserita: 6 febbraio 2006 Autore Segnala Share Inserita: 6 febbraio 2006 ciao dlgcom,io ho scritto come ho risolto,certo non in maniera evidente però,ho inserito la resistenza come mi ha consigliato accacca!!grazie mille ancora Link al commento Condividi su altri siti More sharing options...
accacca Inserita: 7 febbraio 2006 Segnala Share Inserita: 7 febbraio 2006 dexterman per favore perdi altri 5minuti.Ha ragione dlgcom, la discussione resta all'interno del forum. Se qualcuno in futuro affronta lo stesso problema potrebbe trovare qui la soluzione collaudata e funzionante.Per fare questo mancherebbero solo i dettagli della tua realizzazioneChe soluzione hai adottato pushpull ? open collector ? Valori resistenze ? Velocità di comunicazione ?Puoi inserire qualche frammento del tuo codice per PIC (che ti ripeto, non conosco, e mi piacerebbe vedere). 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