Anzeige:

Hilfe für Einstieg

Hier finden sie die archivierten Beiträge des alten PHPBB Forums von www.loetstelle.net

Hilfe für Einstieg

Von akapuma am 04.07.2008 22:17

Hallo,

ich möchte mir ein Microcontroller-Evaluation-Kit kaufen und weiß noch nicht welches. Was ich damit machen möchte: nichts Konkretes, erstmal lernen.

Zum Microcontroller:
- Er sollte (soweit absehbar) möglichst langfristig im DIL-Gehäuse erhältlich sein. SMD kann ich nicht löten.
- Es sollte verschiedene "Größen" geben.
- Schön wäre es, wenn er mit möglichst wenig Peripherie laufen würde (gibt es welche mit internem Oszillator, die keinen externen Quarz etc. benötigen)?
- Wie oft kann man einen Micrcontroller eigentlich überschreiben?

Zur Software:
- C kann und will ich nicht.
- Ein Basic-Dialekt, Assembler oder vielleicht auch beides wäre schön.

- Wäre ein AVR STK 500 etwas für mich?
- Oder was www.pollin.de hat?
- Reicht die Gratis-BASCOM-Version aus?
- Gibt es ein deutschsprachiges Buch dazu?

Gruß

akapuma

Re: Hilfe für Einstieg

Von gerold am 04.07.2008 23:51

Hallo akapuma!

akapuma hat folgendes geschrieben:
ich möchte mir ein Microcontroller-Evaluation-Kit kaufen und weiß noch nicht welches. Was ich damit machen möchte: nichts Konkretes, erstmal lernen.

Da bietet sich derzeit http://www.pollin.de/shop/shop.php?cf=detail.php&pg=NQ==&a=MTY5OTgxOTk=
und http://www.pollin.de/shop/shop.php?cf=detail.php&pg=NQ==&a=NjQ5OTgxOTk= an, da beide Boards derzeit lieferbar sind. Mit 40 Euro hast du dann schon fast eine Luxusausstattung zum Testen und Entwickeln mit kleinen und größeren AVR-Mikrocontroller (µC).

http://myavr.de/shop/article.php?artDataID=35 ist auch keine so schlechte Wahl, da du da bereits den mySmartUSB Programmer mit dabei hast. Allerdings bist du da auf den ATmega8 eingeschränkt.

Wenn du dir das Mikrocontroller Lehrbuch http://rowalt.de/mc/avr/avrbuch/index.htm von Roland Walter kaufst, dann empfiehlt es sich, die dort in jedem Beispiel verwendete Experimentierplatine http://cgi.segor.de/user-cgi-bin/sidestep2.pl?foto=1&Q=rowalt&M=1 zu kaufen.

Und wenn ich schon bei den Büchern bin. Es gibt noch ein zweites, deutschsprachiges Buch zur Programmierung von AVR-Mikrocontroller. Es ist von Claus Kühnel und heißt "Programmieren der AVR RISC Microcontroller mit BASCOM-AVR" http://www.amazon.de/Programmieren-AVR-RISC-Microcontroller-BASCOM-AVR/dp/3907857046

Inzwischen ist auch der kleine Bascom-AVR Kurs, der hier im Forum entstanden ist, so weit, dass man damit einen Einstieg hin bekommt. http://halvar.at/elektronik/kleiner_bascom_avr_kurs/

akapuma hat folgendes geschrieben:
Zum Microcontroller:
- Er sollte (soweit absehbar) möglichst langfristig im DIL-Gehäuse erhältlich sein. SMD kann ich nicht löten.
- Es sollte verschiedene "Größen" geben.
- Schön wäre es, wenn er mit möglichst wenig Peripherie laufen würde (gibt es welche mit internem Oszillator, die keinen externen Quarz etc. benötigen)?

Das beantworte ich mal mit zwei Links:
- http://halvar.at/elektronik/kleiner_bascom_avr_kurs/001_vorstellung_mikrocontroller/
- http://halvar.at/elektronik/kleiner_bascom_avr_kurs/002_wichtige_datenblaetter/
Ein externer Quarz wird nur selten benötigt. Meistens reicht der in die AVRs eingebaute RC-Oscillator.

akapuma hat folgendes geschrieben:
- Wie oft kann man einen Micrcontroller eigentlich überschreiben?

Mindestens 10.000 mal.

akapuma hat folgendes geschrieben:
- Ein Basic-Dialekt, Assembler oder vielleicht auch beides wäre schön.

