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

Jak przejść z '51 na AVR w assemblerze? Różnice i wskazówki dla programisty

prokopcio 14 Lis 2005 02:59 6681 11
REKLAMA
  • #1 1986441
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    Witam.

    Znam assembler i budowę '51 na wylot - i teraz problemik, bo one chyba za nie długo umrą śmiercią naturalną - co mam robić - te assemblery nawet do siebie nie są podobne (na pierwszy rzut oka)... i pytanie z tematu: Jak najprościej przesiąść się na AVR-ki z '51 ???

    PROSZĘ O POMOC I O NIEWSPOMINANIE MI O BASCOMIE...
  • REKLAMA
  • #2 1986465
    frohme
    Poziom 21  
    Posty: 421
    Pomógł: 25
    Ocena: 15
    Chyba jedyna droga to ściągnięcie ze strony Atmela danych konkretnego procesora (np. AT90S2313 albo któregoś ATMega) i prześledzenie jakie rozkazy są dostępne i co one naprawdę robią. Od strony sprzętu jest kilka znaczących różnic. Kolejny krok to chyba AVR Studio jako zintegrowane środowisko do pracy z AVR - ami a potem np. darmowy AVR - GCC dla C. Są jeszcze książki ale z różnymi błędami, dlatego polecam stronę u źródła czyli Atmel.
  • Pomocny post
    #3 1986567
    strdaniel
    Poziom 20  
    Posty: 357
    Pomógł: 29
    Ocena: 4
    witam

    raczej bym tak nie zakładał że 51 umrą śmiercią naturalną..
    jest to raczej bardzo wątpliwe, nie wiem czy kolega obserwuje rynek ale polecam.. właściewie to chyba większość producentów liczących się posiada w swojej ofercie 51 i ciągle wypuszcza nowe wersje ... odsylam np do artykułów w EP z ostatnich miesięcy... pojawiają się nowe wersje nawet z ethernetem gdzieś widziałem, tak więc jest po prostu taka część rynku która zawsze będzie potrzebowała małych mikrokontrolerów i tutaj będą ze sobą walczyły 51 z avr-ami ..
    nie znaczy to oczywiście że nie należy poznawac nowych układów
    bo to stanowczo polecam

    co do avrów to polecam poczytac po prostu specyfikacje ze stronki atmela
    mają fajnie poopisywane układy
    można też poszukać kursów po Polsku jest ich troche w necie
    najlepiej jednak uczyć się praktycznie -- zmontowac sobie układzik, programator , podłączyć się , kompilować i pracować

    http://freefm.pluton.one.pl/mike/avr/programowanie.html

    powodzenia
  • REKLAMA
  • #4 1986877
    goldfire
    Poziom 14  
    Posty: 143
    Pomógł: 6
    Ocena: 3
    Kolega "Prokopcio napisał", "Znam assembler i budowę '51 na wylot " jeśli tak rzeczywiście jest to by przesiąść się na nowy mikrokontroler to nic trudnego. A co do wymierania 51" to nie tak szybko...Polecam sciągnięcie PDF-a ze strony ATMELA i wyszukiwarkę Google do wyszukania not oraz podstaw AVR.
  • REKLAMA
  • #5 1988014
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    Dzięki za dodanie otuchy ale te assemblery (instrukcje) wg.mnie nie są podobne już nie mówiąc o architekturze ale mimo to spróbuję - biorę się do polskiej narazie lektuty - miło by było jakby ktoś podał jakięś przystępne polskie kursy asm'a dla avr - bo samemu nie wychodzi mi szukanie (niefajne strony)...
  • REKLAMA
  • #6 1988110
    strdaniel
    Poziom 20  
    Posty: 357
    Pomógł: 29
    Ocena: 4
    jeśli mogę jeszcze coś doradzić to proponuję zakup jeden z pozycji
    "mikrokontrolery rodziny avr " np. at 90s1200 albo 90s2313
    te książeczki można kupić np. w księgarni techniczej w Krakowie
    http://www.techniczna.com.pl/
    kosztują niewiele pierwsza chyba niecałe 20 a druga trochę ponad 20 zł
    czytałem obie i polecam są fajnie napisane,
    niestety zdaje się że w języku polskim mamy deficyt takich kursów

    pozdrawiam
  • #7 1988592
    Krisgorn
    Poziom 19  
    Posty: 267
    Pomógł: 33
    Ocena: 10
    Warto abyś rozważył jeszcze jedną opcję - mikrokontrolery z rdzeniem ARM.
    Moim zdaniem jeśli chcesz poznać jakieś nowocześniejsze mikrokontrolery to warto abyś zainteresował się LPC2000 lub AT91SAM.
    Jeśli za podobną cenę możesz dostać AVR lub trzydziestodwubitowy ARM z mnóstwem peryferiów, to ...
  • #8 1989204
    Jacu$
    Poziom 27  
    Posty: 730
    Pomógł: 119
    Ocena: 26
    A ja polecam http://www.avr-asm-tutorial.net/.
    To jest (moim zdaniem) genialny kurs assemblera dla avr'ów.
    Jest dostępny w formie PDF-a w języku niemieckim i angielskim.
    Lepszego na razie nie znalazłem.
    Sam się przesiadałem kiedyś z '51 na PIC a później na AVR ale chyba wrócę do PIC-ów.
  • #9 1990258
    j_saw
    Poziom 14  
    Posty: 67
    Pomógł: 2
    Ocena: 59
    Posłuchaj przedmówców i zastanów się czy warto "dobrowolnie" przesiadać się z '51 na AVR. Jeżeli jeszcze nie próbowałeś pisać coś na AVR to radzę przypatrz się na obsługę portów - to horror w porównaniu do '51. Oczywiście są też zalety AVR ale programowanie '51 jest ELEGANCKIE szczególnie w C.
  • Pomocny post
    #10 1992244
    Konto nie istnieje
    Konto nie istnieje  
  • #11 1992517
    genetix
    Poziom 24  
    Posty: 669
    Pomógł: 42
    :arrow: j_saw
    Elegancja programowania zależy od sposobu pisania kodu (przejrzystości, umiejętnego treściwego komentowania) oraz umiejętności konstruowania efektywnych algorytmów.

    To, czy piszesz w C pod 8051, pod AVR czy PIC-a nie ma żadnego znaczenia, gdyż różnice będą głównie w nazwach rejestrów.

    :arrow: pawelwiniarski0
    mega128 na początek jest zdecydowanie złym pomysłem. Ryzyko uszkodzenia drogiego procesora jest dość duże. Prawda jest taka, że początkujący uczą się od zapalania diody i odczytu stanu przycisków. Nie chcę to poddawać w wątpliwość umiejętności programistycznych autora tematu - jednak różnice w architekturze oraz podejściu do programowania są na tyle duże, że naukę trzeba podjąć niemalże od podstaw. Także bardzo skomplikowany proc, jakim jest mega128 nie ułatwo zadania. Polecam zakup ATtiny2313 - jest tani i nie szkoda go puścić z dymem podczas nieuniknionych pomyłek... a możliwości ma (wbrew nazwie) całkiem spore.

    Życzę sukcesów,
    genetix
  • #12 2283452
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    Pozostałem przy ASM'51.... narazie
    pozdrawiam

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy przejścia z mikrokontrolerów rodziny 8051 na AVR w asemblerze, ze szczególnym uwzględnieniem różnic architektury i zestawów instrukcji. Użytkownicy podkreślają, że 8051 nadal jest popularny i rozwijany, a jego całkowite "wymieranie" jest mało prawdopodobne ze względu na szerokie zastosowania i dostępność nowych wersji, także z dodatkowymi funkcjami jak Ethernet. Przejście na AVR wymaga zapoznania się z dokumentacją producenta (Atmel), analizą dostępnych instrukcji oraz praktycznej nauki z wykorzystaniem AVR Studio i darmowego AVR-GCC. Polecane są także polskojęzyczne książki i kursy, choć ich dostępność jest ograniczona. Wskazano na różnice w obsłudze portów i architekturze, co wymaga nauki niemal od podstaw. Zalecane jest rozpoczęcie nauki od prostszych modeli AVR, takich jak ATtiny2313, zamiast bardziej zaawansowanych, np. ATmega128, aby uniknąć uszkodzeń i ułatwić adaptację. Alternatywnie sugerowano rozważenie mikrokontrolerów ARM (LPC2000, AT91SAM) jako nowocześniejszych rozwiązań. Dostępne są również wartościowe kursy asemblera AVR w języku angielskim i niemieckim, np. na stronie avr-asm-tutorial.net. Ostatecznie autor tematu zdecydował się na pozostanie przy asemblerze 8051 na razie.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA