Perché gli AVR Atmel sono così popolari?


25

Una recente domanda sui vantaggi / svantaggi di vari tipi di MCU. Gli AVR non sembravano nemmeno degne di nota, date le risposte. Perché allora a un estraneo sembra che gli AVR stiano vivendo un impeto di popolarità? Ciò è dovuto esclusivamente ad Arduino o c'è qualcos'altro che rende l'AVR un microcontrollore particolarmente buono?


1
Moderatori: questa dovrebbe essere una domanda Wiki della community.
Jason S,

5
E sono così popolari nell'industria come lo sono nel mondo degli hobbisti?
endolith,

1
A parte tutti i punti positivi delle risposte: "L'AVR è stata una delle prime famiglie di microcontrollori a utilizzare la memoria flash su chip per l'archiviazione dei programmi". (Wikipedia)
Sz.

Risposte:


37

La famiglia AVR ha molti buoni dispositivi economici, adatti agli hobbisti con belle periferiche, basso consumo energetico e un buon supporto multipiattaforma.

Sì, Arduino è una parte importante. Ma penso che Arduino sia esistito nel modo in cui ha funzionato - e per il successo che ha - in parte dovuto a quelle caratteristiche.

  • Bene: funzionano bene. Facile da programmare in C per la maggior parte delle funzioni di base. Documentazione adeguata.

  • Economico: molti pezzi da $ 3- $ 5, disponibili presso i principali distributori in piccole quantità.

  • Hobbyist friendly: parti in pacchetti a foro passante: un grande contrasto con molte famiglie di chip oggi disponibili. I dispositivi AVR più recenti (ad esempio, xmega) sono meno.

  • Belle periferiche: oscillatore incorporato, memoria flash, RAM integrata, porte seriali, ADC, EEPROM e le altre chicche che consentono di eseguire un singolo MCU su una scheda protoboard per fare cose di base, senza troppi problemi.

  • Basso consumo energetico. Oggigiorno il principale punto di AVR. I polloni possono funzionare a batteria quasi per sempre se sai cosa stai facendo.

  • Buon supporto multipiattaforma: l'AVR è stato progettato pensando al supporto C, non come ripensamento. Il supporto di GCC è arrivato presto e una grande comunità open source si è sviluppata attorno a questo. È ancora uno dei migliori MCU che puoi sviluppare da qualsiasi piattaforma con strumenti gratuiti. Questo è molto importante rispetto alle altre famiglie, molte delle quali usano compilatori proprietari o hanno un supporto gcc poco brillante. Anche PIC era in ritardo al gioco con buoni compilatori C gratuiti.

Per quanto riguarda il motivo per cui non c'era molto a riguardo nelle risposte alla tua domanda precedente, penso che (1) stai vedendo piccoli errori di campionamento e (2) molte delle risposte erano specificamente per discutere di soluzioni non AVR, perché gran parte della discussione su questo sito è incentrata su AVR / Arduino. La maggior parte delle famiglie di microcontrollori non sono rappresentate nel tuo elenco al momento della stesura di questo, compresi alcuni che uso regolarmente e altri che sono tra i più popolari al mondo.


2
Concordo sul fatto che la disponibilità di una toolchain in C sia stata probabilmente un fattore nel successo hobbistico di AVR. Alcuni anni fa, quando ho iniziato a dilettarmi con i micros da un background software, le opzioni erano BASIC Stamp, il che era ottimo per i principianti, ma l'ambiente di sviluppo non era davvero soddisfacente per un programmatore. C'era PIC, che credo avesse solo un assemblatore disponibile al momento, il che è OK ma non mi sentivo ASM. Poi c'era l'AVR che aveva avr-gcc, potevo programmare come un programmatore, gli AVR erano versatili e facili da collegare ai progetti e i programmatori erano economici e facili da costruire.
Suboptimus,

28

Ho iniziato a utilizzare i PIC ma in seguito sono passato agli AVR. Sono passato perché c'è GCC per gli AVR. Questo mi ha dato un ambiente a cui ero abituato, gratuitamente, e mi ha permesso di compilare il codice su Linux / OSX, non solo su Windows.

Anche se al giorno d'oggi ci sono molti compilatori C per PIC, alcuni anche per Linux - tutti hanno le loro stranezze che non volevo imparare.


9
+1 gcc FTW! Abbiamo cercato di utilizzare un paio di compilatori C Microchip e la loro interpretazione delle specifiche C ha provocato la diffusione di invettive da un cubo di colleghi. Vorrebbe avere CCG.
J. Polfer,

1
Ho iniziato ad apprezzare il compilatore Microchip C18 ora che mi sono abituato. Imparare a usare #pragma e i vettori di interruzione è stata probabilmente la parte più difficile. Le librerie C che forniscono possono far risparmiare molto tempo di sviluppo.
mjh2007,

2
Non mi piacciono i compilatori PIC18 / PIC16, ma mi piacciono i compilatori 24F e dsPIC30F / 33F, che sono basati su GCC.
Thomas O

9

