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

Przesiadka z '51 na ATmega: wybór, książki, kompilator ASM dla AVR

prokopcio 17 Wrz 2006 12:21 1719 10
REKLAMA
  • #1 3028492
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    Witam.

    Do tej pory głównym moim zajęciem jest tworzenie układów mikroprocesorowych na '51 ale one powoli umierają :cry:. Myślę że to ostatni dzwonek kiedy jeszcze mój umysł może czegoś się nauczyć :D (przeuczyć) więc postanowiłem przesiąść się na Atmegę (wstępnie) o którą będę opierał swoje nowe projekty ponieważ '51 są już przestarzałe a znam je na wylot (assembler).
    W związku z tym mam do Was ważne dla mnie pytania:

    1. Czy Atmega to dobry wybór - a może coś innego... Chodzi mi o jak największą "nieśmiertelność" bo już niczego innego się nie nauczę.

    2. Jaką polecicie książkę "dla kumatych" - najbardziej wpadła mi w oko: Mikrokontrolery AVR ATmega w praktyce Autor: Rafał Baranowski

    3. Jai kompilator ASM dla AVR wybrać - AVR Studio ?

    LICZĘ NA WASZĄ POMOC - ZWŁASZCZA TYCH, KTÓRZY JUŻ SIĘ PRZESIEDLI - Dodam, że wykonuję profesjonalne układy, w których nie może mieć miejsca "niestabilna, wadliwa praca itp, itd..."

    Dodano po 26 [minuty]:

    Acha jeszcze jedno: czy trudno jest się przesiąść z asm'51 na asmAVR - jeszcze nie zacząłem przeglądać szczegółowo instrukcji, składni programu itp...
  • REKLAMA
  • Pomocny post
    #2 3028899
    Tdv
    Poziom 34  
    Posty: 2237
    Pomógł: 150
    Ocena: 53
    To zupełnie inne mikrokontrolery i asemblery też się znacząco różnią. Nie wydaje mi się, żeby '51 "wymierała", wręcz przeciwnie, jest ciągle rozwijana, na rynku jest sporo mikrokontrolerów z rdzeniem '51 z dodatkowym osprzętem...
    Zawsze earto jednak poznać coś nowego, AVRy to dosyć dobre układy, większość "chorób wieku dziecięcego", o ile nie wszystkie, mają już za sobą. AVR STudio to oprogramowanie producenta i jak najbardziej można je polecić.
  • Pomocny post
    #3 3028952
    przemek20
    Poziom 21  
    Posty: 328
    Pomógł: 41
    Ocena: 25
    Używaj avr studio lub czegokolwiek innego, to nie ma znaczenia. Jeśli potrafisz programować to pościągaj pdfy z atmela i wszystkiego się dowiesz. Żadnych książek nie potrzebujesz. Z asemblerem na avr jest jeden problem. Ja również pisałem programy w asm na 51, ale asm do avr wyjątkowo mi się nie spodobał. Avr to procek riscowy i W celu wykonania tych samych operacji co na 51 trzeba użyć kilkakrotnie więcej instrukcji, dlatego wciąż lubię 51 (wielu producentów cały czas rozwija tą technologię) a na avrki piszę w C (z wstawkami asm).
    Pozdrawiam.
  • REKLAMA
  • Pomocny post
    #4 3029159
    szymtro
    Poziom 30  
    Posty: 1421
    Pomógł: 101
    Ocena: 59
    Nie polecam avr studio - nie warto żebyś nawet instalował jak do tej pory używasz asemblera. Masz pewnie albo pspad albo programmers notepad wiec ściagnij sobie avr asm 2 ( jedynka tez moze być ale ten ma np wiele poleceń w linii) i do tego plik helpa (tam sa też przykłady komend) i podłącz to wszystko do edytora. W efekcie dostaniesz bardzo wygodne i praktyczne (avr studio jest mało praktyczne) i polubisz avr'y (ale to tylko na poczatku - reszta to koszmar).

    A '51 jeszcze nie wymarła - dlatego ze licencja intela już dawno wygasła.
  • Pomocny post
    #5 3029327
    Dexter77
    Poziom 28  
    Posty: 889
    Pomógł: 134
    Ocena: 19
    Pewne rzeczy robi sie poprostu inaczej. Stwierdzenie ze potrzeba wiecej instrukcji zeby zrobic to samo co na 51 nie jest do konca prawdziwe. Sa sytuacje gdzie tak, sa gdzie wrecz odwrotnie. Jedyny problem jaki j anapotkalem przy przesiadce to fakt ze jednostka arytmetyczno-logiczna jest podlaczona do 32 rejestrow ogolnego przeznaczenia i tylko na nich mozna wykonywac roznego rodzaju operacje. Jesli wiec chcesz dokonac jakiejs opercji na zmiennej przechowywanej w RAM-ie musisz najpierw ja zaladowac do rejestru a potem spowrotem zachowac (jesli potrzeba). No i duzym (wedlug mnie) utrudnieniem jest fakt ze niektore instrukcje nie wspolpracuja ze wszystkimi 32 rejestrami. np. LDI dziala z rejestrami od 16 do 31. Na poczatku to denerwuje ;) Jak sie czlowiek przyzwyczai to juz sama przyjemnosc.
    Natomiast jezeli chodzi o przyszlosc to..... chyba jedynie ARMy. Ceny tych uC spadaja na leb na szyje, wydajnosc i zasob peryferiow jest systematycznie rozwijana. Ten sam rdzen powoduje ze mozna wybierac kosci od roznych producentow i zmiany w programie przy ewentualnej przesiadce nie sa tak bardzo duze. Przy odpowiednim podejsciu programisty wrecz kosmetyczne i dotycza tylko dobierania sie do sprzetu. Lubie bardzo AVRy ale podejrzewam ze predzej one umra niz 51-ka. Nastepca 51-ki beda ARMy.
    Pozdrawiam
    Dexter
  • #6 3029987
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    Dzięki za wypowiedzi. O ARM'ach całkiem nie mam pojęcia co to za procki, a uważam, że '51 są bardzo ubogie w sprzęt, ale wolałbym używać ich nadal lecz bardziej rozbudowane (EEPROM, AC, I2C, RTC, wewnętrzny generator, jakaś większa pamięć programu itp.) - teraz wszystko dołączam (jak trzeba z zewnątrz)... ATMEGI są dość "wypasione" w sprzęt więc chyba na nie się zdecyduję, jeśli mają umrzeć dość szybko to rezygnuję... A co z literaturą - wolę mieć druk pod ręką - teraz często zaglądam do "Mikrokonrolery jednoukładowe rodziny mcs 51" po rzeczy, którymi nie zaprzątam sobie głowy.
  • #7 3030473
    przemek20
    Poziom 21  
    Posty: 328
    Pomógł: 41
    Ocena: 25
    Spróbój 51 Analog Devices. Są lepiej wyposażone w peryferia niż atmelki ale niestety są droższe. Miganie diodką w avr asm to czysta przyjemność rzeczywiście, za to później ... Generalnie dużych projektów na avrki nie ma co pisać w asemblerze (moje subiektywne zdanie) za to na 51 jak najbardziej. Ciekawą technologią jest 51 z szybkim rdzeniem jednotaktowym. Niestety w Polsce ciężko to kupić i jak na razie występują tylko krótkie procki z takim rdzeniem. Ciekawe czy atmel będzie tą technologię rozwijał. Podejrzewam że nie produkuje 51 wyposażonych tak jak avry w celu promocji i lepszej sprzedawalności tych ostatnich - w końcu AVR to wynalazek właśnie atmela.
    pdfy możesz sobie przecież wydrukować. Zawierają 100% potrzebnych informacji.
    Pozdrawiam.
  • REKLAMA
  • #8 3031206
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    A co z nieśmiertelnością - na niej mi mocno zależy? do tej pory od kilku lat projekty mam na AT89c51 i podobnych i już drugi sklep internetowy, w którym się zaopatruję w szęści wycofał je ze sprzedaży na cześć 89s51 (i już jest potrzebna zmiana programatorka bo nie są do końca kompatybilne) podejrzewam, że za niedługo usłyszę, że je też wycofano. Cena też odgrywa rolę. AVRy są tanie i dobrze wyposarzone dlatego zmierzam w ich stronę. Co do rozbudowanych projrktów to praktycznie tylko dopisuje się dodatkowe procedury - u mnie są w większości programów w stylu (ctrl+c, ctrl+v)....
  • REKLAMA
  • #9 3031233
    Skubik
    Poziom 15  
    Posty: 106
    Pomógł: 12
    Ocena: 2
    prokopcio napisał:
    A co z nieśmiertelnością ...

    Na to pytanie chyba nik Ci nie odpowie bo tego nie wiadomo.
    Kiedys pewien człowiek od M$ powiedział ze w komputerze wystarczy 640KB pamieci.
  • #10 3031640
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    a nie wystarczyło by ci ? :-)
  • #11 3033470
    przemek20
    Poziom 21  
    Posty: 328
    Pomógł: 41
    Ocena: 25
    S51 to wersja rozwojowa i bardzo dobrze że jest. Jej programowanie jest beznadziejnie proste i nie potrzebujesz przecież zadnego programatora poza zwykłym kablem. Wprowadzenie tego proca jak i innych (jednotaktowe) świadczy że atmel nie wycofuje się z 51 tylko ją rozwija. Pozostali producenci tak samo. Ale avrki też są fajne i nic nie stoi na przeszkodzie żeby używać i tych i tych.
    Pozdrawiam.

Podsumowanie tematu

✨ Dyskusja dotyczy przejścia z mikrokontrolerów rodziny 8051 na AVR, zwłaszcza na układy ATmega, z uwzględnieniem wyboru platformy, literatury oraz narzędzi programistycznych. Użytkownicy podkreślają, że rodzina 8051 nadal jest rozwijana i nie jest "wymarła", choć Atmegi oferują bogatsze wyposażenie peryferyjne (EEPROM, I2C, RTC, wewnętrzny generator, większa pamięć programu). Wskazano, że asembler AVR różni się od 8051, jest procesorem RISC, co może wymagać więcej instrukcji do wykonania tych samych operacji, a także specyfiki pracy z 32 rejestrami ogólnego przeznaczenia i ograniczeniami niektórych instrukcji (np. LDI działa tylko na rejestrach 16-31). Co do narzędzi, polecane jest AVR Studio jako oficjalne środowisko, choć niektórzy preferują lekkie edytory z zewnętrznym asemblerem AVR ASM 2. Wskazano, że programowanie dużych projektów w asemblerze AVR jest mniej wygodne niż w C z wstawkami asm. Poruszono też temat przyszłości mikrokontrolerów, gdzie ARM jest wskazywany jako kierunek rozwoju ze względu na rosnącą wydajność i spadające ceny. W kwestii trwałości i dostępności, zauważono, że niektóre modele 8051 są wycofywane ze sprzedaży, co skłania do wyboru AVR jako bardziej przyszłościowej platformy. Literatura polecana to m.in. "Mikrokontrolery AVR ATmega w praktyce" Rafała Baranowskiego oraz dokumentacja producenta w formie PDF. Alternatywnie wspomniano o mikrokontrolerach 8051 firmy Analog Devices, które mają lepsze peryferia, ale są droższe. Ogólnie zaleca się poznanie AVR, ale nie rezygnowanie całkowicie z 8051, gdyż oba typy mają swoje zalety i zastosowania.
REKLAMA