eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikauC poczatekRe: uC poczatek
  • Data: 2009-03-09 17:35:29
    Temat: Re: uC poczatek
    Od: "T.M.F." <t...@n...mp.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    >>> Czy ktoś może mi podpowiedzieć jak osiągnąć w Atmedze sprzętowy
    >>> pomiar impulsu na wejściu tak jak można to zrobic w 8051 ustawiając
    >>> GATE=1 w rejestrze TMOD - impuls podany na INT? (dla ułatwienia link
    >>> z opisem liczników:
    >>> http://riad.usk.pk.edu.pl/~mlankosz/uc/uc_inst07.pdf
    )
    >>
    >> Uniwersalnie - wykorzystac pin wyzwalany zboczem do generowania
    >> przerwania, w ktorym odczytujesz timer. Inna opcja - taktowac timer
    >> zewnetrznym przebiegiem zegarowym, ustawic go tak, zeby generowal
    >> przerwanie przy zadanej wartosci i w procedurze obslugi odczytywac czas.
    >> W zaleznosci od uzytego timera sa inne opcje.
    >> Mozna wykorzystac pin input capture pin do wyzwolenia timera, mozna go
    >> wyzwolic takze z komparatora.
    >
    > Każda w podanych metod wymaga wykonania przynajmniej kilku instrukcji,

    Tylko te kilka instrukcji dla AVRa wykona sie w czasie krotszym niz
    jedna instrukcja dla '51. Na wykonanie jednej instrukcji '51 wymaga co
    najmniej 12 taktow zegara, AVR w tym czasie zrobi 12/24 instrukcje.
    Inna sprawa, ze w podanych metodach jedyne co musisz zrobic to odczytac
    zawartosc 8/16 bitowego rejestru, czyli dokladnie tyle samo co w '51, bo
    przeciez jakos wynik musisz odczytac, prawda?

    > więc może się okazać, że krótki impuls może zostać albo zgubiony, albo
    > zmierzony z dużym błędem, a więc - 8051 nadal górą! ;-)

    Zartujesz? AVR moge taktowac zegarem 20MHz, minimalny czas trawania
    impulsu dla tego wariantu to 100ns, zadna '51 nie odczyta portu z taka
    rozdzielczoscia. A XMega maja juz taktowanie 32MHz/32 MIPSy.

    > Dodam jeszcze, że w 8051 można (przez mały trick) wykonać program z
    > zewnętrznej pamięci RAM, co kiedyś miało bardzo duży walor edukacyjny.

    A jaki ma to walor praktyczny? To moze bylo ciekawostka w czasach kiedy
    nie bylo programowalnych FLASHy.

    > Czasem także przydaję się dwupoziomowy priorytet przerwań. Asembler też
    > jest łatwiejszy niż w AVRach.

    Znowu sobie zartujesz. Porownujesz regularna liste rozkazow AVR z
    potworkiem '51?

    > A jeśli chodzi o C to zauważyłem, że Keil
    > 8051 potrafi skompilować krótszy kod niż GCC AVR. Oczywiście AVR są

    Nie jest to dziwne biorac pod uwage, ze gcc jest portowany z duzych
    prockow i np. nie obsluguje modeli pamieci, co jest problemem przy
    duzych AVRach, bo wymaga uzycia 32-wskaznikow (gcc nie supportuje
    wskaznikow 24-bitowych).
    Podobnie obsluga arhitektury harwardzkiej przez gcc to tylko proteza, bo
    ten kompilator nigdy do takiej arhitektury nie byl projektowany.
    Jak chcesz porownywac to porownuj podobny kompilator na '51 i AVR,
    zdziwisz sie. Lista rozkazow AVR byla projektowana z mysla o kompilatorze c.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: