Dlaczego AVR firmy Atmel jest tak popularny?


25

Ostatnie pytanie dotyczące zalet / wad różnych typów MCU. AVR wydawały się nie warte wzmianki, biorąc pod uwagę odpowiedzi. Dlaczego zatem outsiderowi wydaje się, że popularność rośnie? Czy dzieje się tak wyłącznie z powodu Arduino, czy może jest coś jeszcze, co sprawia, że ​​AVR jest szczególnie dobrym mikrokontrolerem?


1
Moderatorzy: To powinno być pytanie społeczności Wiki.
Jason S

5
Czy są tak popularne w przemyśle, jak w świecie hobbystów?
endolith

1
Oprócz wszystkich dobrych punktów w odpowiedziach: „AVR był jedną z pierwszych rodzin mikrokontrolerów, które wykorzystywały wbudowaną pamięć flash do przechowywania programów”. (Wikipedia)
Sz.

Odpowiedzi:


37

Rodzina AVR ma wiele dobrych, niedrogich, przyjaznych hobbystom urządzeń z ładnymi urządzeniami peryferyjnymi, niskim zużyciem energii i dobrą obsługą wielu platform.

Tak, Arduino jest dużą jego częścią. Myślę jednak, że Arduino powstało w taki sposób - i dzięki sukcesowi - częściowo dzięki tym cechom.

  • Dobrze: działają dobrze. Łatwy do zaprogramowania w C dla większości podstawowych funkcji. Odpowiednia dokumentacja.

  • Niedrogie: Partie 3–5 USD części, dostępne u głównych dystrybutorów w niewielkiej ilości.

  • Przyjazny dla hobbystów: części w paczkach z otworami - duży kontrast dla wielu obecnych rodzin chipów. Nowsze urządzenia AVR (np. Xmega) są mniej takie.

  • Ładne urządzenia peryferyjne: Wbudowany oscylator, pamięć flash, wbudowana pamięć RAM, porty szeregowe, ADC, EEPROM i inne gadżety, które umożliwiają uruchomienie pojedynczego MCU na protoboardzie w celu wykonywania podstawowych czynności bez nadmiernego wysiłku.

  • Niskie zużycie energii. Obecnie główny punkt zwrotny AVR. Przyssawki mogą działać na baterii prawie zawsze, jeśli wiesz, co robisz.

  • Dobra obsługa wielu platform: AVR został zaprojektowany z myślą o obsłudze języka C - a nie później. Wsparcie GCC pojawiło się wcześnie i wokół tego rozwinęła się duża społeczność open source. Jest to nadal jeden z najlepszych MCU, które można opracować z dowolnej platformy za pomocą bezpłatnych narzędzi. Jest to duży problem w stosunku do innych rodzin, z których wiele korzysta z zastrzeżonych kompilatorów lub ma słabą obsługę gcc. Nawet PIC spóźniał się na grę z dobrymi darmowymi kompilatorami C.

Jeśli chodzi o to, dlaczego w odpowiedziach na twoje wcześniejsze pytanie nie było tego wiele, myślę, że (1) widzisz małe odchylenie od próby i (2) wiele odpowiedzi dotyczyło konkretnie rozwiązań innych niż AVR - ponieważ tak wiele dyskusji na tej stronie dotyczy AVR / Arduino. Większość rodzin mikrokontrolerów nie jest reprezentowana na twojej liście w chwili pisania tego tekstu - w tym niektóre, z których regularnie korzystam, i inne, które są jednymi z najpopularniejszych na świecie.


2
Zgadzam się, że dostępność łańcucha narzędzi C była prawdopodobnie czynnikiem sukcesu hobbystów AVR. Kilka lat temu, kiedy zacząłem bawić się mikrami w tle oprogramowania, opcje to BASIC Stamp, co było świetne dla początkujących, ale środowisko programistyczne nie było tak naprawdę satysfakcjonujące dla programisty. Był PIC, który, jak sądzę, miał w tej chwili za darmo asembler, co jest w porządku, ale nie czułem się jak ASM. Potem był AVR, który miał avr-gcc, mogłem programować jak programista, AVR były wszechstronne i łatwe do podłączenia do projektów, a programiści byli tani i łatwy w budowie.
Suboptimus

28

Zaczynałem od PIC, ale później przerzuciłem się na AVR. Zmieniłem, ponieważ jest GCC dla AVR. To dało mi środowisko, do którego byłem przyzwyczajony, za darmo i pozwoliło mi skompilować kod w systemie Linux / OSX, nie tylko Windows.

Chociaż w dzisiejszych czasach istnieje wiele kompilatorów C dla PIC, niektóre nawet dla Linuksa - wszystkie mają swoje dziwactwa, których nie chciałem się uczyć.


9
+1 gcc FTW! Próbowaliśmy użyć kilku kompilatorów Microchip C, a ich interpretacja specyfikacji C spowodowała, że ​​emigranci wywodzili się z kostki współpracowników. Chciałby mieć gcc.
J. Polfer

1
Zacząłem lubić kompilator Microchip C18 teraz, kiedy się do niego przyzwyczaiłem. Nauka korzystania z #pragma i wektorów przerwań była prawdopodobnie najtrudniejsza. Dostarczone przez nich biblioteki C mogą zaoszczędzić dużo czasu na programowanie.
mjh2007

2
Nie lubię kompilatorów PIC18 / PIC16, ale lubię kompilatory 24F i dsPIC30F / 33F, które są oparte na GCC.
Thomas O

9

Z tego, co widziałem, AVR zyskały popularność tylko na niszowych rynkach, takich jak narzędzia hobbystyczne i aplikacje do szybkiego prototypowania. AVR wykonał doskonałą pracę, uzyskując wsparcie dla wielu platform w systemach Linux, MAC i PC.

Wszyscy, z którymi rozmawiałem, używają mikrokontrolerów w aplikacjach OEM, albo korzystają z PIC, jakiegoś wariantu ARM lub MSP430 (tylko dla aplikacji o niskiej mocy). Jeszcze nie spotkałem nikogo używającego AVR.


2
Spotkałem kilka zawodowo. Podejrzewam, że rynek hobbystów jako całość jest kroplą w swoich koszykach.
Windell Oskay

1
Zgadzam się z tym. Nie wierzę, że mikrokontroler (lub prawdopodobnie większość firm produkujących półprzewodniki) przetrwałby długo, gdyby ich pierwotny rynek miał hobbystów. Nie byłoby wystarczającej głośności. Rynek hobbystów może być spadkiem w segmencie Atmel, ale wydaje się, że jest niewielkim segmentem;) Może powinno być kolejne pytanie - Jakie firmy i typy aplikacji OEM używają mikrokontrolerów Atmel?
jluciani

Używam AVR32 w profesjonalnych produktach. Powala plamy na urządzenia kory ARM-M3 (w mojej aplikacji). Spojrzałem na AVR8, ale nigdy nie udało się. MSP430 mocno je pokonał.
u

4
@Ian Jakie rodzaje produktów?
jluciani

4
@jluciani Bardzo małe, małej mocy satelitarne modemy danych. Tryby niskiego poboru mocy MSP i AVR32 doskonale nadają się do przechowywania danych w pamięci RAM. Tryby niskiego poboru mocy ARM (z wyjątkiem nowych mikroczęści energii) nie pozwalają na rozpoczęcie pracy w trybie niskiego poboru mocy i często nie utrzymują zawartości pamięci RAM.
uɐɪ

7

Microchip PIC jest numerem jeden w 8-bitowej sprzedaży MCU, a AVR jest na piątym miejscu. To może wyjaśniać, dlaczego AVR nie pojawia się tak często, jak inne urządzenia.


Zanim zająłem się mikrokontrolerami i elektroniką, słyszałem o „PIC” i nie słyszałem o „AVR” (chociaż słyszałem o Arduino).
taras

Wydaje się, że „PIC” stało się w pewnym sensie ogólnym terminem dla MCU, jak „Hoover” dla odkurzacza.
Leon Heller

I pomyślałem, że „PIC” to „czteroliterowe słowo” !!!
u

3
(ogólne słowo) Nie, nie ma.
tkanka

12
potrzebne cytowanie
joeforker

6

Arduino jest nieistotne lub zapytasz, dlaczego Arduino jest tak popularne, a nie dlaczego AVR. AVR są „popularne” przez pewien czas całkowicie niezależnie od Arduino. Arduino jest produktem tych samych rzeczy, które uczyniły AVR atrakcyjnym. To kolejny produkt, kolejny devkit. AVR nie jest popularny w dostarczanych urządzeniach, w których 8051 w urządzeniach i PIC w kartach inteligentnych lub które nie mają ogromnej liczby lub na rynkach telefonów komórkowych i komputerów PC, gdzie AVR nawet nie konkuruje.

Zamiast popularnego można powiedzieć, że AVR jest atrakcyjny . I to jest. Najważniejsze kwestie, które już się ujawniły: są dostępne i niedrogie, wymagają bardzo mało komponentów lub funkcji płyty (zegary, autobusy ...), są łatwe w obsłudze ISP, a przede wszystkim zapewniają dobrą obsługę oprogramowania. Otrzymujesz prawdziwy kompilator, oprogramowanie do programowania i projekty sprzętu, dokumenty, próbki, biblioteki - wszystko za darmo, jak w wolności. Nie musisz walczyć z dostawcami i zastanawiać się, czy masz ograniczony rozmiar kodu, czy słyszysz, że Twój kompilator został przerwany lub nie będzie działał na żadnym systemie operacyjnym od tej dekady. Jeśli nie wcześniej, to po ugryzieniu wystarczająco dużo razy docenisz otwarte narzędzia i dokumenty, w których nikt nie dyktuje, co możesz, a czego nie możesz zrobić ani wiedzieć.


-5

Jest dwóch głównych producentów μC i wieczny dylemat Pic-Atmel. Nie mogę nikomu polecić, co wybrać, ale mogę wyjaśnić powody, dla których zdecydowałem się na Atmel. Niektóre z tych przyczyn są mi nieznane - może bardziej podobało mi się to, jak to brzmi - ale czułem się bardziej pociągany do tej rodziny, ponieważ wydawało mi się to znacznie bliższe staremu mikroprocesorowi Z80 i którego użyłem do kilku pięknych projektów, kiedy był młodszy.

Co mogę powiedzieć, jeśli zdecydujesz się pójść w jednym kierunku, po prostu trzymaj się go i pozostań lojalny wobec tej rodziny, zgodnie z zasadą, że lepiej jest wiedzieć jedną rzecz całkowicie niż dwie rzeczy w połowie.


4
Czy kiedykolwiek słyszałeś o ST lub NXP? Co powiesz na Texas Instruments? Freescale? Ponadto PIC to rodzina mikrokontrolerów produkowanych przez firmę Microchip. Pic nie jest producentem.
Joe Baker,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.