Dokładnie to chodzi mi o stany we/wy w ATtiny2313
wy: 0, 1, podciągnięte, wysokiej impedancji. Czyli pod jakimi adresami pamięci są one przechowywane
we: skąd można te informacje pobrać, i gdzie ustawić podciągnięcie.
Za wszystko z góry dziękuje.
6 stanów w '2313
Są to generalnie PORTY Zażądzają nimi instrukcje IN i OUT
Co do adresów to wszystko znajdziesz na stronie producenta.
Co do adresów to wszystko znajdziesz na stronie producenta.
Kierunek portu ustawia się w rejestrze DDRx, gdzie x to litera portu. 0 na odpowiedniej pozycji oznacza wejście, 1 oznacza wyjście.
Fizyczny stan portu, niezależnie od tego, czy jest on ustawiony jako wyjście czy wejście pobrać można z rejestru PINx.
Rejestr PORTx konfiguruje stan na linii. Jego znaczenie zależne jest od kierunku wyprowadzenia portu. I tak:
dla wejścia
1 - podciągnięcie do + zasilania
0 - stan wysokiej impedancji
dla wyjścia
1 - stan wysoki
0 - stan niski
Jak widać, możliwe są 4 stany a nie 6, jak zaznaczono w temacie.
Fizyczny stan portu, niezależnie od tego, czy jest on ustawiony jako wyjście czy wejście pobrać można z rejestru PINx.
Rejestr PORTx konfiguruje stan na linii. Jego znaczenie zależne jest od kierunku wyprowadzenia portu. I tak:
dla wejścia
1 - podciągnięcie do + zasilania
0 - stan wysokiej impedancji
dla wyjścia
1 - stan wysoki
0 - stan niski
Jak widać, możliwe są 4 stany a nie 6, jak zaznaczono w temacie.
Napisałem wyżej
Stan faktycznie panujący na wyprowadzeniu dostępny jest w rejestrze PINx. Nie odczytamy tam co prawda, że na wyjściu panuje stan "podciągnięcia" albo "wysokiej impedancji". Stan odczytany z rejestru PINx czystym 0 lub 1 - zależnym od napięcia panującego na wyprowadzeniu.
Nawet, jeśli wysterujemy wyprowadzenie jako faktyczne wyjście, ustawimy 1 i obciążymy je bardzo mocno (>40mA) tak, że napięcie spadnie poniżej pewnej magicznej granicy (dla 5V zasilania będzie to około 2V - nie sprawdzałem.... wyrzucam z pamięci), wtedy w rejestrze PINx znajdzie się stan 0. Nie polecam takich prób i nie przeprowadzałem ich - wynika to jedynie ze schematów blokowych dostępnych na stronie ATMELA.
Po dokładne informacje, oraz wartości napięć progowych polecam zajrzeć na stronę www.atmel.com
-------------------------------------------------------------
Nie wiem czy dobrze zrozumiałem Twoją wypowiedź... Mam trochę problemów z tym zdaniem:
Stan faktycznie panujący na wyprowadzeniu dostępny jest w rejestrze PINx. Nie odczytamy tam co prawda, że na wyjściu panuje stan "podciągnięcia" albo "wysokiej impedancji". Stan odczytany z rejestru PINx czystym 0 lub 1 - zależnym od napięcia panującego na wyprowadzeniu.
Nawet, jeśli wysterujemy wyprowadzenie jako faktyczne wyjście, ustawimy 1 i obciążymy je bardzo mocno (>40mA) tak, że napięcie spadnie poniżej pewnej magicznej granicy (dla 5V zasilania będzie to około 2V - nie sprawdzałem.... wyrzucam z pamięci), wtedy w rejestrze PINx znajdzie się stan 0. Nie polecam takich prób i nie przeprowadzałem ich - wynika to jedynie ze schematów blokowych dostępnych na stronie ATMELA.
Po dokładne informacje, oraz wartości napięć progowych polecam zajrzeć na stronę www.atmel.com
-------------------------------------------------------------
Nie wiem czy dobrze zrozumiałem Twoją wypowiedź... Mam trochę problemów z tym zdaniem:
kto każe wtedy sprawdzać jaki stan ma dany pin