Bascom ist eine gute Wahl. Mit der Testversion kannst du Programme bis zu 4 kB Größe schreiben. Der ATmega8 hat 8 kB Platz. Für den Anfang kommst du damit ganz leicht aus. Und später kannst du entscheiden, ob du das Programm auf zwei Mikrocontroller aufteilst oder ob du dir die Vollversion von Bascom um 80 Euro kaufst.

akapuma hat folgendes geschrieben:
- Wäre ein AVR STK 500 etwas für mich?

Das STK500 ist ein mächtiges Entwicklungsboard, welches sehr viel kann. Damit kannst du später auch die Mikrocontroller programmieren, die es nicht mehr im DIL-Gehäuse gibt. Aber für den Anfang ist es zu umfangreich. Man verliert sich in den Einstellungen und Möglichkeiten des STK500. Später -- wenn du auch größere und teurere µC programmieren möchtest, dann ist das STK500 eine sehr gute Wahl.

mfg
Gerold
Smile

Von akapuma am 05.07.2008 10:30

Hallo Gerold,

vielen Dank für die vielen Infos.

Es werden wohl die beiden Pollin-Boards und das Buch "Programmieren der AVR RISC Microcontroller mit BASCOM-AVR" werden.

Ich stelle gerade fest, daß mein Laptop garkeine serielle Schnittstelle hat. Funktioniert das Ganze auch mit einem USB2-seriell-Konverter?

Gruß

akapuma

Von BellaD am 05.07.2008 13:49

Moin

meine Meinung Cool kauf dir das AVR-Dragon von Atmel ,kostet ca 60 eu, und bietet dir USB,JTAG,Debugwire,ISP,Parallelprogramming usw usw . zudem hat es einen mini evalutions Steckplatz
Wink und bietet den Vorteil das du jederzeit über die Software von Atmel ( AVR-Studio) die Hardware updaten kannst - wichtig wenn neue Chips rauskommen , und das ist bei Atmel ziehmlich oft in letzter Zeit.
www.atmel.com

ansonsten für schnelleinsteiger,das neue Arduino-Decemilla als fertigmodul für 26€ bei Segor mi usb,atmega168 alles fix und fertig (www.arduino.cc)- Bei Segor gibts auch das roland walter buch -


ansonsten gilt , wer die wahl hat hat die ..........
sommerliche Grüsse

Von gerold am 05.07.2008 14:47

akapuma hat folgendes geschrieben:
und das Buch "Programmieren der AVR RISC Microcontroller mit BASCOM-AVR" werden. Ich stelle gerade fest, daß mein Laptop garkeine serielle Schnittstelle hat

Hallo akapuma!

Das Buch von Claus Kühnel ist kein Einsteigerbuch! Du bist besser dran, wenn du dir vorher das Buch von Roland Walter durchliest. Ansonsten ist Frustration so gut wie sicher.

Du kannst mit einem USB-RS232-Adapter eine Verbindung vom µC zum Computer aufnehmen. Das funktioniert.

Aber du kannst damit die µC nicht programmieren. Das funktioniert nur mit echten Hardware-RS232-Anschlüssen.

Zu dem Adapter, zu dem du den Link gepostet hast, gibt es keine Informationen. Also kann es sehr leicht sein, dass nur RX und TX weitergeleitet wird, was dich früher oder später einschränken wird. Außerdem sieht er genau so aus, wie der Adapter den ich, weil er nicht funktioniert hat, weggeschmissen habe. Das Risiko wäre mir zu groß. Siehe: http://www.loetstelle.net/forum/viewtopic.php?p=10947#10947

Da du keine echte Serielle (und wahrscheinlich auch keinen Parallelport) hast, brauchst du zusätzlich zu den Boards noch einen USB-Programmer. Ich empfehle den mySmartUSB für Anfänger, weil es umständlicher ist, den Dragon in Bascom zum Laufen zu kriegen. Außerdem kannst du, wenn du auf den USB-RS232-Adapter verzichten möchtest, direkt mit dem mySmartUSB eine UART-Verbindung zum µC aufbauen. Aber ansonsten ist der Dragon kein schlechtes Gerät.

mfg
Gerold
Smile

Von akapuma am 05.07.2008 20:10

gerold hat folgendes geschrieben:
Du kannst mit einem USB-RS232-Adapter eine Verbindung vom µC zum Computer aufnehmen. Das funktioniert.

Aber du kannst damit die µC nicht programmieren. Das funktioniert nur mit echten Hardware-RS232-Anschlüssen.
Hmmm, wo ist der Unterschied zwischen "Kontakt aufnehmen" und "programmieren"?

