Forum: Mikrocontroller und Digitale Elektronik Wieso Atmel?


von ein Ahnungsloser (Gast)


Lesenswert?

Warum sind im Hobbybereich so oft Atmel MCUs anzutreffen? (Oder täuscht 
dieser Eindruck?)

von Benedikt K. (benedikt)


Lesenswert?

ein Ahnungsloser wrote:
> Warum sind im Hobbybereich so oft Atmel MCUs anzutreffen? (Oder täuscht
> dieser Eindruck?)

Ganz einfach:
Geh mal auf www.reichelt.de (oder auch www.conrad.de) und schau was die 
an MCUs anbieten. Atmel, Microchip, Philips. Viel mehr wirst du nicht 
finden.

Was leicht erhältlich und billig ist wird verwendet. Ein IC kann noch so 
gut sein: Wenn es nirgends erhältlich ist verwendet es niemand.

Bei den AVRs und auch den ARMs passt ganz einfach auch das 
Preis/Leistungsverhältnis.

von Matthias (Gast)


Lesenswert?

Was bei den Atmels auch schön ist:

- GCC Port
- Freeware IDE (AVR Studio) Der Debugger ist TOP im Vergleich zu MPLAB.
- Schöne Architektur (Man muss nicht um 3 Ecken arbeiten)
....

von Sven P. (Gast)


Lesenswert?

Für mich persönlich:
- freier, guter C-Compiler
- etliche ausgezeichnete deutsche Assembler
- brauchbare IDE mit Simulator
- Unterstützung von/durch Linux
- geradlinige Architektur (sinnvoller Registersatz, klare, eingängige 
Instruktionen, keine krummen Befehlsbreiten usw.)
- billig
- einigermaßen schnell (RISC)
- überschaubare, durchdachte Peripherie, fast ohne Hardware-Bugs
- robust, einfach einzusetzen

von tt (Gast)


Lesenswert?

Naja, ich verwende eigentlich auch lieber AVR... aber MPLAB ist 
mittlerweile um Klassen besser als AVR-Studio. Einen kostenlosen 
Compiler (C18) gibt es auch.Das AVR Studio empfinde ich mittlerweile als 
Schwachpunkt von ATmel.

von Jörg S. (joerg-s)


Lesenswert?

Als jahrelanger MSP430 Programmierer hab ich letztens ein ATTiny44 
programmieren müssen. War regelrecht geschockt wie viel weniger die 
Dinger können (Keine Schmitt-Trigger Eingänge, keine wahlweisen Timer 
Port-Pins, Keine Interrupt Flags für einzelne Pins, keine Auswahl auf 
welche Flanke man einen Interrupt haben will, nur 1,1V Ref. Spg, kein 
JTAG,...)
Ich vermute mal das die größerer Serien mehr können, aber im Vergleich 
zum MSP schon echt hart mit was sich die AVRler rumärgern müssen ;) Kann 
jedenfalls auch nicht wirklich verstehen warum gerade Anfänger und 
Bastler auf die Dinger abfahren...

von Simon K. (simon) Benutzerseite


Lesenswert?

Matthias wrote:
> Was bei den Atmels auch schön ist:

Es gibt keine "Atmels".

von Christian (Gast)


Lesenswert?

Gegenfrage:

Wieso nicht ?

von Thomas P. (tpircher) Benutzerseite


Lesenswert?

tt wrote:
> Das AVR Studio empfinde ich mittlerweile als
> Schwachpunkt von ATmel.

Ich konnte mich auch noch nie mit AVR Studio als IDE anfreunden Aber es 
zwingt dich ja niemand deine Programme in AVR Studio zu schreiben.

Ich verwende es nur mehr den Programmer um die Flash und Fuses zu 
programmieren und gelegentlich verwende ich den Debugger und Simulator. 
Diese Programme sind aber recht brauchbar.

Thomas

PS: ein weiterer nicht genannter Punkt fuer Atmel ist die gute 
Community, hier in mikrocontroller.net und nebenan bei avrfreaks.net.

von Benedikt K. (benedikt)


Lesenswert?

Jörg S. wrote:
> Keine Schmitt-Trigger Eingänge

Falsch. Die Eingänge haben alle einen Schmitt Trigger.

> keine Auswahl auf welche Flanke man einen Interrupt haben will

Auch falsch.

> kein JTAG

Auch falsch. Zumindest die größeren, neueren haben JTAG. Bei nem 8 
Pinner ist JTAG ja auch etwas schwer...

Beim Stromverbrauch dürfte ein MSP430 aber unschlagbar sein. Wieso ist 
der also nur so relativ wenig verbreitet?

von Simon K. (simon) Benutzerseite


Lesenswert?

Jörg S. wrote:
> Als jahrelanger MSP430 Programmierer hab ich letztens ein ATTiny44
> programmieren müssen.
Was  wohlgemerkt ein Prozessor für ganz kleine Sachen ist. (Merkt man ja 
auch am Namen, "Tiny" = winzig.)

> War regelrecht geschockt wie viel weniger die
> Dinger können
Sind ja auch keine Feature Monster, sondern eben kleine Prozessoren.

> keine wahlweisen Timer
> Port-Pins
Was auch immer das sein soll: Der Tiny44 hat 4 OC-Ausgänge. (PWM oder 
Frequenz-Output)

> Keine Interrupt Flags für einzelne Pins
Was soll das sein? Der INT0 Pin ist einstellbar flankentriggernd.

> keine Auswahl auf
> welche Flanke man einen Interrupt haben will
Natürlich hat man das. Nur nicht bei den PinChange Interrupts. Dafür 
hast du aber auf jedem Pin einen PCINT.

> nur 1,1V Ref. Spg
Welcher Prozessor hat denn mehr als eine Referenzspannungsquelle 
eingebaut?

> kein
> JTAG,...)
Guter Witz! Wie soll das vernünftig gehen bei so wenigen Pins. Im 
übrigen unterstützt der Tiny44 DebugWire, was bei diesem AVR viel 
sinnvoller ist als JTAG.

von Simon K. (simon) Benutzerseite


Lesenswert?

Christian wrote:
> Gegenfrage:
>
> Wieso nicht ?

Was soll das? Wenn ich sage "es gibt keine lila Frösche mit 5 Beinen", 
wofür braucht man da eine Gegenfrage?

Kannst ja mal http://www.atmel.com besuchen und bei der Suche "Atmel" 
eingeben und gucken ob du irgendeinen Prozessor oder eine 
Prozessorfamilie findest.

Atmel hat sowohl 8 Bitter als auch 32 Bitter im Programm. Und auch 
andere Sachen als Mikrocontroller. Flash, EEPROMs usw.

von Severino R. (severino)


Lesenswert?

Simon K. wrote:

> Atmel hat sowohl 8 Bitter als auch 32 Bitter im Programm. Und auch
> andere Sachen als Mikrocontroller. Flash, EEPROMs usw.

Richtig, und die Controller haben eine AVR-, AVR32-, 8051- oder ARM- 
Architektur.

Genauso wie es keine "Microchips" gibt, sondern PIC, PIC18, PIC24, 
PIC30, PIC32.

von Patrick (Gast)


Lesenswert?

@ Simon K.:
Wenn du noch mal hinschaust erkennst du wahrscheinlich auch, dass die 
"Gegenfrage: Wieso nicht" nicht gegen deine Aussage gerichtet war 
sondern auf das Topic dieses Threads bezogen ;-)

~Patrick

von Jörg S. (joerg-s)


Lesenswert?

>Falsch. Die Eingänge haben alle einen Schmitt Trigger.
Dann scheint das Datenblatt falsch und der Tiny defekt zu sein. 
ZUmindest halte ich 0,4mV Hysterese für nicht sonderlich 
Schmitt-Tiggerich.

>> keine Auswahl auf welche Flanke man einen Interrupt haben will
>Auch falsch.
Es gibt zwar den PCINT, der wird aber schon durch PWM vom Timer0 
blockiert.

>> kein JTAG
>Auch falsch. Zumindest die größeren, neueren haben JTAG.
Die größeren hab ich aber nicht gemeint.

>> keine wahlweisen Timer
>> Port-Pins
>Was auch immer das sein soll: Der Tiny44 hat 4 OC-Ausgänge. (PWM oder
>Frequenz-Output)
Ich möchte z.B. den PCINT Portpin nutzen. Geht aber nicht weil Timer0 
mit PWM den Pin besetzt. Beim MSP würde ich den Timerausgang jetzt 
einfach auf einen anderen Pin legen.

>> Keine Interrupt Flags für einzelne Pins
>Was soll das sein? Der INT0 Pin ist einstellbar flankentriggernd.
Ich möchte wissen welcher Pin einen Interrupt ausgelöst hat.

