eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikauC poczatek
Ilość wypowiedzi w tym wątku: 167

  • 121. Data: 2009-03-09 16:50:38
    Temat: Re: uC poczatek
    Od: "Nimitz" <N...@o...eu>


    Użytkownik "T.M.F.":
    >> 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, 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ą! ;-)
    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.
    Czasem także przydaję się dwupoziomowy priorytet przerwań. Asembler też jest
    łatwiejszy niż w AVRach. 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ą fajne i mają
    wiele zalet, ale jeśli chodzi o rdzeń to osobiście wolałbym architekturę
    6502 ;-)

    Admirał


  • 122. Data: 2009-03-09 17:15:14
    Temat: Re: uC poczatek
    Od: RoMan Mandziejewicz <r...@p...pl>

    Hello Sebastian,

    Monday, March 9, 2009, 4:45:12 PM, you wrote:

    >>> , ale narzuty historyczne ciągle widać. Jak mowię, zgodność z klonem
    >>> CP/M (DOS) najwidoczniej przydatna nawet w Viście :/
    >> Przesadzasz.
    > W tym że DOS jest klonem CP/M czy w tym że w Viście?

    Z NTG - sio na pl.comp.os.advocacy

    --
    Best regards,
    RoMan mailto:r...@p...pl
    Spam: http://www.squadack.na.allegro.pl/ :)


  • 123. Data: 2009-03-09 17:35:29
    Temat: Re: uC poczatek
    Od: "T.M.F." <t...@n...mp.pl>

    >>> 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.


  • 124. Data: 2009-03-09 17:42:12
    Temat: Re: uC poczatek
    Od: "Ghost" <g...@e...pl>


    Użytkownik "Nimitz" <N...@o...eu> napisał w wiadomości
    news:gp3htg$dgs$1@nemesis.news.neostrada.pl...
    >
    > Asembler też jest łatwiejszy niż w AVRach.

    Mocne


  • 125. Data: 2009-03-09 18:11:18
    Temat: Re: uC poczatek
    Od: "entroper" <e...@C...spamerom.poczta.onet.pl>

    Użytkownik "Sebastian Biały" <h...@p...onet.pl> napisał w wiadomości
    news:gp0g1h$1ih$1@achot.icm.edu.pl...

    > W jednym z
    > programów na '51 widziałem takie coś:
    >
    > // do not remove this line!
    > int foo = 0;
    >
    > Usunąłem i oczywiście kompilator wyprodukował niedziałajacy kod.
    > Komercyjny kompilator. Nowej wersji nie ma po co kupować.

    Jak radzisz sobie z błędami w prockach ? Tak samo ? Może to wyjaśnia,
    dlaczego niektórzy trzymają się 51 :)

    e.


  • 126. Data: 2009-03-09 18:13:30
    Temat: Re: uC poczatek
    Od: "Nimitz" <N...@o...eu>


    Użytkownik "T.M.F." :
    > 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.

    Wszyscy wiemy, że zwykły 8051 dzieli zegar przez 12, więc jakie to ma
    znaczenie dla programisty? Porównuj 8051 12MHz z AVR 1MHz. Owszem, w
    konsekwencji możemy uzyskać znacznie szybszy AVR, ale do rzetelnego
    porównania muszą być zachowane podobne warunki.

    >> 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.

    Nawet dzisiaj można sobie wyobrazić jakieś zastosowania - program może sam
    siebie modyfikować.

    >> 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?

    Mam uraz do stałych w AVR. A o priorytecie przerwań niczego nie napiszesz?
    ;-)

    Nie zapominajmy, że 8051 to konstrukcja lat 70, ale ciągle trzyma się
    świetnie. AVR to jeden producent, dzisiaj jest, jutro może nie być.

    Admirał.


  • 127. Data: 2009-03-09 18:35:41
    Temat: Re: uC poczatek
    Od: "T.M.F." <t...@n...mp.pl>

    >> 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.
    >
    > Wszyscy wiemy, że zwykły 8051 dzieli zegar przez 12, więc jakie to ma
    > znaczenie dla programisty? Porównuj 8051 12MHz z AVR 1MHz. Owszem, w
    > konsekwencji możemy uzyskać znacznie szybszy AVR, ale do rzetelnego
    > porównania muszą być zachowane podobne warunki.

    To jest rzetelne porownanie. Masz jakas '51 z ktorej wycisniesz 20-30
    MIPSow? Co procesor robi wewnetrznie nic mnie nie interesuje, moga tam
    mawet byc krasnoludki, mnie interesuje (w tym wypadku) mozliwy do
    uzyskania czas odpowiedzi. Napisales oczywista bzdure, ze AVR moze
    zgubic impuls, ktory '51 zmierzy.
    Nie znam za dobrze '51, ale patrzac na przyklad timerow z linka, ktory
    podales to w porownaniu z timerami w AVR sa one wrecz prymitywne.

    >>> 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.
    >
    > Nawet dzisiaj można sobie wyobrazić jakieś zastosowania - program może
    > sam siebie modyfikować.

    Tyle, ze jest to malo zgodne z dobra praktyka programowania i bardzo
    trudne do zaimplementowania w jezyku wyzszego poziomu. Mozna to
    potraktowac jako ciekawostke, bez znaczenia. Chyba, ze znasz jakis
    przyklad gdzie taki feature jest niezbedny/ulatwia zycie. Poprosze o
    przyklad.

    >>> 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?
    >
    > Mam uraz do stałych w AVR. A o priorytecie przerwań niczego nie
    > napiszesz? ;-)

    A podasz jakis przyklad w ktorym priorytety przerwan sa niezbedne?
    Zawsze moge w pierwszej instrukcji odblokowac przerwania, co przy
    predkosci AVRa spowoduje, ze bede gotowy na jego przyjecie zanim uklad
    przerwan w '51 zdecyduje co zrobic z pierwszym.

    > Nie zapominajmy, że 8051 to konstrukcja lat 70, ale ciągle trzyma się
    > świetnie. AVR to jeden producent, dzisiaj jest, jutro może nie być.

    Podobnie jak PIC i kilka innych niszowych procesorow.
    Nawet jesli Atmel by padl to przeciez ich patenty/technologia nie
    znikna. Jest rynek to ktos bedzie to kontynuowal.


  • 128. Data: 2009-03-09 18:43:58
    Temat: Re: uC poczatek
    Od: "zbyszek" <z...@o...eu>

    > Wszyscy wiemy, że zwykły 8051 dzieli zegar przez 12, więc jakie to ma
    > znaczenie dla programisty? Porównuj 8051 12MHz z AVR 1MHz. Owszem, w
    > konsekwencji możemy uzyskać znacznie szybszy AVR, ale do rzetelnego
    > porównania muszą być zachowane podobne warunki.

    Swoją drogą są 51 które dzielą zegar na 3.

    Takie porównania nie mają najmniejszego sensu!!!. Co za różnica jaki kwarc
    się podczepi, nie ma pomiędzy nimi w zasadzie różnicy - kwarce kosztują tyle
    samo i
    tyle samo miejsca zajmują. Podczepiasz taki jaki potrzebujesz.

    To co można porównać to maksymalną moc obliczeniową przy max zegarze,
    albo np który ma mniejszy pobór prądy przy realizacji tego samego zadania,
    albo mniej kosztują dla realizacji tego samego zadania, a i tu też nie ma
    tylko
    jednych 51 bo jest ich cała masa w zależności od zadania wyjdzie co innego.

    Ja kiedyś używałem taką 51 co miała w środku także kawałek logiki
    programowalnej - jak chcecie to z AVRem porównać albo inną 51 ? - tam można
    było
    sobie trochę obwodów I/O dorobić według potrzeb.

    Co za różnica co za procek stosujecie - układ ma działać!


    >>> 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.
    >>
    > Nawet dzisiaj można sobie wyobrazić jakieś zastosowania - program może sam
    > siebie modyfikować.

    Całkowicie kierunek bez sensu - tak się nie robi, co innego dynamicznie
    ładowane
    kawałki a co innego modyfikowanie kodu.

    > Nie zapominajmy, że 8051 to konstrukcja lat 70, ale ciągle trzyma się
    > świetnie. AVR to jeden producent, dzisiaj jest, jutro może nie być.

    Oba to już historia ale stosuje się je bo działają a to najważniejsze.


    zbyszek





  • 129. Data: 2009-03-09 19:12:09
    Temat: Re: uC poczatek
    Od: Sebastian Biały <h...@p...onet.pl>

    entroper wrote:
    >>Usunąłem i oczywiście kompilator wyprodukował niedziałajacy kod.
    >>Komercyjny kompilator. Nowej wersji nie ma po co kupować.

    > Jak radzisz sobie z błędami w prockach ? Tak samo ? Może to wyjaśnia,
    > dlaczego niektórzy trzymają się 51 :)

    Biorę procek z poprawionym hardware. W '51 nie ma się co popsuć bo ma
    dośc prymitywne bebechy i wszyscy klepia go z grubsza na jedno kopyto.
    Koszt wymiany AVR->ARM wynosi u mnie czas przepisania prostych driverów
    sprzetowych bo nie umoczyłem d... używając niszowego i jedynego w swoim
    rodzaju kompilatora jak to jest w przypadku '51 oblepiając go
    workaroundami na bugi w kompilacji.

    Mam pewien kod kompilujący się do AVR, ARM i PC (Linux + Windows). Tylko
    tak mogę go testować. Jestem przekonany że dodanie <wsadź tu arch
    supportowany przez gcc> kosztowalo by mnie popołudnie roboty - musze
    napisac tylko drivery do timerów, spi i portów.


  • 130. Data: 2009-03-09 19:15:58
    Temat: Re: uC poczatek
    Od: "T.M.F." <t...@n...mp.pl>

    zbyszek pisze:
    >> Wszyscy wiemy, że zwykły 8051 dzieli zegar przez 12, więc jakie to ma
    >> znaczenie dla programisty? Porównuj 8051 12MHz z AVR 1MHz. Owszem, w
    >> konsekwencji możemy uzyskać znacznie szybszy AVR, ale do rzetelnego
    >> porównania muszą być zachowane podobne warunki.
    >
    > Swoją drogą są 51 które dzielą zegar na 3.
    >
    > Takie porównania nie mają najmniejszego sensu!!!. Co za różnica jaki kwarc
    > się podczepi, nie ma pomiędzy nimi w zasadzie różnicy - kwarce kosztują tyle
    > samo i
    > tyle samo miejsca zajmują. Podczepiasz taki jaki potrzebujesz.

    Owszem. Problem powstaje tylko jesli juz nie mozna podczepic wiekszego
    kwarcu, a mocy ciagle brakuje. No i obwod na 40MHz to nie to samo co
    obwod na 10MHz. Znasz jakas '51, ktora ma 20-30MIPSow? Jak jest
    taktowana 90-360MHz?

    > To co można porównać to maksymalną moc obliczeniową przy max zegarze,
    > albo np który ma mniejszy pobór prądy przy realizacji tego samego zadania,
    > albo mniej kosztują dla realizacji tego samego zadania, a i tu też nie ma
    > tylko
    > jednych 51 bo jest ich cała masa w zależności od zadania wyjdzie co innego.

    Podobnie jak w przypadku AVR.

    > Ja kiedyś używałem taką 51 co miała w środku także kawałek logiki
    > programowalnej - jak chcecie to z AVRem porównać albo inną 51 ? - tam można
    > było
    > sobie trochę obwodów I/O dorobić według potrzeb.

    Sa AVRy z FPGA, nazywa sie to FPSLIC.

    > Co za różnica co za procek stosujecie - układ ma działać!

    Dokladnie. A zwazywszy na ilosc i jakosc narzedzi szybciej zadziala na
    AVR niz na '51.

strony : 1 ... 12 . [ 13 ] . 14 ... 17


Szukaj w grupach

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: