Forum: Mikrocontroller und Digitale Elektronik Hilfe zum einstieg AVR oder 8051


von Tom (Gast)


Lesenswert?

Hallo!
Ich bin neu hier im Form und bei den Mikrocontrollern. Dadurch habe ich
natürlich fragen über fragen. Aber zuerst will ich mich mal kurz
vorstellen.
Ich habe eine Ausbildung zum Elektroniker gemacht und anschließend
Informatik studiert. Ich habe auch schon den Intel 8085 so wie den
Motorola 68000 in Assembler programmiert. Durch das Studium habe ich
mich aber letzt endlich in die Hochsprachen wie C C++ und Java viel
stärker vertieft, so dass mir ein Controller der mit C Programmiert
werden kann einfach lieber währe.

Ich habe auch schon versuch im Internet meine Fragen zu beantworten
aber als Neuling  wird man einfach von den Informationen erschlagen.
Deshalb habe ich folgende Fragen an euch.

1. Welcher Controller ist zum Einstieg besser geeignet ein AVR oder ein
8051 ?

2. Wie kann ein 8051 möglichst einfach Programmiert werden sowohl Hard
als auch Software (für die gibt es ja C Compiler aber das Hochladen von
Programmen scheint extrem schwierig zu sein. Beim AVR reicht ja ein
Kabel mit ein paar Bauteilen)?

3. Können  8051 Controller direkt über die UART Schnittstelle
programmiert werden?

4. Gibt es für die AVR Controller C Compiler?

5. Was muss ich beachten, bzw. der Controller haben, wenn der Parameter
nach dem Ausschalten behalten sollen (können das aller oder benötigt er
ein EEprom)?

6. Wer weis gut verwendbare AD und DA Wandler? Ich möchte hauptsächlich
analoge Signale bearbeiten. Die Wandler sollten möglichst preisgünstig
sein und müssen keine hohe Performance haben, 7 Bit jede Sekunde genügt
völlig aber ich habe viele Messtellen

von Tom (Gast)


Lesenswert?

Hallo
Ich kann dir jetzt nicht alle Fragen beantwoten aber kann ja einfach
mal meine Erfahrungen Schildern:
1. Ich weiß nicht, welcher besser zu Programmieren ist (von der
Software aus gesehen), aber AVRs aind sehr simpel zu handhaben.
2. So weit ich weiß brauchst ein PIC-Starterkit oder ähnliches. Für den
AVR reichen ein paar Bauteile.
3. ???
4. Ja, gibt es. GCC für AVR, auch mit Tutorial hier.
5. Du brauchst EEprom oder anderen nicht-flüchtigen Speicher. (D.h. zur
Not tuts auch Flash, ist aber umständlicher zu Programmieren.)
6. Viele AVRs haben schon A/D-Wandler drin, D/A-Wandlung geht mit PWM.

Gruss
tom

von Leenders (Gast)


Lesenswert?

Die Atmels sind durchaus in der Schltung per Kabel ohne "prommer"  zu
programmieren. 89cxxxx  von Atmel.

Diese  51er sind billig   so ab 90cent

Dafür sind avr nicht zu bekommen

der Schuss mit der Kanone auf den Spatz es kommt halt darauf an

Paul  8051 Fan

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

zu 1.
AVR, insbesondere wenn du in C programmieren willst. Für den AVR gibts
den besseren kostenlosen Compiler (GCC statt SDCC) als für den 8051.

zu 2.
Es gibt auch 8051 (die neueren halt) die sich simpel programmieren
lassen. Entweder über den UART oder aber mit ein paar Leitungen vom
Parport. Ist aber überall (bei jedem Hersteller) ein bischen anderst.
Bei den AVRs ist das bis auf wenige Ausnahmen immer das gleiche.

zu 3.
Einige. P89C51RD2 und kompatible von Atmel z.B.

zu 4.
Ja. Sogar einen sehr brauchbaren GCC.

zu 5.
Ein EEPROM wäre da angebracht. Das haben aber mitlerweile viele
Controller (sowohl 8051 als auch AVR) schon drin.

zu 6.
ADC haben auch schon viele Controller mit drin. Meistens 8 Kanäle. Wenn
das nicht reicht kannst du immer noch einen Analogmultiplexer
vorschalten.

Matthias

von Peter Dannegger (Gast)


Lesenswert?

"3. Können  8051 Controller direkt über die UART Schnittstelle
programmiert werden?"


Ja, und zwar solche Typen mit factory programmed Bootloader.