>> nur 1,1V Ref. Spg
>Welcher Prozessor hat denn mehr als eine Referenzspannungsquelle
>eingebaut?
MSP430 (1,5V / 2,5V)

>> kein
>> JTAG,...)
>Guter Witz! Wie soll das vernünftig gehen bei so wenigen Pins.
Beim MSP430 haben's auch die Kleinsten (14 Pins).

von Boxi B. (boxi)


Lesenswert?

hehe, auch witzig...

von Benedikt K. (benedikt)


Lesenswert?

Jörg S. wrote:
>>Falsch. Die Eingänge haben alle einen Schmitt Trigger.
> Dann scheint das Datenblatt falsch und der Tiny defekt zu sein.
> ZUmindest halte ich 0,4mV Hysterese für nicht sonderlich
> Schmitt-Tiggerich.

Ich würde auf einen Fehler im Datenblatt tippen. In anderen 
Datenblättern steht da eher 0,4V, was realistischer ist.

>>> keine Auswahl auf welche Flanke man einen Interrupt haben will
>>Auch falsch.
> Es gibt zwar den PCINT, der wird aber schon durch PWM vom Timer0
> blockiert.

Dann nimm halt den ICP Pin oder einen PCINT den es an jedem Pin gibt. 
Man muss halt etwas improvisieren.

von Christian (Gast)


Lesenswert?

>@ Simon K.:
>Wenn du noch mal hinschaust erkennst du wahrscheinlich auch, dass die
>"Gegenfrage: Wieso nicht" nicht gegen deine Aussage gerichtet war
>sondern auf das Topic dieses Threads bezogen ;-)

richtig erkannt :)

von Jörg S. (joerg-s)


Lesenswert?

>Dann nimm halt den ICP Pin
Durch PWM von Timer0 blockiert :)

>oder einen PCINT den es an jedem Pin gibt.
Der aber nur auf beide Flanken gleichzeitg triggert.

>Man muss halt etwas improvisieren.
Hab ich ja auch gemacht :) Wäre aber halt beim MSP430 nicht nötig 
gewesen ;)

von Jörg S. (joerg-s)


Lesenswert?

>Ich würde auf einen Fehler im Datenblatt tippen. In anderen
>Datenblättern steht da eher 0,4V, was realistischer ist.
Hatte ich zuerst auch gedacht. Aber bei einem recht langsam steigendem 
und fallenden Signal an einem PCINT Port hat er nicht einen, sondern 
gleich 10-20 Interrupts nacheinander ausgelöst. Von daher war ich davon 
ausgegangen das das Datenblatt wohl doch stimmen muss. Oder gibt's ne 
andere Erklärung dafür?

von Sven P. (Gast)


Lesenswert?

Juhu, Schwanzvergleich...

Naja, so ne Kreuzschiene für Ein- und Ausgänge wär schon nett :-)

von Rolf Magnus (Gast)


Lesenswert?

>>> kein JTAG
>>Auch falsch. Zumindest die größeren, neueren haben JTAG.
>Die größeren hab ich aber nicht gemeint.

Beim Tiny44 kann man DebugWire machen, was das gleiche kann, aber nur 
einen einzigen Pin (den RESET-Pin) braucht. Das geht sogar bei den 
achtbeinigen AVRs.

von Olaf (Gast)


Lesenswert?

> Warum sind im Hobbybereich so oft Atmel MCUs anzutreffen?

Historische Gruende. Atmel und Pics (die IMHO sogar noch eher) waren
die ersten Controller mit integrierten Flash. Das war im Hobbybereich
die Errungenschaft ueberhaubt. Hinzu kam das Atmel damals mit einem
MCS51 kompatiblen Prozessor mit Flash angefangen hat als fast jeder
nur mit MCS51 rumgemacht hat.
Dann wollen wir mal nicht vergessen das die Leute in grauer Vorzeit
in Assembler programmiert haben. Da kommt dir bei PICs das Mittagessen
hoch weil sie so uebel sind, und MCS51 sind etwas aeh..unregemaessig. 
:-)
Hinzu kommt das ein AVR im allgemeinen auch schneller ist als ein alter
Standard-MCS51.

Und heute ist es so das die Kuehe nur dort das Gras fressen wo schon
andere Kuehe rumstehen. Die Leute benutzen Atmels weil die anderen es
auch schon tun. Aus dem selben Grund aus dem deine alte Tante vermutlich
Golf faehrt...

