Newsgroup: it.hobby.elettronica.digitale
Titolo: TTL e flip flop impazziti

Ciao a tutti
Ho realizzato un circuito in logica TTL che dovrebbe tramite porta parallela
del PC, gestire 6 flip flop
mi spiego meglio e vi traccio per grandi linee il funzionamento
i bit 0 1 2 3 della PP passano prima in dei fotoaccoppiatori e quindi vanno
al circuito alimento a 5v
i pin 1 2 3 entrano in un decoder 78ls138 che ne ricava il valore decimale,
e siccome il piedino interessato (uscita) assume valore 0 mentre gli altri
sono a 1, io mando tutto in un inverter 74ls14, ovvero, mando solo  le
uscite corrispondenti a 1 2 3 4 5 6, eliminando la 0 e la 7
ognuna di queste uscite finisce in uno stadio di un flip flop 4013 e per
l'esattezza in CP, mentre in D arriva il pin 0 della PP
Allora io da Pc mando il seguente comando:
out 888, 2        Seleziona l'indirizzo
(fronte di salita)
out 888, 2+1    Manda all'indirizzo il valore 1 sul pin 0    (Attivo il flip
flop)
out 888, 1        Resta solo il valore 1
(Fronte di discesa) memorizza il valore 1 nel flip flop
out 888, 0        Azzera Tutto
In questo caso tutto funziona ok il circuito mi accende il led
corrispondente sul flipflip
se invece di uno metto 0 il circuito spegne il led
però mi capita che con alcuni indirizzi (12 e 8) cose non vanno bene, se
accedo 12 ovvero metto i pin in ingresso al 74138  (011) e quello per D ad
(1) mi accede il led corrispondente all'indirizzo 8, se poi lo rimando pari
pari, mi accende il 12 e se infine con 8 e 12 accesi cerco di spegnere il 12
li azzera entrambi.
Non ci sono piste in corto, ne tanto meno collegamenti sbagliati, all'uscita
del 7414 ritrovo i valori esatti che invio da pc.
il mio dubbio è che qualche corrente di ritorno da qualche parte mi attivi
il flip flip sbagliato.
so di essere stato abbastanza confuso nella descrizione, ma se qualcuno ha
capito qualcosa mi può dare un consiglio ?
Ciao a tutti
Ciro

 ha scritto:

--------------------------------
Inviato via 
http://usenet.libero.it

 mi attivi il flip flip sbagliato.
So che in questi casi sembra di trovarsi di fronte a quelli che io
chiamo i "malefici influssi lunari";) Se e' quello che penso e' piu'
semplice di quello che sembra.
Tu sai che i flip flop memorizzano durante la transizione di livello
del clock, ergo, avvengono delle transizioni spurie la dove pensi
che i livelli siano stabili... cioe' sulle uscite del 138.
Quando? Quando si cambia l'indirizzo in arrivo dalla parallela.
In questo momento i segnali logici dell'indirizzo cominciano a
propagarsi nelle porte interne del 138, e le uscite possono avere
dei rapidissimi glitch prima di assestarsi sul valore corretto.
Anche per evitare questo inconveniente ci sono ben 3 pin di enable.
Imposti l'indirizzo e solo dopo dai un impulso di enable che
abilita in modo pulito l'unica uscita scelta in precedenza.
Facci sape' se era questo:)
Claudio F

 Facci sape' se era questo:)
stasera faccio una prova e ti faccio sapere per adesso grazie infinite, se
non altro perchè ho visto uno spiraglio
Ciro.

 quindi 888, 4+1+16 dove 1 e lo stato del flip flip
Io manderei subito sia indirizzo che dato (4+1), e poi
genererei l'impulso di scrittura (4+1+16) seguito da (4+1).
In questo modo sono sicuro di lavorare con dati stabili
lontano dai fronti.
Claudio F