Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

Przerwania MCS-8051

jerry68
-
-
Posty: 1
Rejestracja: 17 gru 2005, o 00:43
Lokalizacja: opole

Przerwania MCS-8051

Postautor: jerry68 » 17 gru 2005, o 01:02

Witam
nie wiem czy dobrze sie wstrzelilem w rubryke na tym forum ale prosze mi wybaczyć. :570:
Dostałem projekt z uP i nie wiem jak amm sie za niego zabrać.tematem mojej pracy jest zwiekszenie liczby przerwań zewnetrznych do 32 w podstawowej wersji MCS-8051.Priorytet przerwań ma być stały wynikający z numeracji.Dodatkowo do uP ma być podpięta zewnętrzna pamięć danych i programu. Jak ktoś am jakies pomysły to prosze piszcie. Schemaciki mile widziane.
Pozdrawiam i z góry dziekuje za wszelkie odpowiedzi

JDawid
-
-
Posty: 38
Rejestracja: 22 gru 2005, o 00:13
Lokalizacja: Rzeszów

8051

Postautor: JDawid » 4 sty 2006, o 10:44

Najperierw przeoraj strukturę uP 8051, tu masz stronkę z dokumetacją chyba do każdego uP http://alldatasheet.com/

radcorp
-
-
Posty: 79
Rejestracja: 2 sty 2006, o 15:52
Lokalizacja: Polska

Postautor: radcorp » 4 sty 2006, o 23:39

zakładam, że stan logiczny aktywacji przerwania wynosi low.
-wszystkie 32 sygnały trzeba pomnożyć logicznie ze sobą (wielka bramka AND)
wyjście AND połączyć z INT0
włączyć przerwanie INT0
i teraz najlepsze:
w obsłudze INT0 trzeba odczytać 32 linie i ustalić gdzie wystąpiło 0

Awatar użytkownika
areczkas
-
-
Posty: 338
Rejestracja: 2 mar 2004, o 13:18
Lokalizacja: Warszawa
Kontaktowanie:

dociekliwy

Postautor: areczkas » 5 sty 2006, o 08:12

i teraz najlepsze:
w obsłudze INT0 trzeba odczytać 32 linie i ustalić gdzie wystąpiło 0
a dokładniej? Jak to można wykonać ?

tomek_j
-
-
Posty: 264
Rejestracja: 14 sty 2004, o 09:06

Re: dociekliwy

Postautor: tomek_j » 5 sty 2006, o 08:43

i teraz najlepsze:
w obsłudze INT0 trzeba odczytać 32 linie i ustalić gdzie wystąpiło 0
a dokładniej? Jak to można wykonać ?
No to rzeczywiście problem jest..... proponuje dolaczyc jako kontoler przerwan jakis 32bitowy procesorek - moze intel386, bo chyba tylko on potrafi odczytac 32 linie portu.....
Powaznie: mozesz uzyc Intelowskiego starocia 8255, jak masz wyciagnieta magistale, to bez problemu go podlaczysz i masz 24 linie...no to za mało, to podlaczasz 2 sztuki i po klopocie.
pewnym wyjsciem jest stosowanie enkoderow priorytetowych na przyklad 74147 lub 74148. popatrz pokombinuj.....

radcorp
-
-
Posty: 79
Rejestracja: 2 sty 2006, o 15:52
Lokalizacja: Polska

Postautor: radcorp » 5 sty 2006, o 22:55

ja widzę to tak
weź 4 układy PCF8574 ( PCF8574 to 8-bitowy expander, czyli 8-bitowy port wejścia/ wyjścia komunikujący się po I2C z uP)
da ci to 32 linie wejścia/wyjścia, najcekawsze jest to, że każdy układ posiada koncówke o nazwie INT (wyjście zgłoszenia przerwania) zerowaną jeżeli nastąpi zmiana na jednym z osmiu wejść układu
podłącz te cztery wyścia INT do uP np: do P1
następie te cztery wyścia podłącz również do 4-wejściowej bramki AND np: 74LS21 a wyjście bramki do INT0 uP

Wróć do „8051”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 46 gości