gerold hat folgendes geschrieben:
Zu dem Adapter, zu dem du den Link gepostet hast, gibt es keine Informationen. Also kann es sehr leicht sein, dass nur RX und TX weitergeleitet wird, was dich früher oder später einschränken wird.
Problem bei meinem Link zum "Konverter USB2.0/seriell" ist auch, daß dort bei Hersteller "frei"steht. Ich dachte, der Adapter würde alle Leitungen unterstützen, weil "Unterstützt Hardware-Handshake" dabei steht.

Ob das wohl eine "echte" serielle Schnittstelle ist? Da mir ein Versuch für 30€ zu teuer ist werde ich es wohl nie erfahren.

gerold hat folgendes geschrieben:
Da du keine echte Serielle (und wahrscheinlich auch keinen Parallelport) hast, brauchst du zusätzlich zu den Boards noch einen USB-Programmer.
Und dann? Den armen Käfer immer zwischen Programmer und Board hin und herstecken? Will mir nicht gefallen!

gerold hat folgendes geschrieben:
Aber ansonsten ist der Dragon kein schlechtes Gerät.
Hm, was soll ein Board machen?
- Eine Programmierung des µC ermöglichen
- Genug Peripherie zum Basteln zur Verfügung stellen, z.B. LEDs, Taster, Buzzer usw.
Gerade letzteres vermisse ich beim Dragon, falls dieses Bild das richtige ist. Hier punktet Pollin.

Naja, notfalls muß ich halt an den "großen" PC mit serieller Schnittstelle. Leihweise käme ich noch an etwas dran, was aussieht wie das hier. Das könnte ich ja mal testen.

Nochmal - um sicher zu sein:
Ich kann mit dem Pollin-Board doch den µC auch ohne zusätzlichen Programmer programmieren?
Gibt es in Verbindung mit BASCOM und dem Pollin-Board eigentlich einen Debug-Modus?

Gruß

akapuma[/url]

Von gerold am 05.07.2008 22:37

Hallo akapuma!

akapuma hat folgendes geschrieben:
gerold hat folgendes geschrieben:
Du kannst mit einem USB-RS232-Adapter eine Verbindung vom µC zum Computer aufnehmen. Das funktioniert. Aber du kannst damit die µC nicht programmieren. Das funktioniert nur mit echten Hardware-RS232-Anschlüssen.
Hmmm, wo ist der Unterschied zwischen "Kontakt aufnehmen" und "programmieren"?

Das Programmieren des µC passiert mit einem Programmer. Dieser Programmer wird mit RESET, MISO, MOSI, SCK, VCC und GND verbunden. Der Programmer zieht den RESET-Pin des µC nach GND und dann wird das Programm über die oben genannten Pins übertragen. Diese Arbeit erledigt ein Programmer. Es gibt Programmer für den Serialport, den Parallelport und den USB-Port. Eigentlich wird beim Flashen des Programmes nicht mit dem Programm selber kommuniziert. Es wird stupide einfach nur das Programm in den Flash-Speicher geschrieben.

Wenn das Programm auf dem µC ist, und Strom anliegt, dann läuft das Programm. Du kannst vom Computer aus direkt mit diesem Programm kommunizieren. Du kannst z.B. einen Befehl an das Programm schicken und das Programm führt diesen dann aus. Aber wie so ein Befehl aussieht und was das Programm dann machen soll, bestimmst du selber im Programm.

So eine Verbindung zwischen Computer und µC kann z.B. über die UART-Schnittstelle (RX und TX) ablaufen. Es gibt also einmal die Verbindung über den Programmer, der nur das Programm in den Flash-Speicher schreibt und einmal eine Verbindung, die nicht über den Programmer läuft, über die du direkt mit deinem laufenden Programm kommunizieren kannst.

Beides sind zwei ganz verschiedene Dinge.

Das Pollin Board hat zwei D-Sub Anschlüsse drauf. Ein Anschluss verbindet den Computer mit dem in das Board eingebauten SI-Programmer. Diesen Programmer kannst du aber nicht nutzen, da dieser Programmer nur mit **echten** RS-232-Anschlüssen funktioniert. Ein USB-RS232-Adapter funktioniert dafür nicht, da die Signale bei diesem USB-RS232-Adaptern mit zu kleiner Spannung übertragen werden.

Dann hast du noch einen zweiten D-Sub Anschluss auf dem Pollin Board drauf. Dieser Anschluss kann mit einem USB-RS232-Adapter verwendet werden und dient der Kommunikation des Computers mit dem laufenden Programm im µC.


akapuma hat folgendes geschrieben:
Ich dachte, der Adapter würde alle Leitungen unterstützen, weil "Unterstützt Hardware-Handshake" dabei steht.

