mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wiedereinstieg


Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
erstmal hallo an die gemeinde!

bin neu hier und möchte wieder in die mikrocontrollerwelt einsteigen.

habe erfahrung mit assembler-programmierung (8051er,...).

bin jetzt etwas unsicher in welche richtung es jetzt gehen soll.

ob AVR, ARM oder MSP430?

was meint ihr?

mfg.
Roman

Autor: The Daz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab den AVR genommen. Billig und ueberall erhaeltlich.

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hab auch an das stk500 board gedacht.

wo liegt der unterschied zwischen avr, arm oder msp430?

Autor: Erwin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> wo liegt der unterschied zwischen avr, arm oder msp430?

Siehe http://www.mikrocontroller.net/articles/AVR_PIC_51-Vergleich

Triffts nicht ganz, hilft aber vielleciht trotzdem etwas ;-)

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das würde ja eher den AVR ins rennen bringen, vorallen auch durch das
STK500 board.

dafür hab ich preise zw. 90 und 205 euro gefunden.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der ARM ist ein 32-Bitter und sehr komplex, da würde ich erstmal die
Finger von lassen. Auch sollte man den nur in C programmieren, da es
ein RISC ist.


Wenn Du den 8051 kennst, ist es nicht schwer den AVR zu erlernen.

Allerdings gibt es da einen wesentlichen Unterschied:

AVR-Programmme sind fast nie binär kompatibel und oft nicht mal Source
kompatibel. D.h. Bits haben manchmal andere Namen, andere Bedeutung
oder sind in unterschiedlichen Registern oder Register sind in
unterschiedlichen Speicherbereichen. Auch die Interruptvektoren sind
bei jedem Typ verschieden durcheinander gewürfelt.

Will man auf einen anderen AVR-Typ umsteigen, sind also Anpassungen
nötig.


Peter

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also man sollte sich gut überlegen, auf welchen AVR-typ man sich
festlegt. mit welchem arbeitet ihr so?

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na ganz so dramatisch ist es nicht. Eine Portierung ist keine große
Sache, ein paar Bitnamen ändern (das muss man beim 8051 wohl auch, oder
haben alle die gleichen IO-Funktionen?), und schon ist man wieder im
Rennen. Für den Anfang brauchst du dir wirklich keine Sorgen zu machen.

Autor: The Daz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Roman,
ich suche mir den geeigneten AVR nach der Anzahl der benoetigten I/O
pins und Features aus. Kommt bei mir eigentlich nie vor, dass ich viel
code von einem AVR Typ auf den anderen uebertragen muss. Wenn du das
STK500 kaufst, sind gleich ein oder zwei uC dabei. Bei mir wars ein
AT90S8515 und ein ATMega16.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"dafür hab ich preise zw. 90 und 205 euro gefunden."


wenn der Preis eine Rolle spielt und Du den 8051 schon kennst, ist ein
8051 mit Bootloader wohl am besten, z.B. der AT89C51RB2 kostet bei
Reichelt 9,20€.

Einfach noch nen RS-232 Pegelwandler anschließen und los gehts:

http://www.mikrocontroller.net/forum/read-1-25968.html#new


Der AT89S52 ist zwar günstiger (1,60€), aber den muß man wie die AVRs
über den Parallelport programmieren und das bereitet oft Probleme.

Die mit Bootloader sind also erfolgssicherer und man ist als Anfänger
nicht gleich entmutigt.

Daher ist es verwunderlich, warum Atmel in die AVRs nicht auch einen
Bootloader einprogrammiert.


Peter

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
preis spielt keine rolle, würde aber auch nicht das board um 205 euro
bei conrad.at kaufen ;-)

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"also man sollte sich gut überlegen, auf welchen AVR-typ man sich
festlegt. mit welchem arbeitet ihr so?"

Ne, ist nicht so schlimm. Man sollte es eben im Hinterkopf behalten,
wenn man es mal machen will.
Und bezüglich der unterschiedlichen Registeradressen und
Interruptvektoren nimmt einem der C-Compiler ja viel Arbeit ab. Und bei
anderen Namen meckert er die auch an und man kann sie ändern.

Ich nehme am liebsten den ATMega8, der hat ein gutes Verhältnis
zwischen Flashgröße, Pinzahl und Preis.


Peter

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"preis spielt keine rolle"

Dann nimm das STK500, 90€ klingt gut (Conrad: 205€, die haben ja nich
alle Tassen im Schrank).

Ich habs auch.


Peter

Autor: SiO2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
[at]peter dannegger Der 8-Bit AVR ist auch ein RISC. Und den proggt man
nicht nur in C.

Autor: Bjoern Mueller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hab im studium ARM-assembler gelernt(bzw eher mal reingeschnuppert)
und muss sagen, dass das richtig spass macht. ist sogenannter
"conditional assembler", dh dass es von vielen befehlen auch
'bedingte' varianten gibt. zb kann man anstatt ADD einfach ADDEQ
schreiben und die addition wird nur ausgefuehrt, wenn der vorige
vergleich(den auszuloesen ist nochmal ne andere geschichte..(zb mit
ADDS(fuer register setzen)) ergeben hat, dass die werte gleich waren.
insgesamt ergibt sich dadurch sehr schoen kompakter code.

naja, um ontopic zu bleiben:
ich benutz "privat" auch die AVR-familie, programmier in C und bin
sehr zufrieden damit. kann ich uneingeschraenkt weiterempfehlen.

und wenn man den AVR erstmal an seine grenzen bringen kann(ausser durch
extrem schlechten code), dann sollte der umstieg zum ARM auch kein
problem mehr darstellen. ich bin zwar noch nicht soweit ;), werd mich
demnaechst aber mal mit den SAMs(smart ARM) von atmel beschaeftigen.
mal schaun, ob nen projekt bei rauskommt, dass mit nem AVR nicht
moeglich gewesen waere.

gruss, bjoern.

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in welchen sprachen programmiert ihr? c, c++ oder assemb?

Autor: The Daz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich nehm C und weiche nur im Notfall auf Assembler aus. Ist aber
Geschmackssache.

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz früher Assembler, dann lange C, dann lange gar nicht, jetzt wieder
in Assembler kleine Programme auf dem AVR und ich sehne mich ganz stark
nach C! Wird auch kommen, sobald ich Zeit finde, mich da einzuarbeiten.

Mein Eindruck: Wenn man ein paar hundert Byte programmiert oder sehr
effizient programmieren muss, ist Assembler sinnvoll. Ansonsten, wenn
man es einmal kann, ist man mit C wohl oft schneller am Ziel. Bei
manchen Anforderungen sogar extrem viel schneller. Und übersichtlicher,
Programme lassen sich schneller begreifen, auch nach Jahren noch.

Wer dagegen erstmal Grundlagen lernen möchte, sollte zuerst mit
Assembler anfangen.

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also ich denke ich werde mir das stk500 mit der erweiterung 501
besorgen. als controller den ATMEGA 128-16TQ ;-)

Autor: andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Roman

ich kann dir den MSP430 empfehlen. Hab früher mit PIC und 8051
gearbeitet, werd ich nie im Leben mehr machen.
Der MSP ist optimal wenn du niedrige Stromaufnahme und gleichzeitig
hohe Rechenleistung brauchst. Er hat eine sehr klare 16 Bit RISC
Architektur mit 27 Befehlen und ist sehr gut in C und Assembler
programmierbar. Mit AVR hab ich noch noch nicht gearbeitet.

gruß andi

Autor: Roman Fischer (romanf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
so, heute ist das STK500 gekommen (für knapp € 95). jetzt kanns los
gehen ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.