Forum: Mikrocontroller und Digitale Elektronik Bitte um Argumente Atmel vs. CC2


von Dirk S. (dirks)


Lesenswert?

Hallo Leute,

im Moment benutze ich eine CC1. Bin aber nicht zufrieden mit dem Ding.
Jetzt würde ich es gerne mit einem Atmel Mega32 versuchen. Bin aber was
Hochsprachen, Assebler und tiefergehende Elektronik anbelangt ein
totaler Laie.
Jetzt habe ich mich mit einem Bekannten unterhalten, der viel mit der
CC2 macht. Von ihm habe ich volgende Aussage bekommen:

--8<---
"Naja, viel Spaß mit dem Atmel.
So gut, wie alle schwören, sind die nämlich nicht.
Ich habe es bis heute nicht geschafft, den 10Bit-AD-Wandler stabil zum
laufen zu bekommen.
(Die Werte schwanken so stark, daß nur ca. die oberen 7 Bit als stabil
zu sehen sind.
Das Ding ist scheinbar einfach zu billig, um hier eine zuverlässige
AD-Wandlung zu bieten. :-(
Und nebenbei muß man bei nackten Controllern, wie den Atmels, alles
von
Grund auf programmieren, was bei allen C-Controls das OS übernimmt.
Besonders stark ist der Unterschied zur CC2. Hier ist so viel im OS und
den Treibern
integriert, daß sich jemand, der mit der CC2 gearbeitet hat und sich an
ATMegas
versuchen will, sich in die Steinzeit zurückgesetzt fühlt. lol

Willst Du nicht auch mal mit einer CC2 experimentieren. :-)
Es macht einfach Spaß, schnell ans Ziel zu kommen, da man sich nur auf
das wesentliche
konzentrieren muß, nicht auf Initialisierungsroutinen und
Grundlegendes. ;-)"
--8<--

Ich seine Argumente im Bezug auf das Programmieren nicht von der Hand
weisen! Dagegen stehen 150 EUR für CC2 mit Board bzw 50EUR für den
Atmel mit Board.

Was mich beim Atmel im Moment stürt ist, das ich noch gar keine Idee
habe wie aufwendig (im Bezug auf I2C) es ist, ein LCD etc. über den I2C
Bus anzusprechen.
Wie weit reicht den der Speicher beim Atmel Mega32? Was ist der nächst
größere und wo gibt es ein kleines, all in one Board.

Hoffe ihr könnt mir ein paar Tips geben.

Danke und Gruss

Dirk

von Mike R. (thesealion)


Lesenswert?

Um etwas über die einzelnen Chips zu erfahren empfehle ich diese Seite
http://www.atmel.com/dyn/products/param_table.asp?family_id=607&OrderBy=part_no&Direction=ASC
Das siehst du, was die einzelnen alles können.

Als groben Überblick kann ich auch noch das Tutorial auf dieser Seite
empfehlen.
Ein wenig Einarbeitung und Verständnis für die Hardware ist auf jeden
Fall nötig. Wobei natürlich viele Probleme schonmal von jemandem gelöst
worden sind und sich so fertige Codeschnipsel in der Codesammlung finden
lassen.

Wie aufwendig die nutzung der TWI-Schnittstelle ist, kann ich dir
leider nicht sagen, da ich sie selber noch nie verwendet habe. Aber ich
habe das ganze gerade bei einem Phytec-Modul per Hand geschrieben und
das war auch nicht wirklich schwer. Bei Hardwareunterstützung sollte
das also noch viel einfacher sein.

Außerdem bekommst du hier zu Atmel viel mehr und schneller Hilfe als zu
CC2 ;-)

Mike

von Ppp M. (sanic)


Lesenswert?

Hallo,

lange Zeit hatte ich eine CC2 und bin dann auf Atmel umgestiegen, ein
Traum! Kein schreckliches Möchtegern-Basic mehr wo man noch nicht mal
Interrupts programmieren kann ( ganz schrecklicher Punkt ).

