Mam to, co mam nadzieję, jest proste pytanie dotyczące mikrokontrolerów AVR Atmel. Dlatego chcę użyć komparatora analogowego ATTiny85, aby określić, czy sygnał jest powyżej czy poniżej progu. Ten sygnał jest normalnie "pływający" i jest ciągnięty w kierunku ziemi, gdy jest "aktywny" (to znaczy jest aktywnym sygnałem niskiego otwarcia kolektora). Gdybym umożliwić pullup na pin wejście (który jest również wejście komparatora) przy pomocy:AVR Analogowy komparator + wewnętrzny pullup?
DDRB = 0x00; // DDRB.1 = 0 = input
PORTB = 0xFF; // PORTB.1 = 1 = internal pullup enabled
jeśli mogę użyć komparatora analogowego i wybierz PORTB.1 jako AIN1 będzie wewnętrzny pullup być stosowane do mojego sygnału wejściowego ? Mam nadzieję, że ktoś ma osobiste doświadczenie, aby zweryfikować to zachowanie. Mam nadzieję, że to pytanie nie jest zbyt "zorientowane sprzętowo" na przepełnienie stosu. Dzięki!
EDIT W odpowiedzi na niektóre komentarze poniżej do skutku „dlaczego nie traktować go digitially”, to dlatego, że moja „Sygnał” jest generowany przez czujnik optyczny (mianowicie czujnika IR). Nie mogę być pewny, że będzie on "wystarczająco twardy", aby zostać zinterpretowanym jako zero cyfrowo, więc zamierzam użyć wewnętrznego odniesienia 2.56V jako mojego progu przełączania. Po prostu próbuję odebrać "zdarzenie IR", więc wydawało mi się to najprostsze.
Ponadto, korzystając z komparatora analogowego, mogę wykryć zdarzenie "asynchronicznie" za pomocą ISR. Niektóre pinezki mogą wywoływać przerwanie na cyfrowej krawędzi, ale ta nie chce polegać na odpowiedzi na spadek poniżej V_IL.
+1 za skierowanie go do arkusza danych; zawsze pierwsze miejsce do patrzenia. – Clifford
Tak, to właśnie myślałem, dzięki! – vicatcu
Niestety, zaakceptowałem tę odpowiedź przed wypróbowaniem. Okazuje się (pomimo wnioskowania z arkusza danych), że wewnętrzny pullup * musi być * wyłączony, aby użyć szpilki jako wejścia do analogowego komparatora. – vicatcu