Kann sein. Es ist nicht ausgeschlossen, dass er funktioniert und du damit mit dem laufenden µC-Programm komunizieren kannst. Was du aber sicher nicht damit machen kannst, ist den µC zu flashen. Du kannst damit kein Programm zum µC übertragen. Du brauchst auf jeden Fall zusätzlich einen USB-Programmer.

akapuma hat folgendes geschrieben:
gerold hat folgendes geschrieben:
Da du keine echte Serielle (und wahrscheinlich auch keinen Parallelport) hast, brauchst du zusätzlich zu den Boards noch einen USB-Programmer.
Und dann? Den armen Käfer immer zwischen Programmer und Board hin und herstecken? Will mir nicht gefallen!

Den mySmartUSB schließt du direkt an den zehnpoligen Wannenstecker (ISP) des Pollin-Boards an. Mit diesem mySmartUSB schreibst du das Programm in den µC. Zusätzlich schließt du dann noch zwei Ausgänge des mySmartUSB direkt an die RX und TX-Pins des Mikrocontroller. Du übergehst somit die zweite RS-232-Schnittstelle des Pollin-Boards. Mit dem mySmartUSB gehst du direkt an den µC ran. Damit kannst du mit dem laufenden Programm kommunizieren.

Damit das funktioniert, muss der mySmartUSB nur in den Datenmodus umgeschaltet werden. Das funktioniert über ein mitgeliefertes Kommandozeilenprogramm.

gerold hat folgendes geschrieben:
Aber ansonsten ist der Dragon kein schlechtes Gerät.
Hm, was soll ein Board machen?[/quote]
Der Dragon ist nur ein Ersatz für den mySmartUSB. Er ersetzt dir nicht das Pollin Board.

akapuma hat folgendes geschrieben:
Nochmal - um sicher zu sein:
Ich kann mit dem Pollin-Board doch den µC auch ohne zusätzlichen Programmer programmieren?
Gibt es in Verbindung mit BASCOM und dem Pollin-Board eigentlich einen Debug-Modus?

Nein! Nur wenn du eine echte RS-232-Schnittstelle im Computer hast. Außerdem ist das nicht bequem, da du zum Flashen jedes mal Bascom verlassen musst. Das Flashen funktioniert (wenn du das mit der RS-232-Schnittstelle machst) mit dem Zusatzprogramm PonyProg.

Du hast dich ja bereits für die beiden Boards von Pollin entschieden. Jetzt brauchst du nur noch den mySmartUSB dazu. Und natürlich einen µC. Wink

mfg
Gerold
Smile

Von kalledom am 05.07.2008 23:09

Hallo akapuma,
das ist bei allen anderen Mikro-Controllern auch so, bei Mikro-Prozessoren mit Eprom sowieso.
Du mußt, wie Gerold bereits geschrieben hat, zwischen Programmierung und Kommunikation unterscheiden.
Die Programmierung ist nichts anderes, als von einer Hochsprache (C oder Bascom) mittels Compiler ein Assembler-File und daraus mittels Linker ein Hex-File erzeugen. Dieses Hex-File wird dann über diese "MOSI-Signale" seriell in den µC übertragen und dort "eingebrannt". Wenn es ein Flash-µC ist, kann der Programm-Flash-Speicher ganz ganz viele male mit einer anderen Hex-Datei überschrieben werden.

Beim PIC und einigen anderen µC wird eine Spannung von 13V an den Reset-Eingang gelegt und so der µC in den Programmier- / Flash-Modus umgeschaltet. Beim AVR ist das vermutlich auch so.

Bei Micro-Prozessoren ist immer noch ein Eprom vorhanden, in den mit einem Programmer / Prommer ein Hex-File "eingebrannt" wurde, damit der Prozessor nach dem Einschalten weis, was er tun soll (BIOS-Eprom auf jedem Main-Board).

Die Kommunikation kann erst dann über eine (serielle) Schnittstelle des µC erfolgen, wenn er programmiert wurde. Das hängt dann aber ganz alleine davon ab, ob Dein Programm das vorsieht und auch macht.

Re: Hilfe für Einstieg

Von akapuma am 06.07.2008 13:11

gerold hat folgendes geschrieben:
http://myavr.de/shop/article.php?artDataID=35 ist auch keine so schlechte Wahl, da du da bereits den mySmartUSB Programmer mit dabei hast. Allerdings bist du da auf den ATmega8 eingeschränkt.
Ich denke mal nach allem, daß ist die für mich bessere Lösung. Oder für 10€ mehr nicht als Bausatz sondern komplett.

Gruß

akapuma

Von akapuma am 06.07.2008 21:51

Hallo,

wenn mich bis morgen keiner davon abhält werde ich mir das myAVR Board 2 USB bestellen.

Gruß

akapuma

Anzeige: