6 stanów w '2313

To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
ODPOWIEDZ
Awatar użytkownika
Ertew
Użytkownik
Posty: 1414
Rejestracja: 03 lip 2005, 10:36
Lokalizacja: Leszno
Kontakt:

6 stanów w '2313

Post autor: Ertew » 12 sty 2006, 14:27

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.

Gienek
-
Posty: 32
Rejestracja: 01 sie 2003, 8:05
Lokalizacja: Tarn-Góry

Post autor: Gienek » 12 sty 2006, 19:31

Są to generalnie PORTY Zażądzają nimi instrukcje IN i OUT
Co do adresów to wszystko znajdziesz na stronie producenta.

Awatar użytkownika
Koppel
Użytkownik
Posty: 500
Rejestracja: 24 lip 2005, 18:05
Lokalizacja: Gliwice

Post autor: Koppel » 12 sty 2006, 19:35

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.

Awatar użytkownika
Ertew
Użytkownik
Posty: 1414
Rejestracja: 03 lip 2005, 10:36
Lokalizacja: Leszno
Kontakt:

Post autor: Ertew » 13 sty 2006, 15:38

Dzięki za odpowiedź, ale:
Koppel pisze:dla wyjścia
1 - stan wysoki
0 - stan niski
czyli jest możliwy stan wysokiej impedancji i stan podciągnięcia - kto każe wtedy sprawdzać jaki stan ma dany pin

Awatar użytkownika
Koppel
Użytkownik
Posty: 500
Rejestracja: 24 lip 2005, 18:05
Lokalizacja: Gliwice

Post autor: Koppel » 13 sty 2006, 17:26

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:
kto każe wtedy sprawdzać jaki stan ma dany pin

ODPOWIEDZ