PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Unterschied zwischen AVR und PIC



Felix.
13.02.2006, 13:43
Hallo

Ich wusste nicht so recht wohin mit diesem Thema, also hab ich es mal in Elektronik gesetzt. :-b Ich hoffe ihr nehmt mir das nicht übel. Ich habe auch schon mal die Boardsuche benutzt, jedoch nichts gefunden, also frag ich hier einfach mal:
Mir ist schon oft aufgefallen, dass sich viele Leute in den Haaren liegen, ob nun AVR oder Pic "besser" ist. Wo genau liegen denn die Unterschiede in Hard-/Software? :-s

MfG

kalledom
13.02.2006, 13:55
Einen ähnlichen Streit könnte man auch anzetteln mit der Frage:
welche Kekse sind besser, die von Bahlsen oder die von Leibnitz ?
Mal hat der Eine einen besseren / schnelleren / schöneren µC, mal der Andere. Dann ist die Unterstützung für den Einen eine Zeit lang besser, dann für den Anderen. Das könnte ich jetzt beliebig fortsetzen, ohne wirklich herauszufinden, was besser ist. Ich habe durch Zufall mit einem PicStart Entwicklungs-Kit von Microchip begonnen und das immer weiter ausgebaut. Daher verfüge ich über viel Equipment für den PIC, habe aber auch Starter-Kits von Atmel. Mir persönlich ist der PIC lieber, warum kann ich nicht wirklich sagen; eine Dunkelhaarige ist mir auch lieber wie eine Blonde :-)

SprinterSB
13.02.2006, 15:54
Mit PIC hast du eine grössere Auswahl von Typen mit sehr unterschiedlichen Peripherien. Bei AVR gibt es nicht so viele Typen (zumindest noch).

AVR ist ein komplettes Neudesign, das noch relativ jung ist, währen PIC schon viel älter ist und etwas angestaubt. AVR wurde speziell für den Einsatz unter Hochsprache optimiert, so hat man sich z.B. gegen eine anfangs geplante segmentierte Speicherarchitektur entschieden, die für Compiler nur schwer verdaulich ist. (Die GCC-Ports für PIC gibt's AFAIK auch nur für diejenigen mit linearem Adressraum).

Ganz nett an AVR finde ich, daß er praktisch ohne Kosten in C zu programmieren ist: avr-gcc (kostenlos), ein Progger (kostenlos) und Selbstbastel-Adapter mit Teilen für weit unter 5€.

Felix.
13.02.2006, 17:52
Danke an euch.
Also wenn ich jetzt anfangen würde mit Microcontrollern, bzw. Proggen allgemein, zu was würdet ihr mir raten in puncto Anfängerfreundlichkeit, Preis und Zukunftstauglichkeit?
(Manche PIC´ler behaupten ja immer AVR wäre was für "Kinder". Es muss doch einen Vorteil an den PICs geben, außer, dass sie alt sind.)

MfG

Mobius
13.02.2006, 18:03
Es muss doch einen Vorteil an den PICs geben, außer, dass sie alt sind.

Bei den PIC hast du halt, wie schon Sprinter gesagt hat, die Qual der Wahl. Es gibt so viele Typen, wie Sand am Meer, die gibt es quer durch alle Preisklassen und alle Funktionen.
Ein großer Vorteil gleichzeitig aber auch großer Nachteil bei den PIC ist der beschränkte Befehlssatz. Mit (ich glaub) 30-40 ASM-Befehlen ist PIC schnell und relativ einfach zu erlernen, doch gleichzeitig beschränkt dies die Tauglichkeit von Hochsprachen auf ein Minimum (außer bei der 18F Familie, die liegt aber bei mir zumindest um Eonen außerhalb meines Budgets, sodass ich nicht viel dazu sagen kann). Deshalb kommt, zumindest für mich, keine Hochsprachen auf den µC, ganz gescheige davon, dass PIC-C Compiler so ab 100 Dollar zu bekommen sind ^_^.

Ansonsten ist es echt, Geschmackssache, was man erlernt. PIC haben halt den Vorteil, dass Microchip beim versenden von Samples recht großzügig ist, wenn man das als Vorteil gelten lassen will...

Ach, ja, was PIC'ler behauptet muss nicht immer richtig sein, so sagen AVR'ler auch oft, das PIC alt und nutzlos wären (ich komm aber recht gut mit dem Paging und dem Hardware-Stack zurecht :P).
MfG
Mobius

SprinterSB
13.02.2006, 18:28
Schau doch einfach mal, was du an Software bekommen kannst (Compiler, Progger, etc.) und wie du damit zurecht kommst. Kost nix und du du merkst, ob du überhaupt damit zurecht kommst.

Daß es freie Software gibt wie GCC heisst ja noch nicht, daß man damit zurecht kommt oder gerne damit arbeitet.

Wenn das klappt, kannst du immer noch investieren in Hardware (welche auch immer).

pic-gcc ist übrigens auch frei, die Quellen stehen unter GPL. Den gcc daraus zu generieren ist aber was für Experten, und die sind Quellen auch nicht in einem sonderlich rühmlichen Zustand... (Microchip lässt dich die Binaries teuer bezahlen und schafft es selbst nicht, gcc und kleinere PICs einander schmackhaft zu machen)

Felix.
13.02.2006, 18:54
Danke nochmal.
Ich denke ich werde es erst mal mit AVR versuchen. Hört sich günstiger an ;) bin noch Schüler und habe daher kaum Geld. Allerdings muss ich mich eh erstmal an C oder C++ wagen. Kennt vllt jemand eine gutes (günstiges) Buch, eine gute Internetseite o.ä. zu C bzw C++? [bin zu faul die Boardsuche zu benutzen :-b ]

teslapower
13.02.2006, 20:08
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

sehr gut und auf WinAVR(avr-gcc) abgestimmt.
Gibts auch als PDF

MFG teslapower

.Johannes.
13.02.2006, 20:58
Hallo.

Ich hab auch mit PICs angefangen, bin aber dann auf AVR umgestiegen,
weil sie einen umfangreicheren Befehlssatz haben und vor allem schneller sind da die meisten befehle in einem Taktzyklus abgearbeitet werden, anstatt 4 bei PICs

Felix.
13.02.2006, 21:25
Danke euch.
Werds dann bald mal in Angriff nehmen denke ich.

Ratber
14.02.2006, 03:51
Ja wie oben schon gesagt wurde kann man sich vorzüglich drüber streiten was besser ist und was nicht also schenk ich mir das.

Du willst wissen was du nehmen sollst.

Ich bin mal so frech und sage :


Nimm nen Mega 32
Den Programmer findest du zb. hier im Tutorial (Nachbau ist Kinderleicht sofern man etwas Löten kann)

Die Sprache hängt von deinem Geschmack ab.

Asembler und C gibt es Frei.
Bascom kostet Geld.
Die Demo ist aber voll funktionsfähig bis auf die Begrenzung der Codegröße auf 4K so das man damit schon ne ganze Ecke weit kommt.

Wenn dir der AVR dann doch nicht gefallen sollte dann kannste ja immernoch wechseln.
Investiert hast du dann allenfalls Material für 10 Euro ggf. plus Versandkosten.

ktscher
16.02.2006, 17:10
ich würd dir als schüler avr empfehlen
für assembler als auch c gibt es ganz gute tutorials
ausserdem ist fast immer ein schaltplan von nem programmierselbstbaugerät dabei.

bernhard1366
18.02.2006, 16:57
hi Leute

da hier ja lauter spezialisten sind, hätt ich da mal ne Frage.
Wenn ich in C die Rs232 ansprechen will, ist es dann mit #use rs232(....)
und putc() getc() getan?
Ich programmiere PICs mit CCS-compiler

Ratber
18.02.2006, 21:02
Sorry,mit C hab ich nix am Hut (Ich mag keine Heroglyphen *g* )

Die Frage ist besser in "AVR C-Programierung" aufgehoben.
Da erreichste mehr Leute dafür.

ruediw
18.02.2006, 21:53
hi Leute

da hier ja lauter spezialisten sind, hätt ich da mal ne Frage.
Wenn ich in C die Rs232 ansprechen will, ist es dann mit #use rs232(....)
und putc() getc() getan?
Ich programmiere PICs mit CCS-compiler


Ich würde Dir raten:
1. Schau mal die Beispielprogramme deines Compilers an. Da wird genau das gezeigt.
2.Schau mal hier (ist speziell für PIC's):
http://www.fernando-heitor.de/
3. Geh zur Webseite deines Compilers und schau dort im Forum nach.