Atmel's, Pic's, Basic-Stamps *ausflipp*
-
Jo, wie man vielleicht denken kann hab ich gewisses Entscheidungsproblem. Ich würde gerne in die Materie etwas einsteigen. So erstmal richtung witziges blinken aber dann doch so langsamm vorarbeiten zu kleinen Regelaufgaben.
Deswegen meine Frage, hat jemand schon erfahrung mit solchen Programmierbaren Chips? Ich mein im Internet gibts sooooo viel darüber nur jeder lobt seins halt über alles, und soweit ich das beurteilen kann, scheint das auch ein wenig geschmackssache zu sein.
Also deswegen meine Frage gibts was wovon mal als Anfänger absolut die Finger davon lassen sollte, weils einen nur unglücklich macht, oder auch was was total ohne Zukunft is? Der Preis soll jetzt erst mal ne kleinere Rolle spielen...Thx
m0rgu3
-
Schau dich mal auf http://www.mikrocontroller.net um, und lies das AVR-Tutorial (zumindest den Anfang) unter http://www.mikrocontroller.net/tutorial/
-
Ich habe mich in letzter Zeit intensiv mit den AVR beschäftigt.
Der Vorteil liegt zum einen im Compiler. Als C-Compiler bekommst Du den avr-gcc kostenlos. Den Assembler (Avr-Studio) gibt es auch von Atmel kostenlos.
Die Dinger sind extrem preisgünstig. Atmel vertritt die Philospohie, was nicht gebraucht wird, wird nicht bezahlt. D.h. es gibt ganz einfache Controller ohne AD-Wandler für 1-2 Euro.
Ausserdem sind sie über die parallele Schnittstelle zu programmieren.Parallel dazu habe ich mich mit den 8051, 80535 und den 16-Bittern beschäftigt.
Hier habe ich bisher nur als freeware-compiler den sdcc gefunden. Der Keil-Compiler soll auch noch gut sein, aber für Hobby-Anwendungen zu teuer.
Nachteil bei den Dingern ist der Preis und das die ein Eprom brauchen.
Allerdings gibt es von Atmel auch kompatible (89S8252) die über die parallele zu programmieren sind.Habe die AVR un die 80xx mal verglichen. Sobald wie beide die gleiche Leistung haben tut sich auch am Preis nicht mehr viel.
Das von fiffi genannte Forum kann ich nur empfehlen, insbesondere die Linkseite.
Dazu noch:
www.avrfreaks.net
www.rowalt.de
www.specs.de/users/danni/
www.8052.com
www.batronix.com
-
aheim schrieb:
Habe die AVR un die 80xx mal verglichen. Sobald wie beide die gleiche Leistung haben tut sich auch am Preis nicht mehr viel.
tut mir leid, aber das kann ich so nicht stehen lassen.
was peripherie betrifft, dann BESCHRÄNKT ja (UART, ADCs, SPI, Timer, I²C, etc)...
was die architektur selbst betrifft, so sind die AVRs relativ neu (ich glaub der launch war 1997 oder so, könnte man mal danch googlen), extrem schnell (RISC-Kern), die meisten Befehle benötigen nur 1, manche auch 2 Zyklen (vor allem mit mehreren Operanden), wobei gilt 1 Zyklus = 1 Takt;
das 8051er Design hat schon Jahrzehnte am Buckel (war in den späten 70er so richtig modern), 1 Zyklus dauert 12 Takte, etc...Der Vorteil des 8051ers liegt vor allem darin, dass man Firmenunabhängig ist. Das Design selbst ist von Intel, viele Hersteller fertigen aber Derivate (u.a. auch Atmel, Fujitsu, Philips). d.h. du bist nicht auf eine bestimmte Firma beschränkt.
Deutlich modernere Architekutr hat natürlich der AVR (is ja auch um einiges jünger). der wurde auch für hochsprachenprogrammierung entwickelt (was z.b. die SRAM-Ausstatung betrifft), während der 8051er für ASM entwickelt wurden und die meisten Compiler mehr schlecht als recht arbeiten...
würde dir daher ehre zu den AVRs raten, dinge wie ISP, JTAG-Port usw. haben die 51er einfach nicht (oder nur extrem seltene Derivate). kommt jetzt natrülich wieder drauf an, ob das für dich ne rolle spielt.
ausserdem ist, wie bereits angesprochen, jede menge software frei erhältlich.
wenn du dir ein STK500 kaufst (so um die EUR 80.-) kannst du nahezu jedes AVR-Derivat in System Programmieren. Das STK500 ist ein Entwicklerboard, auf dem schon LEDs, Taster etc drauf sind, womit du schon ganz gut einsteigen kannst...
www.atmel.comviel spass!
-
Hi,
Also ich beschäftigt mich auhc seit einiger Zeit mit dem AVR. Der Große Vorteil ist, dass diese viel Freeware anbieten. einziges Konkurrenzprodukt sind die PIC, die mit einem Befehlssatz von 32 (!) Befehlen um einiges verständlicher sein können (nicht zwangsmäßig) aber problematischerweise einen Taktteiler vorgeschalten haben das Ergebnis ist, dass diese bei gleicher Taktfrequenz nur ein viertel so schnell sind.
Es gibt übrigens schon eine Menge interessanter Projekte im Netz.
Beispielsweise gibt es Videospiele, die einfach mit nem AVR gemacht werden und vieles mehr...
ISP wird inzwischen auch bei PICs angeboten, so dass man keinen Brenner mehr braucht (für einige zumindest) Bei den AVRs ist mir nur noch einer bekannt, der kein ISP unterstützt..
-
DocJunioR schrieb:
einziges Konkurrenzprodukt sind die PIC, die mit einem Befehlssatz von 32 (!) Befehlen um einiges verständlicher sein können (nicht zwangsmäßig)
absolut richtig, "nicht zwangsläufig";
bin ein Gegner der PICs, was sich auch in meinen aussagen wiederspiegelt (was nicht heißt, dass die nicht sachlich argumentiert sind)
das problem bei den PICs ist, dass sie eine meist ungewöhnliche Datenbreite besitzen, der Befehlssatz unheimlich kompliziert ist und daher auch schlecht in ASM zu programmieren sind. Meist lernt man ASM programmieren auf einer 8- oder 16 Bit Architektur, bzw auf einer 2^n-Architektur. Mit der zeit verfällt man in diese denkweise; eine 8 Bit-Varible hat nun mal nen Überlauf bei 255 usw. Die Pics gibts aber mit z.B. auch 10, 12 oder 14-Bit Datenbreite. Hier in ASM zu programmieren ist oft schwierig. des weiteren ist der Befehlssatz zwar serh schlank, aber nicht sehr flexibel (Operationen mit fest vorgegebene register führt schnell dazu, dass 90% des source codes zum zweck hat, daten hin- und herzuschaufeln)
ein weiteres problem der pics, ist ihre extreme artenvielfalt. ich hab keine ahnung wie viele verschiedene derivate es gibt, aber es müssen ja bald an die 100 oder mehr sein...die wenigsten sind untereinander kompatibel (sourcecode und pinkompatibilität) und man verliert sehr schnell den überblick...
die AVRs sind 8 bit MPUs, meiner Meinung nach sicher einfacher zu erlernen. Vor allem, wenn man neu damit anfängt. und wenn man sich hier wissen aneignen möchte, sollte man das ASM-programmieren nicht auslassen...!
und nein, ich arbeite nicht für atmel