astrobeed:
uwefed:
La famiglia LS non é compatibile con i livelli del ATmega. Ti serve un 74HC04.Le notazioni N,L,LS degli IC con porte logiche indicano solo la velocità del chip, N e S, e se è del tipo a basso consumo, L, non hanno nulla a che vedere con i livelli logici, quelli dipendono dalla famiglia di IC e dalla tensione di alimentazione.
Il HD74LS04 è perfettamente compatibile con i livelli logici TTL e MOS 5V, tutti e due compatibili con l'ATmega328, da notare che l'HD74LS04 è un vecchio IC con logica TTL, ovvero non MOS, che deve funzionare a 5V come si evince chiaramente dal data sheet.
+1: i 74LS li ho interfacciati tranquillamente col mega328; posso dire invece di aver avuto difficoltà a far dialogare i 74xx classici con i 74HC, probabilmente proprio a motivo del fatto che i primi operano a logica TTL ed i secondi a logica CMOS; sostituendo i 7400 con dei 74HC00 ho risolto istantaneamente; ma sono prove di un anno e mezzo fa, non dedicai tempo con l'oscilloscopio per capire il problema, peraltro avevo gli HC già in arrivo. Il circuito di Devon è buono, ricordo che lui lo realizzò con successo un po' di mesi fa. Però lo schema che ha postato igor97 è sbagliato, a mio modesto parere: le due porte, essendo unidirezionali, non possono essere orientate nella stessa direzione, l'RX dell'atmega non riceverà mai nulla in quel modo.
EDIT: una cosa che non capisco è perché i segnali debbano essere invertiti, usando delle porte NOT e non sia invece sufficiente bufferizzarli, usando appunto dei buffer.