Ich selber bin vor einigen Jahren auf M16C und R8C umgestiegen und finde
die viel besser auch wenn Atmel jetzt wohl ein bisschen aufholt.

Olaf

von Weingut P. (weinbauer)


Lesenswert?

ist ja n super Vergleich ...
nen 8-Beiner gegen nen 14-Beiner vergleichen
und fehlendes JTAG bemängeln ... welche
der Beine willste denn dann für ne
Funktion noch verwenden wenn der JTAG drauf steckt?

Debugwire ...

von Jörg S. (joerg-s)


Lesenswert?

>nen 8-Beiner
Attiny44 hat 14 Pins

von Dirk W. (bastelator) Benutzerseite


Lesenswert?

... und noch einer meiner bescheidenen Gründe: DIP-Packages bis zum 
Mega644.

OK, die PICs ;) gibt's auch damit, 8051er auch, aber mit neueren 
Familien wirds da doch schwerer lötbar für Hobbyisten und Bastelatoren.

Gruß,
Dirk

von gast (Gast)


Lesenswert?

oder einen PROPELLER  als CPU benutzen!

von Michael G. (linuxgeek) Benutzerseite


Lesenswert?

ein Ahnungsloser wrote:
> Warum sind im Hobbybereich so oft Atmel MCUs anzutreffen? (Oder täuscht
> dieser Eindruck?)

Das Forum hier ist da etwas lastig, aber prinzipiell hast Du schon 
recht. Ich habe mir auch erst ueberlegt ob ich mit PICs einsteigen soll, 
davon bin ich dann aber (puh!) abgekommen ;)

von Björn W. (bwieck)


Lesenswert?

Mir hat der Assembler für AVR auf Anhieb gefallen und bleibe erstmal 
dabei.
Ich komme aus dem 6502 Umfeld.

Vielleicht mache ich nochmal was mit dem 8051 weil ja der immer noch
quasi DER Industriestandard ist (wegen 2nd Sources)

Grüße
Björn

von Peter D. (peda)


Lesenswert?

Ich hab damals (1993) auch mit den Atmel AT89C52 und AT89C2051 
angefangen und fand es super, daß ich endlich das EPROM-Löschgerät 
einmotten konnte.
Der Flash hat wirklich ne Menge Zeit gespart.

Ein paar Jahre später (1997) hat Atmel dann die AVRs vorgestellt, und da 
ich mit den Atmel 8051 sehr gute Erfahrungen gemacht hatte, habe ich sie 
mir mal angesehen.

Ich fand die klassik-AVRs allerdings nicht tauglich für ernsthafte 
Projekte, sie hatten zuviele Macken (kein funktionierendes Reset, 
vergeßlicher EEPROM, keine Bootloaderfunktion usw.).

Erst mit den ATtiny und ATmega wurden die AVRs dann auch praxistauglich.
Und der WINAVR war dann auch schon ausgereift.
Mein erster AVR, der es in ein richtiges Gerät geschafft hat, war der 
ATtiny26 und dann der ATmega8.


Peter

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> Beim Stromverbrauch dürfte ein MSP430 aber unschlagbar sein. Wieso ist
> der also nur so relativ wenig verbreitet?

Das liegt am Preis und an der Schwerfälligkeit der Händler. Unter den 
"klassischen" MSP430 ist beispielsweise der 'F1611 ein recht komfortabel 
ausgestatteter (48 kByte Flash-ROM, 10 kByte RAM, 2 UARTs, 12-Bit-ADC, 
12-Bit-DAC etc.), aber der von Reichelt aufgerufene Preis von fast 18 
EUR* schreckt aus verständlichen Gründen davor ab, das Teil einzusetzen.

Auch TI will über 10 USD** dafür haben.

Es gibt aber viel interessantere neue MSP430-Derivate, die von TI für 
erheblich weniger Geld vertrieben werden, obwohl sie leistungsfähiger 
und größer sind als der 'F1611, so z.B. das "Dickschiff" 'F5438 für 6.10 
USD**.

Das Ding hat 256 kByte Flash, 16 kByte RAM, 4 UARTs, 12-Bit-ADC und kann 
mit doppelt so hoher Taktfrequenz betrieben werden wie der alte 'F1611.