Da quello che ho visto, gli AVR hanno avuto un impeto di popolarità solo in mercati di nicchia come gli strumenti per hobbisti e le applicazioni di prototipazione rapida. AVR ha svolto un ottimo lavoro nell'ottenere il supporto di strumenti multipiattaforma su Linux, MAC e PC.

Tutti quelli con cui ho parlato che utilizzano microcontrollori in applicazioni OEM utilizzano PIC, una sorta di variante ARM o un MSP430 (solo per applicazioni a bassa potenza). Devo ancora incontrare qualcuno che utilizza un AVR.


2
Ne ho incontrati alcuni professionalmente. Sospetto che il mercato degli hobbisti nel suo insieme sia una goccia nel loro secchio.
Windell Oskay,

1
Sono d'accordo. Non credo che un microcontrollore (o probabilmente la maggior parte delle aziende produttrici di semiconduttori) sopravviverebbe a lungo se il loro mercato primario avesse un hobby. Non ci sarebbe abbastanza volume. Il mercato degli hobbisti potrebbe essere un calo nel secchio Atmel ma sembra un piccolo secchio;) Forse dovrebbe esserci una domanda di follow-up: quali aziende e tipi di applicazioni OEM utilizzano i microcontrollori Atmel?
jluciani,

Uso AVR32 in prodotti professionali. Elimina i punti dai dispositivi ARM cortex-M3 (nella mia applicazione). Ho visto AVR8 ma non ce l'hanno mai fatta. MSP430 li ha battuti profondamente.
uɐɪ

4
@Ian Quali tipi di prodotti?
jluciani,

4
@jluciani Modem dati satellitari molto piccoli ea bassa potenza. Le modalità a basso consumo di MSP e AVR32 sono eccellenti con la conservazione dei dati RAM. Le modalità ARM a basso consumo (ad eccezione delle nuove microcomponenti energetiche) non consentono il funzionamento in modalità di risparmio energetico e spesso non mantengono il contenuto della RAM.
uɐɪ

7

Il PIC di Microchip è il numero uno nelle vendite di MCU a 8 bit e l'AVR è il quinto. Questo potrebbe spiegare perché l'AVR non viene menzionato spesso come altri dispositivi.


Prima di entrare nei microcontrollori e nell'elettronica, avevo sentito parlare di "PIC" e non avevo sentito parlare di "AVR" (sebbene avessi sentito parlare di Arduino).
terrazza

"PIC" sembra essere diventato in qualche modo un termine generico per un MCU, come "Hoover" per un aspirapolvere.
Leon Heller,

E ho pensato che "PIC" fosse una "parola di quattro lettere" !!!
uɐɪ

3
(parola generica) No, non è così.
tissit,

12
citazione necessaria
joeforker

6

Arduino è irrilevante o ti staresti chiedendo perché Arduino è così popolare e non perché AVR. Gli AVR sono stati "popolari" per un po 'completamente indipendentemente da Arduino. Arduino è un prodotto delle stesse cose che hanno reso AVR attraente. È un altro prodotto, un altro devkit. L'AVR non è popolare nelle unità fornite in cui 8051 nei dispositivi e PIC nelle smart card o quant'altro ha numeri enormi o nei mercati di cellulari e PC in cui l'AVR non è nemmeno in concorrenza.

Invece di popolare , potresti dire che AVR è attraente . E questo è. I punti principali sono già emersi: è disponibile ed economico, richiede pochissimi componenti o funzionalità della scheda (orologi, bus ...), è facilmente ISP e, soprattutto, c'è un buon supporto software. Ottieni un vero compilatore, programmando progetti di software e hardware, documenti, esempi, librerie, tutto gratis come in libertà. Non è necessario combattere i fornitori e chiedersi se la dimensione del codice è limitata o si sente che il compilatore è stato sospeso o non funzionerà su alcun sistema operativo da questo decennio. Se non prima, allora una volta che sei stato morso abbastanza volte, apprezzerai strumenti e documenti aperti in cui nessuno impone ciò che puoi e non puoi fare o sapere.


-5

Ci sono due principali produttori di μC e l'eterno dilemma Pic-Atmel. Non posso raccomandare a nessuno cosa scegliere, ma posso spiegare i motivi che mi hanno spinto a scegliere Atmel. Alcuni di questi motivi sono sconosciuti anche a me stesso - forse mi è piaciuto di più come sembra - ma mi sono sentito più attratto da questa famiglia perché mi sembrava molto più vicino al vecchio microprocessore Z80 e che ho usato per diversi bellissimi progetti quando era più giovane.

Cosa posso dire, se decidi di andare in una direzione, attenersi ad essa e rimanere fedele a quella famiglia, secondo il principio che è meglio conoscere una cosa completamente rispetto a due cose a metà strada.


4
Hai mai sentito parlare di ST o NXP? Che ne dici di Texas Instruments? Freescale? Inoltre, i PIC sono una famiglia di microcontrollori prodotti da una società chiamata Microchip. Pic non è un produttore.
Joe Baker,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.