Comunicazione tra PIC mediante RS485

8 Anni 10 Mesi fa #56 da FABRIZIO
Risposta da FABRIZIO al topic Comunicazione tra PIC mediante RS485
Ciao Mauro, per favore mi potresti rispondere tu alla domanda fatta a Luca? Te la scrivo:

Ho fatto prove su prove ma non funziona nulla. :(
Ma è giusto settare come input la porta rx e output la porta tx?
Le prove le faccio con le due schede fissate su una base di lamiera appoggiata ad una matassina di cavo 2 x 0,5 lunga 5 metri non schermato con le estremità collegate alle due schede; non credo di avere problemi per questo. Che dici?
Il clock usato nei due pic16f690 è interno a 8MHz e quindi ho settato il registro del baud rate SPBRG a 11 e il bit
BRGH a 0 (bassa velocità). Cosa mi dici di questi settaggi?

Grazie anticipatamente

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • FABRIZIO
  • Avatar di FABRIZIO
  • Elite Member
  • Elite Member
Di più
8 Anni 10 Mesi fa #57 da FABRIZIO
Risposta da FABRIZIO al topic Comunicazione tra PIC mediante RS485
Ciao Luca per favore rispondimi tu: adesso sono riuscito a comunicare con le mie due schede con a bordo un pic16f690 e un max485 in ognuna, ma quello che riceve non è quello che trasmette. sembra che ci sia un errore nel frame perché dalle prove mi sono accorto che il registro FERR si abilita quando l'interrupt mi va a leggere il registro di ricezione.
Non ci capisco più un tubo :(

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • FABRIZIO
  • Avatar di FABRIZIO
  • Elite Member
  • Elite Member
Di più
8 Anni 10 Mesi fa #58 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Comunicazione tra PIC mediante RS485
Iniziando il thread con il nome della persona potresti limitare le risposte da parte di altre.
Per tua informazione non c'e' thread che non legga, indipendentemente dal fatto che inizi con Mauro o meno.

Per poter fare meglio il debug è meglio se posti il codice, ma per chiarezza cerca di riprodurre prima il problema su un codice minimo composto di dieci righe, altrimenti rischi che nessuno lo guardi.

Visto che non hai esperienza con il protocollo RS485 cercherei prima di far comunicare due PIC semplicemente via UART collegando TX con RX dell'altro e RX con il TX. In questo modo bypassi il controllo del flusso.

Fatto questo metti in gioco il protocollo RS485 e il controllo del flusso.

Procedi per passi prima di far funzionare l'intero sistema.

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
8 Anni 10 Mesi fa #59 da FABRIZIO
Risposta da FABRIZIO al topic Comunicazione tra PIC mediante RS485
Ok Mauro grazie e scusa per i miei casini ;)

In allegato vi è un file txt che contiene il listato dei programmi-prova delle due schede, con cui faccio le prove.
Desidererei cercare di risolvere coi max485 perché ormai ho costruito le due schede con questi.

Con questi due programmi vorrei trasmettere il byte 0b00000001 e riceverlo e quando l'ho ricevuto, verificando che è 0b00000001 si alza l'uscita Sirena. Adesso l'uscita si alza se dico che "se il valore ricevuto è diverso da zero allora
alza Sirena", ma se dico "se il valore è 0b00000001 alza Sirena" non succede nulla.
Non so più che fare!!! :woohoo:

Spero di avere notizie, grazie
Fabrizio
Allegati:

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • FABRIZIO
  • Avatar di FABRIZIO
  • Elite Member
  • Elite Member
Di più
8 Anni 10 Mesi fa #60 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Comunicazione tra PIC mediante RS485
Il codice non è lunghissimo ma elimina tutto quello che non è relativo alla comunicazione.

Devi testare una cosa alla volta e non aggiungere codice fino a quando la comunicazione non avviene correttamente.

Per facilitare i test invia un byte più complesso per esempio 0b10101111 e non un semplice 1.

Una volta programmato il PIC Master fai il debug sullo slave e controlla il byte realmente ricevuto.

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
Moderatori: Mauro LaurentiStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login