Używam układu scalonego USB-UART z MCU, który jest zasilany z baterii.
Układ USB-UART jest zasilany ze złącza USB, a nie z akumulatora, dzięki czemu nie muszę otwierać konsoli za każdym razem, gdy wyłącznik gaśnie i włącza się.
symulacja tego obwodu - Schemat utworzony przy użyciu CircuitLab
edycja: Nie narysowałem tego na rysunku, ale IC ma wewnętrzny regulator 3,3 V i każde VDD jest na poziomie 3,3 V, gdy przełącznik jest włączony.
Teraz martwię się, kiedy USB jest podłączone, a przełącznik jest nadal wyłączony.
Dokument MCU mówi, że maksymalna wartość znamionowa każdego pinu wejściowego wynosi VDD + 0,3, co byłoby 0,3 V, gdy MCU nie był zasilany.
Jeśli para TX / RX po stronie USB-UART osiągnie wysoką wartość, czy zniszczy styki po stronie MCU?
Jeśli tak, czego potrzebuję między parami TX / RX?
źródło
Odpowiedzi:
Zależy to od MCU, ale w większości przypadków zasila MCU i ewentualnie resztę płyty poprzez MCU. MCU spróbuje uruchomić i robić dziwne rzeczy. Twoja tablica zrobi dziwniejsze rzeczy. Jeśli Twoja tablica pobiera wystarczającą ilość prądu, uszkodzi ten pin na MCU.
Musisz ustawić sygnał UART na poziomie 0 V, gdy MCU jest wyłączony. Jeśli używany układ UART (lub UART) nie ma pinu włączającego (układy USB UART, z którymi pracowałem, można skonfigurować dokładnie dla opisywanego przypadku), ORAZ wyjścia UART z mikroprocesor VCC.
źródło
Rozwiązanie może być tak proste, jak NMOS między pinem TX USB-UART (odpływ) a pinem RX MCU (źródło), z bramą podłączoną do MCU VDD.
Oznacza to, że USB-UART będzie w stanie zasilać jedynie napięcie do 3,3 V minus napięcie progowe tranzystora. Musisz sprawdzić, czy to wystarczy, aby zaspokoić V_IH twojego MCU.
Sceptycznie podchodzę do rozwiązań wykorzystujących bramkę logiczną zasilaną (pośrednio) przez VBUS. Dopóki bramka logiczna napędza wejście MCU wysoko, MCU VCC może nie spaść wystarczająco daleko, aby wyłączyć sterownik TX. Dzięki rozwiązaniu NMOS pin TX może być doprowadzony tylko do niższego napięcia niż VCC, co uniemożliwia tego rodzaju sprzężenie zwrotne.
Nawiasem mówiąc, powinieneś również rozważyć odwrotny kierunek: jeśli MCU jest zasilany, ale USB-UART nie jest, będziesz chciał się upewnić, że przypadkowo nie dostarczysz trochę energii do USB-UART, wyczerpując bateria szybciej niż się spodziewasz. Wystarczy do tego rozwiązanie tylko programowe.
źródło
Mam zupełnie inne rozwiązanie, które jednak zależy od używanego układu USB.
Niektóre z nich mają różne VBUS i VCCIO. W takim przypadku możesz zasilić część IO tego układu razem z komputerem.
źródło
Łatwym rozwiązaniem jest umieszczenie rezystorów między stykami we / wy. Ograniczy to przepływ prądu do pinów, dzięki czemu transceiver nie będzie mógł zasilać UC. Wartość rezystora stanowi równowagę między ograniczeniem szerokości pasma między chipami a ograniczeniem prądu.
Bufory logiczne zasilane przez USB, ale z wyjściami włączanymi przez uC. Robi to tak samo, jak włączanie wyjścia transceivera dla drugiej odpowiedzi.
Czy jest korzyść z wyłączenia uC, gdy jest on podłączony do komputera? Jeśli nie, możesz zasilać komputer z zasilacza USB 5 V. Sposoby na to:
źródło
Czy zastanawiałeś się, czy kilka buforów trójstanowych byłoby dobrym rozwiązaniem? Możesz powiązać pin włączający z przełącznikiem, a następnie upewnić się, że polaryzacja od tx do rx jest prawidłowa, co skutecznie zapewnia ochronę, o którą prosisz.
źródło