Tak w temacie MAX3378 żeby nie zakładać odrębnego wątku. Zrobiłem sobie taka płyteczkę z tym układem
Testując ją z napięciami 3,3V i 5V zauważyłem problem. Three state zgodnie z dokumentacją podłączyłem do VL, nie wiem czy ten rezystor 10k jest konieczny, ale raczej nie powinien przeszkadzać. I teraz mam na wszystkich wejściach VL 1 .. 4 stan wysoki (dokładnie 3,3V) a na wszystkich wejściach VCC 1..4 też stan wysoki tylko 5V. Za pierwszym razem podłączyłem odwrotnie, 5V do VL i 3,3 do VCC więc wyższe napięcie było VL, a zgodnie z dokumentacją tak nie powinno być , więc nie wiem czy czegoś nie uszkodziłem. A znowu jak three state podłącze do masy (czyli będzie włączony) to mam wszędzie w okolicach 0V, podanie na wejście 5V lub 3,3V nic nie daje bo na odpowiadającym mu wyjściu dalej 0V. A więc przy normalnej pracy (TS do VL) żadna komunikacja nie działa bo wszędzie mam stan wysoki.
_edit:
Poprawka. Komunikacja działa, tylko że nie dokładnie. Sprawdziłem, jak pin wejściowe zewrę do 0 to na wyjściu też jest zero. Czyli teoretycznie powinno działać, stan wysoki (nie zero) będzie na wyjściu stan wysoki. Stan niski będzie na wyjściu też stan niski. Przetestowałem łącząc ATmega32 (3,3V) z PC (5V). Linie TX i RX puściłem przez ten bufor i wysyłam stringa "Przycisk 1". Dochodzi "#r#y#i#k 1" (zamiast # jest jakiś taki prostokąt dziwny ale dla przykładu użyłem hasha). Ewentualnie spróbuję te linii dołączyć do masy przez jakiś rezystor typu 10k, ale przecież to powinno działać bez takich cudów
Wewnątrz są wbudowane rezystory podciągające do vcc.