Vai al contenuto
PLC Forum


Pic 16f628a


ricky1966

Messaggi consigliati

Salve il problema e' il seguente ho dei sensori che leggono la temperatura e l'umidita la sonda e' un sht75 collegato ad un pic 16f628a il tutto tramite la usart del pic viene inviato ad un pc per mezzo di un SN75176BP,ora il problema e' che per qualche motivo a volte un sensore mi rimane con il drive di comunicazione aperto bloccando la comunicazione degli altri sensori e quindi devo aprire tutti i sensori togliere alimntazione fino a trovare quello che causava il tutto,ora avendo 3 piedini del pic liberi RA2 RA3 RA4 potrei trasformare uno di questi piedini in uscita e programmarlo in maniera tale da fornirmi un positivo o negativo quando la seriale va' in trasmissione in modo da collegarci un led???

Link al commento
Condividi su altri siti


Cosa intendi per "drive di comunicazione aperto"? La sonda ha un pin "data" open collector, per bloccare la comunicazione deve rimanere chiuso a massa.

Sei sicuro di gestire bene il protocollo?... è prevista anche una procedura di reset inviando 9 impulsi di clock con la lina dati bassa e 2 con la lina dati alta.

Link al commento
Condividi su altri siti

da quello che ho visto quando ho una serie di sensori collegati i sensori rispettano il traffico sulla trasmissione cioe' se uno manda le leture al pc gli altri attendono che il loop si liberi per poi mandare la propria ora se per qualche motivo che ignoro un sensore rimane in comunicazione con il pc gli altri vanno in attesa con la conseguenza che non ho' piu le letture di nessun sensore,pertanto a me servirebbe che nel momento in cui il sensore va in trasmissione un led rosso si accende per poi spegnersi alla fine della trasmissione in maniera tale che se rimane in trasmissione il led acceso non si spegne cosi idividuo subito il sensore che causa il blocco del sistema.

Link al commento
Condividi su altri siti

Ciao.

Se riesci prova a postare lo schema di collegamento fra il transceiver e il micro, in questo modo altri piu' esperti ti possono aiutare.

Solitamente la comunicazione e' in half duplex, percio' c'e' l' attivazione della "direzione" tramite i pin "RO" e "DI" (collegati assieme) del 75176.

Se e' cosi, puoi mettere un led con una resistenza di limitazione (330 o 470 ohm) in modo che si attivi quando il segnale sui pin citati si porta basso o alto, a seconda se lo colleghi verso i 5V o GND.

Altrimenti, visto che chiedi di usare uno dei pin liberi suppongo tu abbia il programma del PIC, in questo caso devi trovare il punto nel programma in cui il driver 75176 viene messo in ricezione o trasmissione e qui portare a livello altro/basso un' uscita libera a piacere dove avrai collegato il led di segnalazione.

Sempre nell' ipotesi che venga usata la configurazione citata sopra...

Modificato: da mf2hd
Link al commento
Condividi su altri siti

Aspetta un secondo... probabilmente avevo capito male.

Ogni sensore è formato da sonda+pic+RTX422, e il canale occupato che dici tu riguarda il lato RTX422, non la comunicazione tra sonda e PIC.

beh... in questo caso mf2hd ha ragione, non hai bisogno di usare un pin del PIC per capire chi rimane in trasmissione, puoi collegare un un led con una resistenza in serie tra il pin 3 (Data Enable) dell'SN75176 e massa. Questo pin infatti deve essere a +5 per trasmettere sulla linea 485/422 e se mantenuto alto impedisce ad altri dispositivi di trasmettere sulla linea.

Comunque quella del led non è una soluzione, ma solo un rattoppo. dovresti capire perchè rimane bloccato in trasmissione.

Link al commento
Condividi su altri siti

naturalmente la cosa migliore sarebbe quella di capire il perche' avviene tutto cio' ma gia' il fatto di individuare subito il sensore che manda in crash tutto e' gia' tanto ,credo che la cosa piu' giusta sia quella di collegarmi sul pin 3 dell sht grazie per l'aiuto che mi avete dato e per la pazienza ora provo e vi dico.

Link al commento
Condividi su altri siti

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...