Der AT89C51ED2 (Atmel), P89C668 (Philips), DS89C420 (Maxim) sind z.B.
welche.

Hat Dein PC (Notebook) keine COM, geht auch prima ein USB/COM Adapter.

Hier mal ne Programmierschaltung:

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


Atmel hat außerdem 8051-er (AT89S52), die über SPI programmiert werden
können, wie auch die AVRs.
Das Problem dabei ist jedoch, Du brauchst einen PC, der noch einen
echten LPT-Anschluß hat (USB/LPT geht nicht !).
Und Druckertreiber und ähnliches können Probleme machen.


Peter

von Joe (Gast)


Lesenswert?

No Senior Peter,

es geht auch ohne Printer Port

http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR-Programmer.html

Gruß

Joe

von Μαtthias W. (matthias) Benutzerseite


Lesenswert?

Hi

da hat er aber ein Henne-Ei Problem. Er braucht einen programmierten µC
um einen µC programmieren zu können. Wenn man niemanden kennt der sowas
mal schnell machen kann ist das keine Alternative.

Matthias

von Tom (Gast)


Lesenswert?

Hallo,

erst mal danke an alle für die vielen guten Antworten.

Ich werde mich so wie es aussieht wohl erst mal auf die AVR Controller
konzentrieren da hier das Laden des Programmes einfach einfacher ist,
und ich ja gerade erst damit anfange.

@Peter Dannegger: mit dem Link den du mir geschickt hast komme ich
leider nicht zurecht, was soll dieser Schaltplan darstellen ??? Sind
das 2 Sockel in die man jeweils den Contoller einstecken muss und was
soll der 9 polige Anschluss auf der anderen Seite bedeuten ? Ist das
eine Com Schnittstelle des PC ?.
So ein Entwicklungsboard wollte ich mir auch bauen einfach ein paar
Schalter und ein paar leds damit man sieht ob was geht.

Grüße

Tom

von Peter D. (peda)


Lesenswert?

@Tom,

nun, das ist doch die ganze Schaltung, mehr brauchst Du nicht (außer
natürlich 5V).

Das eine ist der MC und das andere ein MAX202 oder kompatibler (HIN202,
ADM202, SP202 usw.), der macht die Pegelwandlung zur COM.

Die UART kann nach dem Programmieren natürlich auch von Deiner
Anwendung benutzt werden.

Der Jumper an PSEN schaltet in den Bootloader.

Die LEDs und Tasten sind dann zum experimentieren.

Bei anderen 8051-ern (z.B. T89C51CC01) oder SMD mußt Du natürlich die
andere Pinbelegung beachten, d.h. immer nach den Pinnamen gehen.


Peter

von Tom (Gast)


Lesenswert?

@Peter Dannegger

Hallo Danke nochmals ich habe unten am IC die Chipbezeichnung nicht
gesehen. auch das da eine Com Schnittstelle verwendet wird ist schon
mal sehr hilfreich. was jetzt nur noch fehlt ist im Schaltplan die
Verbindung der beiden IC´s (ich nehme mal an das die zusammen
geschlossen werden müssen :) )



Grüße

Tom

von Peter Dannegger (Gast)


Lesenswert?

"was jetzt nur noch fehlt ist im Schaltplan die
Verbindung der beiden IC´s"


Die fehlt nicht.

Es ist üblich, Netze per Netlabel zu verbinden, sonst hat man bei
größeren Schaltungen nur noch Drahtverhau und sieht nicht durch.

Alle Drähte, an denen der gleiche Name (Netlabel) steht, sind also
miteinander verbunden.
Das gleiche gilt für die Powersymbole.


Alle Schaltplanprogramme machen das so.


Peter

von Robert Teufel (Gast)


Lesenswert?

Tom,

schau dir doch mal den LPC935 oder LPC938 von Philips an. Beide haben 8
analog Eingaenge, einen (8-bit) DAC, 512 Byte EEPROM und 8k Flash.
Das einfachste ist ein Keil MCB900 starter Kit. Der Compiler der
mitkommnt ist auf 4k Programm beschraenkt aber voll einsatzfaehig.

Links:
http://www.keil.com/mcb900/
Zur Chip information geht's hier
http://www.standardics.philips.com/products/lpc900/all/

Ach ja, die LPC900 sind nicht nur Befehls- sondern auch Timing
kompatibel zum 80C51, nur eben 6x schneller. D.h. es ist ein 2-Zyklen
Core. Es gibt auch sogenannte 1-Zyklen Cores fuer den 8051 aber das
Befehlstiming wird etwas durcheinandergewuerfelt.

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.