Simons Inserito: 7 febbraio 2007 Segnala Inserito: 7 febbraio 2007 salve a tutti...vorrei multiplexare 4 display con un pic16f876 usando una porta come output BCD e 4 pin per l'enable dei display.per evitare gli sfarfallii volevo usare dei driver latchati..possedendo display ad anodo comune ho cercato a giro dei driver con output pnp ma ho trovato solo il CD4511 che ha output per i display ad anodo comune, quindi NPN e lo stesso modello però del tipo HC con logica più veloce...quindi volevo sapere una cosa:se multiplexo i display senza latch quindi mappando i 7 segmenti su una intera porta e usando un'altra porta per 4 enable, anche ad alta frequenza ho sfarfallii?grazie a chi mi aiuteràsimons
accacca Inserita: 7 febbraio 2007 Segnala Inserita: 7 febbraio 2007 Concordo con la tua scelta. Secondo me non hai sfarfallio a patto che tu accenda i digit ad una frequenza minima.Se non ricordo male bastano 25Hz Poichè tu hai quattro digit devi accendere i display a c100Hz minimi. Ovviamente più sali in frequenza e meglio è.C'è però il limite superiore oltre il quale non puoi andare altrimenti il tempo di accensione è troppo breve.Io fossi in te userei una frequenza tra 500Hz/800Hz.
Simons Inserita: 10 febbraio 2007 Autore Segnala Inserita: 10 febbraio 2007 bene grazie della risposta un'ultima cosa...come posso misurare la frequenza di un'onda quadra con il pic? devo usare un convertitore frequenza-tensione e poi usare l'ingresso analogico del pic??grazie
Simons Inserita: 10 febbraio 2007 Autore Segnala Inserita: 10 febbraio 2007 forse ho trovato il modo...utilizzando l'ingresso INT del 16f876 posso incrementare un contatore mediante l'interrupt, e poi con un altro timer interno (ad es il timer2),sfruttando il suo interrupt leggo quanti impulsi ho sul contatore e poi faccio il conto della frequenzaè fattibile? se poi gli impulsi cadono oltre la frequenza dell'interrupt del timer2 allora vado fuori risoluzione ma comunque non è un problema...
accacca Inserita: 10 febbraio 2007 Segnala Inserita: 10 febbraio 2007 Sì Simons fai così.Metti il timer in free run ad una certa frequenza. Ad ogni interrupt esterno leggi il valore del timer e per differenza ti calcoli il numero tic tra due interrupt successivi. Conoscendo la frequenza di clock del timer puoi ottenere la frequenza dell'interrupt,Ovviamente il clock del timer dev'essere almeno uno o due ordini di grandezza superiore alla massima frequenza che vuoi misurare altrimenti ottieni solo una misura grossolana della frequenza.
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