logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Pytania o przerwania w mikrokontrolerze 8051 - szczegóły i działanie

mkpl 20 Maj 2008 18:52 1591 21
REKLAMA
  • #1 5161446
    mkpl
    Poziom 37  
    Posty: 5678
    Pomógł: 306
    Ocena: 863
    Witam
    Miałbym prośbę aby ktoś odpowiedział na poniższe pytania ;)
    Potrzebne mi są one na jutro poniewaz mam z tego sprawdzian ;)
    Odwdzięcze się punktami
    A wiec tak:
    1. Na czym polega przerwanie w '51
    2. Jak są rozmieszczone adresy przerwan
    3. Jakie znaczniki sa zerowane autowmatycznue po wejsciu do procedury obslugi
    4.Jaka jest roznica w działaniu obslugi przerwania kiedy konczy się rozkazem RETI
    5.W jaki sposob okreslana jest kolejność obsługi przerwania przy nadejściu kilku sygnałów przerwania
    6.Ile cykli maszynowych moze wykozystac uC '51 od momętu wejścia do procedury oslugi przerwania

    Za wszelką pomoc bede bardzo wdzieczny ;)
    Pozdrawiam
    MKPL
  • REKLAMA
  • #2 5161479
    bogdan_p
    Poziom 39  
    Posty: 3849
    Pomógł: 525
    Ocena: 120
    tu znajdziesz wszystko o 8051
  • REKLAMA
  • #3 5161566
    mkpl
    Poziom 37  
    Posty: 5678
    Pomógł: 306
    Ocena: 863
    Sęk w tym ze niemam za wiele czasu tzn do jutra. Szukać w googlach i innych kopalniach wiedzy bym szukał ale czas goni :| dlatego stwierdziłem ze lepiej bedzie sasięgnąć rady fachowców w tej dziedzinie niz snuć samemu niepewne teorie
  • #4 5161813
    Freddy
    Poziom 43  
    Posty: 19997
    Pomógł: 1394
    Ocena: 2821
    mkpl napisał:
    Sęk w tym ze niemam za wiele czasu tzn do jutra. Szukać w googlach i innych kopalniach wiedzy bym szukał ale czas goni :| dlatego stwierdziłem ze lepiej bedzie sasięgnąć rady fachowców w tej dziedzinie niz snuć samemu niepewne teorie

    No to szybciej już się nie da. Przeczytanie zajmie Ci około godziny, a czekanie na odpowiedzi userów znacznie więcej.
    Ale tak to zwykle jest jak się robi "zaliczenie" do szkoły, czeka się na gotowce i nie chce się samemu poszukać
  • #5 5162209
    Balu
    Poziom 38  
    Posty: 4397
    Pomógł: 323
    Ocena: 48
    I zwykle zostawia się na ostatnią chwilę.
    A odpowiedzi na te pytania są trywialne dla każdego kto kiedykolwiek pisał cokolwiek w 51 w asemblerze...
  • REKLAMA
  • #6 5162707
    zumek
    Poziom 39  
    Posty: 3352
    Pomógł: 695
    Ocena: 52
    Balu napisał:
    ...A odpowiedzi na te pytania są trywialne dla każdego kto kiedykolwiek pisał cokolwiek w 51 w asemblerze...

    Może dla Ciebie są trywialne , ale np. na 6 (Ile cykli maszynowych moze wykozystac uC '51 od momentu wejścia do procedury oslugi przerwania ) , ja odpowiedzi nie znam ;)

    Piotrek
  • #7 5163199
    Freddy
    Poziom 43  
    Posty: 19997
    Pomógł: 1394
    Ocena: 2821
    Kolega mkpl chyba się na nas obraził i postanowił się nauczyć z tego co mu podesłaliśmy, albo co gorsza samemu poszukać w sieci.
    Ja też nie wiem ile cykli zegara .... mimo, że pisałem w asemblerze na '51, ale to było dawno temu. Po prostu nie pamiętam, ale od tego są karty katalogowe, dokumentacje języka itp. itd. oraz Google !
  • #8 5163463
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 573
    Podstawy 51 . jeśli już wykładowca podał wam na tacy tematy to może warto je opracować. Lenistwo studentów, uczniów sięga granić. Trzeba wystosować apel do wykładowców i nauczycieli , ZERO PODPOWIEDZI
    I TEMATÓW. Mogę zrozumieć że ktoś zapyta czego można się spodziewać na egzaminie z 51 ale pisać odpowiedzi na tematy wykluczone. Trzeba uważać na lekcjach a nie bumelować i grać w karty ...
  • #9 5163530
    Mickwa14
    Poziom 13  
    Posty: 92
    Pomógł: 6
    Ocena: 3
    kolego jakbys mial jakieś konkretne pytania o aduc8051 pisz na gadu 2320296
  • #10 5164239
    mkpl
    Poziom 37  
    Posty: 5678
    Pomógł: 306
    Ocena: 863
    wszystko znałazłem ;) bogdan_p dzieki :D Fajnie tak od leni wyzywac co ;) pewnie kiedys tez tak robiliscie.
    Mickwa14 jak czegos nie bede rozumiał to się odezwę ;)
  • #11 5164631
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 573
    Koledze na zdrowie wyjdzie doskonalenie własnych umiejętności w szukaniu i zdobywaniu wiedzy. To co sie nauczysz nikt ci nie zabierze. Taka jest prawda. Wykładowcy podający wszystko na tacy i dyktujący pytania egzaminacyjne produkują "wadliwych techników inżynierów itd" Trzeba dbać o jakość tytułu inż. Są szkoły gdzie studenci mówią płace i wymagam sesja 1 dzień wszyscy zaliczyli. Szkoła do likwidacji , tytuły też wykładowców i rektora do pudła ...
  • REKLAMA
  • #12 5166095
    Mickwa14
    Poziom 13  
    Posty: 92
    Pomógł: 6
    Ocena: 3
    Mi tez na zdrowie wyjdzie dzis tez pisałem kartkówke:P
  • #13 5166178
    mkpl
    Poziom 37  
    Posty: 5678
    Pomógł: 306
    Ocena: 863
    kamyczek masz racje podaja ale w sposob tak zawiły ze niejestem w stanie zrozumiec o co biega dlatego szukałem w necie :) I w tym miejscu musze przyznac racje innym ktorzy pisza ze na baskomie czlowiek wiele sie nie nauczy ;) Potrafie pisac proste programy na AVR w bascomie a nie wiedziałem jak działa przerwanie
  • #14 5166251
    kris_gor
    Poziom 17  
    Posty: 240
    Pomógł: 14
    Ocena: 9
    Ja kończyłem studia w połowie lat 90-tych. Wykładowca powiedział, że 8051 wykładał nie będzie bo do tego jest tyyyyyyyyyyyyyyle materiału wszędzie(internet jeszcze wtedy nie był taki popularny). Oczywiście na egzaminie pytał wszystkiego (cykle maszynowe to z pamięci malowałem) bo i takie pytania były i jego to g.... obchodziło gdzie ja się tego nauczę. A dzisiaj.... szkoda gadać.
    Do dziś wspominam tego wykładowcę jako jednego z najlepszych i właśnie dlatego, że wymagał i zmuszał do nauki.
  • #15 5273424
    Mickwa14
    Poziom 13  
    Posty: 92
    Pomógł: 6
    Ocena: 3
    bogdan_p a o aduc845 na edw tez jest podobna ilośc materiału bo coś nie moge znaleźć? a bardzo potrzebuje....
  • #17 5273484
    Skubik
    Poziom 15  
    Posty: 106
    Pomógł: 12
    Ocena: 2
    aduc845 to dokładnie klon '51 za jednym małym wyjątkiem. Jeden z portów ( chyba P1) jest tylko portem wejsciowym
  • #18 5273499
    Przetwornik
    Poziom 26  
    Posty: 1012
    Pomógł: 34
    Ocena: 19
    Ad. 5. Przerwanie może być przerwane innym przerwaniem pod warunkiem, że przerwanie oczekujące ma równy lub wyższy priorytet od aktualnie wykonywanego.
  • #19 5273951
    Mickwa14
    Poziom 13  
    Posty: 92
    Pomógł: 6
    Ocena: 3
    I jeszcze jedno pytanie programista asemblera może edytować, zmieniać przerwania? czy tylko stworzyć programowo swoją,dodatkową funkcje przerwania?

    __________________________________________

    Przykładowo jeśli mam kod(przerwanie z przepelniania licznika T0):
    org 0Bh
    ljmp Int_T0
    I potem definiuje Int_T0:........
    reti
    to czy ja zmieniam domyślne przerwanie wynikłe z przepełnienia T1?


    Istnieje funkcja "Zmień" i proszę z niej korzystać. Posty scaliłem. [c_p]
  • #20 5281127
    skywalker
    Poziom 22  
    Posty: 702
    Pomógł: 34
    Ocena: 29
    W 8051 domyślnie pod adresem obsługi przerwania nic nie ma.

    W tym konkretnym przykładzie procesor wykonuje skok do pamięci programu pod adres (0BH ) obsługi przerwania timer0.

    I wykonuje to co tam znajdzie :).

    (oczywiście zapisuje aktualny stan licznika rozkazów aby mógł wykonać skok powrotu obsługi przerwania RETI )

    Tzn zawsze trzeba zadbać by pod adresem obsługi przerwania zanazło się chociaż samo RETI (jeśli zezwalamy na to przerwanie );
  • #21 5281158
    Mickwa14
    Poziom 13  
    Posty: 92
    Pomógł: 6
    Ocena: 3
    a czasem po przepełnieniu licznika T0, licznik T0 zostaje wyzerowany samoczynnie i następuje powrót z przerwania?także nie trzeba nic wpisywać pod adres 0Bh
  • #22 5281208
    skywalker
    Poziom 22  
    Posty: 702
    Pomógł: 34
    Ocena: 29
    Jeśli zezwolisz na przerwania w rejestrze IE to trzeba wpisać RETI.

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy szczegółów działania przerwań w mikrokontrolerze 8051, obejmując pytania o zasadę działania przerwań, rozmieszczenie adresów przerwań, automatyczne zerowanie znaczników po wejściu do procedury obsługi, różnicę w działaniu przy zakończeniu obsługi rozkazem RETI, określanie kolejności obsługi przerwań przy jednoczesnym wystąpieniu kilku sygnałów oraz liczbę cykli maszynowych wykorzystywanych od momentu wejścia do procedury obsługi przerwania. Wskazano, że pod adresem obsługi przerwania w 8051 znajduje się skok do odpowiedniej procedury, która musi zawierać rozkaz RETI, aby poprawnie zakończyć obsługę. Priorytety przerwań decydują o kolejności ich obsługi, a przerwanie może być przerwane przez inne o wyższym lub równym priorytecie. Wskazano również, że dokumentacja techniczna i karty katalogowe są podstawowym źródłem informacji o szczegółach działania, w tym o liczbie cykli maszynowych wykorzystywanych podczas obsługi przerwania. W dyskusji pojawiła się także wzmianka o mikrokontrolerze ADuC845, który jest klonem 8051 z drobną różnicą w funkcjonalności portu P1.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA