PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Welcher Programmer ist der richtige für mich???



Teslafan
06.05.2009, 19:19
Hallo liebe Roboternetzgemeinde,

habe da mal eine kleine Frage und vielleicht auch ein kleines Problem. Habe noch nicht wirklich viel Ahnung von Microcontrollern will das aber ändern und habe mich aus diesem Grund dazu entschlossen ein Microcontrollerboard zu erstellen und mich dann Schritt für Schritt in die Materie rein zu arbeiten.
Das Board habe ich jetzt fertig entworfen (siehe Anhang) und nun stellt sich mir die Frage welchen programmer ich benutzen kann und welche Software dann am besten geeignet ist um den Microcontroller zu programmieren.

Nun meine Frage kann ich für den ATMega 32 jeden programmer benutzen so wie z.B. den von robotikhardware.de oder brauche ich da einen speziellen weil mein Board keins von der Stange ist???
Vielleicht kann ja einer von euch auch noch mal einen Blick drauf werfen bevor ich die Platine erstelle, wurde zwar schon von nem Pro ausm Netz geprüft aber wie sagt man so schön, zwei Augen sehen besser als eines ;)

Gruß Andi

sdz55
06.05.2009, 19:51
Hi
Schönes Schema! Ich habe es mal durchgesehen und keinen Fehler gefunden. Nur eine kleine Bemerkung am Rande: Falls du später einmal viel über dein Board steuern musst (Stromverbrauch) so würde ich nicht mit 12V speisen, da dann über dem Spannungsregler ziemlich viel Verlustleistung abfällt! (Pv=(Uin-Uout)/I)
Aber ich will dich ja nicht belehren ;)

Du kannst natürlich verschiedenste Programmer nehmen, da für den ATmega32 bereits unterschiedliche Varianten vorhanden sind.
Im Prinzip ist es überall dasselbe:
Du programmierst über ISP.
Als günstigste Variante kann ich dir diese Seite empfehlen:
https://www.roboternetz.de/wissen/index.php/AVR-ISP_Programmierkabel
oder auch hier http://s-huehn.de/elektronik/avr-prog/avr-prog.htm
Hier solltest du alle geeigneten Programmer finden können.
Vielleicht müsstest du dann noch deine Pinbelegung des Boards anpassen.
Allerdings musst du dir natürlich auch darüber bewusst werden welche Programmierumgebung du brauchen willst, denn nicht jede Software unterstützt jeden Controller.
Wenn du mit einem GCC-Compiler arbeitest also mit dem Programmer's Notepad von WinAVR, dann kannst du so compilen und mit dem PonyProg deinen uC schreiben.

Ich hoffe ich konnte dir helfen!

mfg Severin

Teslafan
06.05.2009, 20:22
Ja das hat mir wirklich sehr geholfen, dann sage ich mal vielen Dank ;)

Besserwessi
06.05.2009, 20:25
Welchen programmer man nehmen kann hängt weniger davon ab welchen der AVR8 µCs man nutzt, sondern vom PC ab.
Die ganz einfachen (ohne eigenen µC) brauchen einen echten LPT bzw. COM Port, am besten direkt auf dem Motherboard. Wenn man nur USB hat, dann fallen diese Programmer schon mal weg.

Teslafan
06.05.2009, 20:40
Was ist mit einer nachträglich eingebauten parallel-port Karte? Gibt es denn auch schon günstige USB-programmer?
Hab heute mein Reichelt Packet bekommen und da war ein Aktionsblatt Dabei wo es jetzt einen AVR-8bit-RISC-In-System-Programmer gibt für knapp 38.95€
Ist der gut oder einfach nur überteuert?Kann man mit so einem auch andere Software benutzen oder ist man dann an das ATMEL Programm gebunden?

sdz55
06.05.2009, 21:07
Hast du gerade einen Link zu diesem Programmer, denn ich kann ihn nicht finden auf Reichelt und somit ist es schwierig zu sagen ob der was taugt. ^^


Wenn man nur USB hat, dann fallen diese Programmer schon mal weg...Nicht ganz, es gibt USB->Seriell Wandler, welche aus USB einen RS232C-Port machen. Die gibt es ab ca. 10€.

http://www.amazon.de/Digitus-USB-seriell-RS232-Adapterkabel/dp/B00007FV43
Damit wärst du auch hier wieder dabei.
Es gibt ja auf der zweiten Seite die ich dir angegeben habe den Programmer von RS232 zu ISP, den kannst du sehr kostengünstig und ohne grossen Aufwand selber bauen. Mit dem solltest du auf jedenfall keine Probleme haben.

Hubert.G
06.05.2009, 21:32
Die einfachen Programmer die keinen µC drinnen haben, die funktionieren mit einem USB-RS232 Wandler nicht. Ebenso funktionieren USB-LPT-Wandler nicht.
Ich würde zu einem USB-Programmer raten.
www.ullihome.de/index.php/Hauptseite#USB_AVR-Lab das ist ein heißer Tip.

oberallgeier
06.05.2009, 21:34
... Gibt es denn auch schon günstige USB-programmer? ...Was heisst schon günstig? Einen Programmer kann man(n) selbermachen, z.B. wie hier (klicken) (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=374685#374685) oder man kauft sich für €15 (ist wohl der aktuelle Preis, ist das günstig?) diesen U SB-Programmer (wieder klicken) (http://www.ullihome.de/index.php/Hauptseite#USB_AVR-Lab) - der noch einiges mehr kann ausser Programme auf Controller schieben. Das Ding heißt deswegen "U SB A VR-Lab" und kann sehr einfach als Programmer benutzt werden. Was der Programmer kann, ist z.B. in diesem Thread (https://www.roboternetz.de/phpBB2/viewtopic.php?p=439549#439549) beschrieben. Natürlich gibt es noch andere Programmer und Selbstbauprojekte, die sind hier - ganz unten, (https://www.roboternetz.de/wissen/index.php/Programmer) unter "Siehe auch" und "Weblinks" verlinkt.

Teslafan
07.05.2009, 14:03
Vielen Dank erstmal für die ganzen Antworten, ich bin echt begeistert von diesem Forum :)
hab hier jetzt erst mal den programmer von Reichelt den es gerade im Angebot gibt:
http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=A38;GROUPID=2969;ARTICLE=4 5040;START=0;SORT=user;OFFSET=16;SID=156e1TZKwQAQ8 AAArrL@wf65555e5a00240a65c0463d2eeda64c9

So werd mich jetzt erst einmal durch eure Links klicken ;)

Teslafan
07.05.2009, 14:50
So hab jetzt gerade das "USB AVR-Lab" bestellt, dann kann es ja bald los gehen ;)
Könnt ihr eigentlich ein gutes Buch zum programmieren der Kontroller empfehlen? Ein Buch das einem auch Grundlagen vermittelt?

Hubert.G
07.05.2009, 15:07
Bevor du dir ein Buch kaufst, lies erst mal die Tutorials von diesen Links.

www.roboternetz.de/wissen/index.php/C-Tutorial
www.mikrocontroller.net/articles/AVR-GCC-Tutorial
www.roboternetz.de/wissen/index.php/Bascom
www.mikrocontroller.net/articles/AVR-Tutorial
www.roboternetz.de/wissen/index.php/AVR_Assembler_Einführung

Teslafan
07.05.2009, 15:35
Dankeschön, werde mich da gleich mal rein lesen :)

Teslafan
07.05.2009, 15:58
Hab jetzt mal ein bisschen gelesen und muss sagen das ich nun mit Sicherheit erst einmal die Finger von C, C++ lasse! Basic hingegen wirkt recht einfach und verständlich. Welche Sprache sprecht ihr??? 8-[

sdz55
07.05.2009, 16:26
Die einfachen Programmer die keinen µC drinnen haben, die funktionieren mit einem USB-RS232 Wandler nicht. Ebenso funktionieren USB-LPT-Wandler nicht.
Ich würde zu einem USB-Programmer raten.
www.ullihome.de/index.php/Hauptseite#USB_AVR-Lab das ist ein heißer Tip.wusste ich gar nicht. warum denn das?

Hubert.G
07.05.2009, 17:19
Die einfachen Programmer verwenden zum Programmieren nicht RX/TX sondern die Steuerleitungen. Mit denen kommen die USB-Wandler anscheinend nicht klar. Hab ich schon mit einigen verschiedenen ausprobiert. Angeblich soll es vereinzelt funktionieren, allerdings mit einer Programmierzeit von 15min und mehr.

sdz55
08.05.2009, 05:36
Die einfachen Programmer verwenden zum Programmieren nicht RX/TX sondern die Steuerleitungen. Mit denen kommen die USB-Wandler anscheinend nicht klar. Hab ich schon mit einigen verschiedenen ausprobiert. Angeblich soll es vereinzelt funktionieren, allerdings mit einer Programmierzeit von 15min und mehr.Ich hatte mal einen solchen programmer. Der brauchte nur um die fuse bits zu lesen schon 2 minuten.
Später nahm ich dann einen "1:1"-Wandler. Damit war ich in 20 Sekunden fertig.

Ceos
08.05.2009, 08:35
Hab jetzt mal ein bisschen gelesen und muss sagen das ich nun mit Sicherheit erst einmal die Finger von C, C++ lasse! Basic hingegen wirkt recht einfach und verständlich. Welche Sprache sprecht ihr??? Anxious

C ... was ist daran denn so schlimm ? ich finde bascom zwar einfacher weils schon zig sachen definiert hat (die ganzen ports, UART usw.) aber C geht einfach mal tiefer rein .. ich liebe C ... es gibts genausopviele argumente für bascom wie für C ... da wo bascoim schwächelt ist C stärker und umgekehrt

oberallgeier
08.05.2009, 08:45
... muss sagen ... die Finger von C ... lasse! Basic hingegen wirkt recht einfach und verständlich ...
... finde bascom ... einfacher ... zig sachen definiert ... ich liebe C ...Mir kommt C und B ein bisschen so vor wie (nicht nur beim Mopedfahren) Autobahn und Landstrasse. (Mein Argument hat einen Schönheitsfehler - ich kann kein Bascom - aber ich habe einen ungefähren Schimmer davon. ) Autobahn geht VIEL schneller - aber auf der Landstrasse kommt man eben überall hin. Und da es manche nette (C-) Bibliothek gibt, kann ich/man auch manchmal die A-Ceh nehmen.

gerry-online
08.05.2009, 11:50
Hallo,

ob C oder B besser ist, darum ist schon genug in Foren gestritten worden. Ich finde, da sollte jeder für sich entscheiden, nachdem man selbst ein bisschen rumprobiert hat.

Als Programmer würde ich sagen ist ein USB-Programmer wohl die bessere Wahl. USB kann in der heutigen Zeit wohl jeder PC.
Hier wäre ein Beispiel.
http://cgi.ebay.de/USB-ISP-Programmer-fuer-ATMEL-AVR-ATmega-ATTiny_W0QQitemZ390043966886QQcmdZViewItemQQptZBau teile?hash=item390043966886&_trksid=p3286.c0.m14&_trkparms=72%3A1229|66%3A2|65%3A12|39%3A1|240%3A13 18|301%3A1|293%3A1|294%3A50

USB-programmer sind auch deutlich schneller.

Neutro
08.05.2009, 12:17
Das mit der Programmiersprache hängt wohl auch davon ab wie viel Zeit man mit dem erlernen verbringen will/kann (auslernen wird man aber nie) und wie oft man es später braucht.
C ist gut für Leute die es gern genau wissen möchten was der Controller so treibt und alles "von Hand" erstellen wollen und für Leute die viel programmieren.
Bascom ist etwas mehr wenn man einen schnellen Einstieg möchte und man es nicht ganz genau wissen möchte was der Controller macht, sowie für Hobbyanwendungen wenn man nur ab und zu was macht.
Zum Ziel führen beide Sprachen halt nur über andere Wege. Was man da als schöne oder unschöne programmierung ansieht ist Geschmacks und Glaubensfrage.
Schau doch mal genau in die entsprechenden Unterforen und mach dir ein genaues Bild und entscheide dich dann.

Teslafan
08.05.2009, 15:14
Vom Prinzip her fände ich C auch besser, ich will tief in die Materie und bin auch lernfähig, habe nur in dem Tutorial über C gelesen, das es nichts für Hobbyprogrammierer ist und auch nicht von Hobbyprogrammierern geschrieben wurde und mein Brüderchen der "C" genauso gut spricht wie "deutsch" meinte es sei für privat zwecke zu schwer.

Wie habt ihr mit C angefangen? Ich meine irgendwo muss ja genau geschrieben stehen wo was in den Quelltext gehört und welchen zweck es hat.

oberallgeier
08.05.2009, 15:52
... Wie habt ihr mit C angefangen ...Ich habe halt irgendwelche kurzen Programme hier aus dem Forum genommen und versucht sie nachzuvollziehen. Danach mal ne Änderung hier und da. Solange probiert bis es (wieder) lief.


... Ich meine irgendwo muss ja genau geschrieben stehen wo was in den Quelltext gehört und welchen zweck es hat ...Hier habe ich ein paar Tutorials zusammengestellt.
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=413294#413294

Und persönlich habe ich noch das Buch von den "Erfindern" von C - Kernighan & Ritchie: Programmieren in C, ISBN 3-446-15497-3. Ist mehr zum Nachschlagen (nicht um damit nach dem kleinen Bruder zu schlagen/werfen!!) - weniger zum "lesen". Ach ja, noch eins: Hobbyisten können Stümper sein - bis hin zu sehr ambitionierten Fachleuten.

Teslafan
08.05.2009, 17:09
Vielen Dank, werde mir gleich mal den Link ansehen:)

Ich glaube ich werde heute gleich mal anfangen ein bisschen Quelltext zu schreiben...

sdz55
09.05.2009, 12:05
... muss sagen ... die Finger von C ... lasse! Basic hingegen wirkt recht einfach und verständlich ...
... finde bascom ... einfacher ... zig sachen definiert ... ich liebe C ...Mir kommt C und B ein bisschen so vor wie (nicht nur beim Mopedfahren) Autobahn und Landstrasse. (Mein Argument hat einen Schönheitsfehler - ich kann kein Bascom - aber ich habe einen ungefähren Schimmer davon. ) Autobahn geht VIEL schneller - aber auf der Landstrasse kommt man eben überall hin. Und da es manche nette (C-) Bibliothek gibt, kann ich/man auch manchmal die A-Ceh nehmen.Ich will endlich nen uC der OOP C++ BEHERRSCHT!!! :D

Ceos
09.05.2009, 13:36
meinen einstieg ins programmieren tat ich in der schule mit turbo pascal, C hab ich gelernt mit einem blauen buch, das iwie hiess, c für einsteiger .. leider hab ichs nem anderen studenten verliehen der plötzlich exmatrikuliert hatte und dann auf nimmer wiedersehen weg war <_<

der rest iss vorlesung(grundlagen blabla anwendungen, gui) und eigenstudium (µC-C mit hilfe von datenblättern)

Ich will endlich nen uC der OOP C++ BEHERRSCHT!!! Very Happy
dann frag mal bei spieleentwicklern für nintendo DS an, die programmieren mit nem C#.NET derivat angepasst auf die funktionen des nintendo DS ... an infos zu kommen iss quasi unmöglich im netz, aber ich hab nen kumpel der für so ne firma arbeitet .. mehr durfte er mir nicht sagen usw. ^^

christian_u
09.05.2009, 14:08
Ich will endlich nen uC der OOP C++ BEHERRSCHT!!!

hm ? das kann der gcc auch auf dem avr doch schon jahrzehnte lang

oberallgeier
09.05.2009, 16:27
... hab ichs nem anderen studenten verliehen der plötzlich exmatrikuliert hatte und dann auf nimmer wiedersehen weg war ...Hmmmm - hatte oder wurde ??? - für immer ??? - oder kommt der auch wieder raus? Vielleich auf Bewährung ? *ggggg*

Ceos
09.05.2009, 17:07
er hat sich von sich aus exmatrikuliert :p frag mich was leichteres, dem waren wohl die ersten 2 semester zu viel, nach den semesterferien wars nur plötzlich einer weniger ^_^

sdz55
10.05.2009, 11:05
Ich will endlich nen uC der OOP C++ BEHERRSCHT!!!

hm ? das kann der gcc auch auf dem avr doch schon jahrzehnte langNa, wenn das wahr ist... dann hat man mich ziemlich verars***
^^Ich dachte man kann noch kein OOP-Programmieren.. hab ich mich wohl geirrt. Danke für die Information!
Dann sieht man mich von nun an in den OOP-Foren.. :D

Teslafan
11.05.2009, 08:46
Habe da nochmal ne kleine Frage zum USB AVR Lab, kann dieses über das USB AVR Lab Tool zum programmer programmiert werden oder muß ich mit nem anderen programmer die AVRISPmkII Firmware drauf ziehen?
Also meine Frage, kann ich damit gleich loslegen oder muß ich erst mit nem anderen programmer nen programmer aus dem USB AVR Lab machen?

Gruß Andi

christian_u
11.05.2009, 16:56
kannst gleich loslegen die Firmware die du magst kannst du über das USB AVR Lab Tool aufspielen.

Teslafan
12.05.2009, 09:55
Das ist supi ;) Freu mich schon tierisch auf das USB AVR Lab ;)