" Hier ist so viel im OS und
den Treibern
integriert, daß sich jemand, der mit der CC2 gearbeitet hat und sich
an
ATMegas
versuchen will, sich in die Steinzeit zurückgesetzt fühlt."
Ich hab mich "in die Steinzeit zurücksetzen lassen" und es geht mir
gut.
Man schreibt zwar alles in C neu, es funktioniert aber dann auch.
A/D Wandler habe ich jetzt noch nicht betrieben, ich kann mir aber
nicht vorstellen dass Atmel da von Grund auf schlecht ist. Schau sonst
mal in den Schaltplan vom C-Control Applikationboard ob da irgendeine
externe Beschaltung an den A/D Eingängen ist, die kannst du dann ja
evtl. übernehmen.

Gründe für den ATMega:
- Günstig! Ein Chip kostet grob gesagt 2 - 12 Euro. Wenn mal ein Chip
kaputt geht, how cares ? Wenn du mehrere Controller in einem Projekt
einsetzen möchtest tut das nicht weh, mehrere C-Controls schon.
- Zukunftssicher
Die C-Control II ist zwar noch nicht abgekündigt, trotzdem wird jetzt
die neue PRO Serie promoted und die CC2 erscheint nur noch in kleinen
Texten.
- Besser
Sogar Conrad baut bei den neuen C-Controls auf Atmel Mikrocontroller.
- Günstig
- Günstig
- Schnell

Gründe für die C-Control:
Einfacher Einstieg. Mehr aber auch nicht.

Grüße,
Patrick

von Max(1) (Gast)


Lesenswert?

Wenn Dein Bekannter den A/D-Wandler nicht stabil zum Laufen bekommt,
dann hat er wahrscheinlich nicht sehr viel Ahnung von Elektronik -
sorry, aber man muss halt schon den einen oder anderen Kondensator an
der richtigen Stelle platzieren und für eine saubere
Versorgungsspannung sorgen. Zumindest klappts bei mir mit dem
A/D-Wandler prächtig. Die Argumente sind halt ziemlich emotionell
aufgeladen, "DAS" ideale System gibts nicht, das muss jeder für sich
selbst herausfinden.

Aber mal abgesehen davon ist die Aussage, dass eine CC2 für den
Anfänger einfacher ist, sicherlich richtig. Man bekommt ein
rundum-Sorglos Paket.

Falls Du aber Anwendungen hast, in denen Du mehrere µC brauchst, sind
die Atmels mit Anschaffungskosten zwischen 1 und 10 Euro sicherlich
"etwas" preiswerter.

Um den Speicher eines Mega-32 vollzukriegen, musst Du schon einiges
tun, ich habe es mit meinem bislang größten Projekt (Grafik-LCD mit
Zeichensatz) nicht geschafft.

Bei mir werden die Atmels zunächst in einem Breadboard in betrieb
genommen, erst wenn die Umgebungsschaltung feststeht, wird eine Platine
angefertigt. Insofern benutze ich keine Fertiglösungen.
In letzter Zeit gibts bei Ebay kleine Entwicklungsboards inklusive
Display für einen relativ günstigen Preis, verbaut ist da ein Mega-8
(mein meistverwendeter Controller), der für die ersten Gehversuche
sicherlich ausreicht. Dann wäre noch das Butterfly, auch ausgestattet
mit einem Mega-8.
Für den Anfänger auch sicherlich interessant ist BASCOM, ein
Basic-Compiler, der in einer Trial-Version 4K compilieren kann (also
die Hälfte des Mega-8). Kostenlos gibts Assembler und AVR-GCC.

Wenn man in der Lage ist, auf einer Lochrasterplatine zu löten (und
nicht bei Conrad, sondern zum halben Preis bei Reichelt zu bestellen),
dann kann man für ca. 10 Euro in die Welt der AVRs hineinschnuppern.

von Dirk S. (dirks)


Lesenswert?

Ein Board für den Mega32 habe ich schon gefunde. 50EUR mit Chip. Suche
halt ein Schweizer Taschenmesser. Auch habe ich ein Projekt. Wie
gesagt, das Projekt läuft mehr oder weniger über ne CC1. An dieser sind
LCD und Relaissteuerung über den I2C Bus. Dann habe ich dort 3
Messwertverstärker drann. Dzu kommt noch die Funkuhr. War alles kein
Problem das Zeug zusammen zu löten.

Jetzt habe ich Messwertverstärker gefunden, die es als Bausatz gibt.
Die Laufen über den I2C Bus (Temp.) und zwei über AD.

Bei der CC1 musste ich nur den Treiber einspielen und mein Programm
schreiben. 1 Stunde Arbeit und es ging. Beim Atmel und einer Anbindung
an den I2C Bus ????
Ich bin natürlich bereit auch mehr zu tun bzw. mehr dazu zu lernen,
habe jedoch angst, das ich einen I2C Treiber bzw Anbindung nicht hin
bekomme. Habe mir mal ein C Programm gesaugt was den I2C Bus
ansteuert.
Meine Fresse, da kratz ich mir am Kopf und Bahnhof und der Zug fährt
ab.

Das ist meine Sorge.

von Ppp M. (sanic)


Lesenswert?

Hallo Dirk,

in den meisten Programmen sind einfach viele Defines(sone Art
Variablen, nur statisch) damit du mit einfachen Funktionsaufrufen
gleich loslegen kannst. Dies verwirrt in vielen Fällen.
Allerdings findet man auch gelegentlich simple Beschreibungen die NUR
die nötigen Sachen aufzeigen. Wenn du mal das Datenblatt liest siehst
du eigentlich schon welche Register du wie beschreiben musst.
Schau doch einfach mal hier rein:
http://www.atmel.com/dyn/resources/prod_documents/doc2486.pdf.
Unter "TWI" findest du die Beschreibung für den I2C Bus.

Auch super bei Atmel sind die vielen Application Notes (
http://www.atmel.com/dyn/products/app_notes.asp?family_id=607 ).
Hier findest du fertigen Code zum Runterladen und glücklich sein.
Selbst I2C ist dort implementiert, siehe "AVR315: Using the TWI module
as I2C master"

Grüße,
Patrick

von crazy horse (Gast)


Lesenswert?

wenn du eine Sache machen willst und davon ein Stück und du schon
Erfahrungen mitt der CC hast, nimm die. Damit bist du schneller am
Ziel.
Man kann nicht einen nackten Controller mit einem kompletten,
vorgefertigten, mit Software, also einer Art Betriebssystem
vergleichen.
Kommt mir ein bisschen so vor, als stünde eine Entscheidung an, ob du
einen VW Polo komplett oder einen nackten Porsche-Motor nehmen sollst.

Ich würde auf jeden Fall einen Controller nehmen, such dir eine für
dich passende Entwicklungsumgebung zusammen, versuch, das Innenleben
des MC zu verstehen, und schon klappts. Die MCs bringen schon so viel
on Chip mit, dass du nur mit Chip, Versorgung und evtl. einem Quarz
schon ne Menge machen kannst, ohne komplizierte Platinen.
Und was deinen Bekannten betrifft: viel Ahnung hat der nicht :-))

von Gerd Laschinski (Gast)


Lesenswert?

Hallo Dirk,

ich kann Dir die Atmel AVRs nur empfehlen. Es ist die Frage, mit
welchem Controller Du einsteigst. Ich sehe das Problem, daß die
Mega-Controller eine komplexe Peripherie haben. Die haben verschiedene
Timer (8 Bit und 16 Bit) mit PWM, serielle Schnittstelle, I2C Interface
(Atmel nennt es TWI), AD-Wandler, Komparator, viele Interrupts, EEprom,
usw. eingebaut. Deshalb sind die Datenblätter (eher Bücher) so dick.
Das schreckt vielleicht am Anfang ab.

Aber wenn Du am Anfang diese Peripherie einfach ignorierst, dann hast
Du einen schnellen und logisch aufgebauten Controller vor Dir. Und wenn
Du einen der AVRs verstanden hast, dann hast Du alle verstanden. Der
Unterschied zwischen den vielen AVRs liegt im wesentlichen in der
Peripherie und der Größe des Speichers.

Wenn Du noch nicht so viel Ahnung von C oder Assembler hast und zur
Zeit Basic programmierst, dann probiere es doch mal mit dem BASCOM-AVR
Basic. Hier die Links zum download:
http://www.mcselec.com/bascom-avr.htm
http://www.mcselec.com/download_avr.htm
Die Demo-Version ist kostenlos. In diesem Basic sind wirklich viele
komfortable Befehle eingebaut. Es kann Interrupts, Du kannst es mit
Assembler mischen (z.B. die Interruptroutinen). Es hat aber auch so
seine Einschränkungen, z.B. Formeln.

Klar kann mit C mehr machen, und mit Assembler versteht man wirklich
den Controller, aber wenn Du von allem noch keine Ahnung hast (weder
Soft noch Hardware), dann tendiere ich zu BASCOM.

Kauf Dir vielleicht ein Experimentierboard mit einem Mega8 (es gibt
etliche Firmen, die so etwas günstig anbieten), lade Dir das Basic
runter und leg los.

Gruß
Gerd

von guenter (Gast)


Lesenswert?

Hallo Dirk

Habe selbst die CC-I (3 Stück)  und CC-II (1 Stück) programmiert und
für meine Modelleisenbahn seit Jahren im Einsatz;

für alle Erweiterungen verwende ich seit ca. 2 Jahren  n u r  noch
ATMEL-µC;

im Hinblick auf

Preis-/Leistung,
Flexibilität,
Know how im Internet
einfache Programmierung (BASCOM-AVR-Demo-Version)
usw.

habe ich den Umstieg noch nie bereut;

die CC's fliegen bei der nächsten größeren Änderung (Erweiterung der
Modellbahn-Steuerung ) raus !!!

Gruß
Günter

von Dirk S. (dirks)


Lesenswert?

Wenn mir jetzt noch ein Demo/Link zeigen kann wo via Bascom der I2C Bus
angesprochen wird, dann werde ich noch am WE mir meine Mega32 bestellen
und mit Bascom anfangen. Und dann werdet ihr euch wünschen das ich nie
damit angefangen habe. Ich werde FRAGEN stellen, bis zum Abwinken. Und
dann kommt C und Assebler drann. Zieht euch warm an :-))

von Ppp M. (sanic)


Lesenswert?

Hallo Dirk,

wir würden uns eher wünschen dass du erst das Datenblatt liest bevor du
fragst, dann ist alles ok ;-)

Grüße

von crazy horse (Gast)


Lesenswert?

by the way: ATMega32-16PU habe ich noch 2 Stangen übrig, 3,60/Stk.

von Rahul (Gast)


Lesenswert?

Stk = Stange? Dann her damit! ;)

von crazy horse (Gast)


Lesenswert?

Ok, kannst du haben. Stange mit einem drin :-)

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

"Wenn mir jetzt noch ein Demo/Link zeigen kann wo via Bascom der I2C
Bus
angesprochen wird ..."

Onlinehilfe, Funktionen

I2CINIT, I2CSEND, I2CRECEIVE, I2CSTART, I2CSTOP, I2CRBYTE, I2CWBYTE

Dabei sind i.d.R. auch Beispiele für die Anwendung

von Rahul (Gast)


Lesenswert?

@CrazyHorse:
Ich würde sie auch ohne Stange nehmen...
Stk = Sack!

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.