Ganz davon abgesehen sind MSP430 angenehmer zu programmieren als AVR, 
gerade in C, weil der Harvard-Krampf à la pgmspace.h entfällt. Daneben 
sind die Dinger aufgrund ihrer 16-Bit-Architektur auch etwas 
leistungsfähiger. Und das Geschieße mit falsch programmierten "Fuses" 
fällt dank der per Software steuerbaren Takterzeugung auch flach, und 
auch die Baudratenerzeugung für die UARTs ist erheblich flexibler 
(115200 Baud mit geringer Fehlerrate sind auch mit 8 MHz Quarz kein 
Problem, spezielle "Baudratenquarze" sind unnötig).

Sicher, mit Ausnahme von den winzigen F2001..F2013*** ist die 
MSP430-Reihe nicht für lötungeübte verwendbar.

Einsteiger schreckt sicherlich auch die Nichtverfügbarkeit von etwas wie 
BASCOM ab ...

*) http://www.reichelt.de/?;ARTICLE=69231
**) Hunderterstaffel
***) die gibts im DIP14-Gehäuse

von Sinusgeek (Gast)


Lesenswert?

> Mir hat der Assembler für AVR auf Anhieb gefallen

Mir auch, sehr sogar...

> und bleibe erstmal dabei.

Ich auch...

> Ich komme aus dem 6502 Umfeld.

Datt gibbet doch nicht... - Ich auch...

Am AVR gefällt mir besonders:
- die klare, einfache Architektur
- der gut durchdachte Befehlssatz
- die interne Peripherie (obwohl ich da noch Vorschläge hätte)
- der breite Versorgungsspannungsbereich
- die Verfügbarkeit in DIL-Gehäusen
- die Robustheit der ICs
- der niedrige Preis
- die Tatsache, dass ich damit halbwegs souverän umgehen kann ;-)

Sicher hätte man dieses oder jenes Detail besser machen können, aber man 
kann nicht Alles haben.

Mit dem MSP430 hatte ich auch mal (betreffs niedriger Stromaufnahme) 
geliebäugelt, er war mir aber den Preissprung nicht wert. Das 
KO-Kriterium war dann die niedrige Versorgungsspannung, also die 
5V-Unverträglichkeit.

Für 32-Bitter habe ich keine Verwendung, fürs Hobby reichen mir die AVRs 
völlig zu.

~

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Jörg S. wrote:
> Als jahrelanger MSP430 Programmierer ... kein
> JTAG,...)

Hat der MSP430 ja auch nicht. ;-)

Er hat zwar eine JTAG-ähnliche Schnittstelle, aber kein JTAG.  Gugel
mal nach JTAG, dann weißt du, was der Unterschied ist.  Spätestens
wenn du versuchst, einen ATmega mit ihm in eine JTAG-Kette zu hängen,
weißt du's auch.

Bandgap-Referenzen gibt's übrigens typischerweise nur in einer
Spannung, das liegt am physikalischen Prinzip.  Größere AVRs
skalieren diese Spannung teilweise dann auch noch auch den
alternativen Wert von 2,56 V, aber es bleibt letztlich trotzdem
ein und dieselbe Spannungsquelle.  Du könntest genauso gut einen
Eingangsspannungsteiler anbringen, der die Eingangsspannung um
2,56 / 1,1 abschwächt, der resultierende Effekt wäre fast der
gleiche.

von znuh (Gast)


Lesenswert?

im nicht-hobbybereich sollte man (jetzt) wohl von der msp430 benutzung 
absehen wenn man wert auf nicht auslesbares flash legt: 
http://events.ccc.de/congress/2008/Fahrplan/events/2839.en.html

von brizz (Gast)


Lesenswert?

> Bandgap-Referenzen gibt's übrigens typischerweise nur in einer
> Spannung, das liegt am physikalischen Prinzip.
Wow, kannte ich noch gar nicht, mal wieder was neues gelernt. Trotzdem
eine kleine Verbesserung, laut ${Suchmaschine} ist der Faktor 1.7. ;-)

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> im nicht-hobbybereich sollte man (jetzt) wohl von der msp430 benutzung
> absehen wenn man wert auf nicht auslesbares flash legt:

BSL ist in den 'F1xx-Varianten mit einem 256-Bit-Passwort geschützt, das 
bei einigen Varianten der Familie nicht so sicher ist, wie es sein 
sollte. Das beschreibt auch 
http://events.ccc.de/congress/2008/Fahrplan/attachments/1191_goodspeed_25c3_bslc.pdf.

Das Verfahren wurde bei der neueren 'F2xxx-Familie (und wohl auch 
'F5xxx) geändert und gilt als "hackproof".

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.