- 3D-Druck Einstieg und Tipps    Werbung      
Ergebnis 1 bis 10 von 27

Thema: Noob will in Microcontrollerprogrammierung + Roboterbau einsteigen - Anfängerfragen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    47
    Beiträge
    1.369
    Also Grundsätzlich gibt es die Möglichkeit über ISP zu flaschen, also das Programm in den Mikrocontroller zu übertragen. Dann gibt es noch die Möglichkeit über RS232 zu flaschen, dazu benötigt man einen passenden Bootloader der schon auf dem Mikrocontroller draufgeflascht sein muss und einem zusätzlichen IC der die Pegel anpasst (z.B. MAX232). Das wird mit einem ISP Programmer erledigt. Danach kann man also auch über RS232 programmieren wenn man möchte und die Möglichkeit hat.

    Ich habe bisher keinen Sinn darin gesehen über den Bootloader zu gehen wenn ich sowieso einen ISP Programmer benötige um den Bootloader zu installieren. Der würde dann nur noch zm Einsatz kommen wenn ich einen neuen µC bootloadern wollte und sonst in der Ecke liegen...zusätzlich würde wieder ein Kabel mehr auf dem Tisch liegen. Es mag andere Vorteile geben, aber ich selbst habe meinen Roboter immer auf dem Tisch neu programmiert und das Programm/Roboter dort auch durch getestet. Wenn man nicht gerade empfindliche Bauteile an die ISP Leitungen hängt oder gar Motortreiber Steuersignale dann kann man sehr gut mit dem ISP-Anschluss normal arbeiten. Also mit einfachen LED's parallel habe ich keine Problem festgestellt - die blinken bischen lustig während des flaschen mit und das wars auch schon.

    Wichtig wäre nur das man sich einen ISP Programmer besorgt der eventuell auch mit AVR Studio und/oder Bascom (oder auch anderen Programmierumgebungen) leicht zur zusammenarbeit zu überreden ist. Der mySmartUSB kann dazu auch noch als UART arbeiten, dann wäre der ISP-Anschluss auch wieder frei, wenn man den Stecker abzieht. Nur GND muss man verbunden anderweitig lassen sonst geht die Übertragung daneben.

    Das RN-Control wäre meiner Meinung nach dann eher für Dich geeignet, weil es eben nur das Board und dazu sehr praktisch ist. U.a. ein kleiner Motortreiber und ein Speaker schon mal mit drauf ist. Ausserdem kommt es von Haus aus mit Gleichspannungen ab 7 bis 35V (glaube ich) zurecht. Ich würde die aufgebaute Version dann vorziehen. Wieder um nicht von vornherein fehlerbehaftet einzusteigen. Es muss ja nicht gleich beim Einstieg frusten.

    Aber auch ein Arduino-Board inkl. IDE wäre nicht verkehrt. Wenn man eher mit C ähnlichem Dialekt arbeiten will.

    EDIT: Du willst das RN-Control mit Bauteilen von Reichelt nachbauen? ---ohne RN-Board-Platine - oder haben die die auch? .... hmm, naja ich sag mal aus dem Bauch raus: das wird nichts Bild  
    Ob der µC passend ist sagt Dir das Datenblatt- Vorsichtig sein, hier kommt es nicht nur darauf an, ob die Pinanzahl gleich. Hier geht es eher um Pinkompatiblität, haben einige Pins andere funktionen als der ander Chip, wirst Du vermutlich Probleme bekommen. Und ein einfacher zweiter Atmega32 16Mhz DIP tut es denke ich auch. Diese Dinge bekommt man recht shcnell kaputt wenn man nicht aufpasst. Manch Motortreiber übrigens auch Bild  

    Wenn es Dir jetzt immer noch ums Erfahrung sammel geht, dann nimm einen ISP-Programmer und die Einzelteile um die Schaltungen im RN-Wissen nach zu bauen. Das kommt immer noch am günstigsten und man kann immer noch was dazu kaufen wenn man dann mehr vorhat.

    Das RN-Board ist nicht einfach an USB ansteckbar! Es wird ein Adapter benötigt! Oder eben einen alter COM Port - die meisten aktuellen PC/Books haben diesen nicht mehr.

    Korrektur: 7 bis 18V
    Geändert von HeXPloreR (16.04.2014 um 22:09 Uhr)

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    Nur eine kleine Randbemerkung zum ISP: wenn Du 3 Wochen Zeit hast um auf die Lieferung zu warten, ist ein USBASP aus China (Aliexpress) idR eine gute Wahl. Zwei Stück bekommst Du dort für $3.81 incl Versand. Wenn Du lieber etwas mehr bezahlen möchtest, kannst Du ihn auch bei Ebay für €3.80/Stück kaufen. Der USBASP läuft auch direkt aus BASCOM. Das sehe ich nämlich wie Fredred, zum Einstieg ist es angenehm, wenn die Toolchain übersichtlich ist. Just my two cents Bild  . Gruß, Malte

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    Ich hab mir jetzt doch erstmal das myAVR light Plus geholt - ich denke da bekomme ich zum ähnlichen Preis doch merklich mehr Bauteile und Möglichkeiten als wenn ich mir Einzelteile bestelle und die Grundschaltung aus RN-Wissen nachbaue.. Danke für die Links zum ISP-Dongle, hab ich direkt bestellt. Mich verwirrt es nur, dass sämtliche ISP-Programmer von Roboterhardware.de 15€ und mehr kosten, bis hin zu 46€? was ist denn dabei, was man so unbedingt braucht im vergleich zu diesem 3,80€-Kabel?
    Was meinst du mit einem "Adapter", Hexplorer? ist das jetzt quasi dieses USBISP-Kabel, also der Programmer?

    Die Rohplatine fürs RN-Control gibts bei roboterhardware.de, aber leider die Einzelteile oder einen gesamten Bausatz dafür nicht (obwohl es an mancher Stelle steht, dass es das angeblich gäbe... :-P).

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    Bin auf noch eine Frage gestoßen:
    Was genau ist jetzt das benötigte RS232-Kabel? Pc-Seite 9polig und Boardseite 3polig? Hab nix wirklich eindeutiges gefunden, da tauchen oft überall zwischendrin auch 25polige Stecker auf. Weiteres Problem wäre, dass mein PC eine solche Schnittstelle nicht hat - für die Nutzung eines RS232-USB-Kabels brauche ich laut RN-Wissen einen Programmer namens STK500, aber finde da in Shops unter dem Begriff nur ein komplettes Board. Und was meinst du genau mit "einen zusätzlichen IC, der die Pegel anpasst", hexplorer? Wofür steht IC? Sry, aber da sind eben doch diese paar Dinge recht verwirrend und für mich nicht eindeutig, was ich da nun brauche.

  5. #5
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    47
    Beiträge
    1.369
    Hallo 'Spinner,

    okay, nur mal soviel zum Anfang: Ein extra RS232 Kabel bnötigst Du PC seitig nicht, denn wenn der eh keinen Anschluss dafür hat kannst Du auch nichst anschliessen. Manche Programmier-Adapter unterstützen allerdings den RS232 Datenmodus (oder auch UART / RXTX genannt) -ob das jeder kann weiß ich jetzt so auch nicht, es gibt ja schon so einige. Der mySmartUSB mkII z.B kann es, ich kann es nur von dem sicher sagen weil ich den auf benutze. An dem müssen dann zwei einfache (selbsgemachte) Kabel (immer mit GND) von dem Board extra angeschlossen werden. Es gibt andere günstigere -wie Du sicher schon bemerkt hast - man muss nur irgendwie sicherstellen das der dann auch mit der gewählten Programmierumgebung funktionieren kann, oder man es hinbekommt das einzustellen falls es mal etwas schwierig wird.

    Ein STK500 Board benötigst Du nicht zwingend, der einfache Programmer inkl RS232 Modus kann es auch. Ob der dann auch den Bootloader ansprechen kann weiß ich so auch nicht - wie gesagt ich benutze schon lange keinen Bootloader mehr. Und habe damit auch weiter keine Erfahrung.

    IC bedeutet "integrated Curcuit" oder auch "integrierter Schaltkreis" - alle Mikrocontroller sind es, sehr komplex fast wie ein PC. Dazu kommen noch spezielle IC's wie der MAX232 in seinen verschiedenn Ausführungen; Motortreiber und Spannungswandler die für gewisse Aufgaben ausgelegt sind usw usw. Ein Mikrocontroller ist also ein IC der im großen Umfang verschieden Möglichkeiten der Nutzung bietet die man ihm selbst geben kann, daher ist der heute so interessant für uns Bild  

    Ich kann Dir nur empfehlen dir vielleicht vorerst mal das Buch von Ulli Sommer "Roboter selbst bauen" zu besorgen, es ist gut zu lesen auch wenn die eine oder andere Schwäche hat, die man irgednwie selbst erkennen muss. Es hat über 300 Seiten, bis 180 ungefähr vermittelt es gute und brauchbare Informationen (mit kleinen Fehlerchen), ab da muss man selbst gucken was man da gebrauchen kann.

    Viele Grüße
    Jörg
    Geändert von HeXPloreR (17.04.2014 um 07:54 Uhr)

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    14.11.2013
    Ort
    Home
    Beiträge
    213
    Hallo derSpinner,

    mein letzter Beitrag zu diesem Thema(Einstieg)
    der ATMEGA 644PA-PU ist schon eine gute Wahl. Wirst schon einige Zeit benötigen um diesen an seine Leistungsgrenze zu bringen.
    So nun werde ich mal versuchen meinen ersten Aufbau und programmier Erfolg zu beschreiben(sind einige Jahre vergangen) aber mal sehen.

    1. Bascom-Demo installiert..... auf alten Dellrechner mit USB-COM- und Parallelanschluss.
    2. Material gekauft. 1x Lochstreifenplatine(100x160) 1x 40poligen IC-Sockel 1x Buchsenleiste, 64-polig,einreihig,RM2,54 1x Parallelstecker mit Lötanschluss 1x 5poligen Platinenstecklverbinder(für ISP) 1x ATMega16 1x USB Steckernetzteil (1000mA) und eine USB- Einbaubuchse Serie A für Printmontage (Spannungsversorgung).
    Kosten waren ca. 15 Euro.
    Das war es. 2x 220 Ohm Widerstände und ein 100n Kondensator sowie ein Taster und 10Kohm Widerstand für Reset hatte ich noch.
    Zum Aufbau ein Lötkolben und ein 3,5mm Bohrer. Der Bohrer macht sich gut die Streifen der Platine per Hand zu trennen.
    Die Buchsenleiste habe ich auf 20 getrennt und neben den IC-Sockel eingelötet, den Rest auf 2x12 getrennt und auf die VCC und GND- Schiene gelötet. Somit brauchte ich bei meine ersten Versuchen nicht immer den Kolben anzuschmeißen. Konnte ja nun alles stöpseln.
    Mehr Aufwand ist erst mal nicht nötig um die ersten Erfahrungen zu sammeln. Ein ISP-Dongle benötigts du nicht Bascom hat die STK200/300 Schnittstelle integriert. Auch ein ext. Takt (Quraz) kann später noch angeschaltet werden.
    Später wirst du noch ein USB für Prog einbinden. Willst ja mit der Zeit auch aktuell sein. (ich benötige bis heute kein USB oder was auch immer fürs programmieren) Wichtig wird es sein eine COM-Verbindung zu deinem PC-Terminalprogramm aufzubauen.
    Somit kannst du an fast jeder X beliebigen Stelle im Programm mit „PRINT“ ein Ergebnis anzeigen lassen. Dies ist für mich unverzichtbar geworden. Denn wenn du auch mal ein Programm schreibst mit ca. 5000 Zeilen, mit vielen Sub’s , Schleifen, Berechnungen usw. Bin ich mich sicher, es treten erst mal Denkfehler auf.

    So nun aber Schluss mit dem Geschwätz.
    Im Anhang noch mein ISP- Anschluss LPT.

    Mit freundlichen Grüßen
    fredlich
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken ISP-LPT.jpg  

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    Vielen Dank für die weiteren Tipps. Bild  
    Aber ich muss doch irgendwie das Programm vom PC auf den µC übertragen - wie geht das denn ohne ein ISP-Kabel? man braucht doch auf jeden Fall eine Verkabelung in irgendeiner Form zur Programmierung des µCs. Bis auf die Sache mit dem RS232 sind auch meine Fragen erstmal alle geklärt. Die meisten werden sich wohl eh erst ergeben, wenn ich mit der Praxis anfange und auf Probleme stoße. Die Vorfreude ist groß und ich kanns kaum erwarten, das Paket zu öffnen und mich auf die Bastelei zu stürzen Bild  

  8. #8
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    14.11.2013
    Ort
    Home
    Beiträge
    213
    Hallo derSpinner,
    wollte zu diesem Thema zwar kein Kommentar mehr einstelle, aber nach wie vor kann ich nur sagen, für mich persönlich ist ein „alter“ PC mit LPT und COM für Programmierung, schon das Optimum.
    Schaust du dich mal mein Bild(PC-LPT zu ISP-Controller) an wirst du sehen, man benötigt nicht viel zum flashen. Wichtig ist der Hardware Reset mit LPT. Ist Bascom gestartet und Verbindung hergestellt, wird sofort, ein „knallhartes“ Reset am Controller ausgeführt. Ist ja auch das A&O fürs sauberes flashen.

    Natürlich habe ich auch „moderne PC’s“ die nur noch USB usw. haben.
    Aber mein alter Rechner(für ein Päckchen Kaffee erworben) ist Ideal für meine vielen Projekte. Ein Selbstbau RS232 Adapter für Anzeige auf PC mit COM ist auch kein Problem(ca. 2,00 Euro).

    Nun werden einige Experten sagen “all dies ist doch nicht mehr Modern man kann doch mit einige zwischen geschalteten Modulen viel bessere Erfolge erzielen“ Mag sein, aber ich bleib bei der Historie der Entwickler für Controller.
    Mit freundlichen Grüßen
    fredred

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    So, jetzt habe ich mit Bascom ein paar LEDS blinken lassen, auch mal auf Tasteraktivierung, und den Speaker/Summer ticken lassen.
    Habe aber schon wieder ein paar Fragen:
    - Warum "tickt" der Summer nur (wie eine laute Analoguhr an der Wand) und spielt keinen Dauerton, wenn der entsprechende Port durchgängig auf "1" steht? das ist mir nicht klar. Beim mitgelieferten Testprogramm (was bereits in Maschinencode/hex vorhanden war) hat der Summer bei Druck auf einen Taster einen Dauerton abgespielt. In Bascom kann ich nur den Port auf "0" oder "1" setzen, oder auf "Sound" - Hier frag ich mich: Was ist der Unterschied zwischen "1" und "Sound"?

    Übrigens: dieses Board kann man allein mit einem Mini-USB-Kabel programmieren, da der µC einen Bootloader hat und vom Hersteller sämtliche notwendige Software zur Verfügung gestellt wird (Compiler, USB-Treiber).

    Allerdings möchte ich jetzt auf LunaAVR umsteigen, da man bei Bascom ja doch die 4kb-Grenze schnell erreicht hat, die die Demo hergibt. Bei einem von mir selbstgeschriebenem Programm reichten ein paar einfache Befehle (wie Led an) und zwei "If"-Schleifen... hab mich erst gefragt warum mir immer ein Synthaxfehler angezeigt wurde, bis ich gesehen hab, dass die erzeugte Datei schon 4KB groß war und mir klar wurde, dass Bascom den Code nur bis zum Erreichen der 4KB geprüft hatte und ihm deswegen erwartete Befehle fehlten. :-P :-D Wenigstens eine Meldung vom Programm, dass der Quelltext die Kapazität der Demoversion überschreitet hätte ich als Hinweis wünschenswert gefunden...

    Aber nun mein Hauptproblem:
    wie bekomme ich LunaAVR so konfiguriert, dass ich dieses Board flashen kann?
    Habe Luna installiert, WinAVR, AVRdude und in Luna unter Einstellungen als Compiler avrdude.exe eingestellt, als Schnittstelle "com3" gewählt. Weiß nur nicht was ich in "Programmer" angeben soll. so etwas wie "myAVR USB to UART" ist dort in der Liste nicht aufgeführt. Könnte mir da jemand helfen? Versuche das schon seit gestern abend. o.O
    Wenn ich beim proggen heute nicht weiterkomme, kann ich ja immerhin das LCD-Modul noch zusammenlöten^^

    Mein Fazit zu dem Board (my AVR Board light):
    Ich muss sagen, von dem Board bin ich hellauf begeistert und ich kann es nur jedem für die ersten "Gehversuche" empfehlen! das Board allein kostet 15€ (Bausatz), das Set (Board und LCD-Modul) 30€. Software CD mit Beispielprogs, Bauanleitung, Schaltplan, Anleitung für Durchführung des Hardwaretests, Kurze PDFs für den Einstieg mit ausführlichen Beispielen ist alles dabei. Lediglich das Mini-USB Kabel muss man sich selbst besorgen, aber davon hat man heutzutage meistens eh ein paar in der Ecke liegen von alten Handys o.Ä. Zudem ist ein Teil der Platine mit Stecklöchern zum schnellen, Aufbau eigener Schaltungen ausgestattet. Ich glaube das reicht mir sogar erstmal, damit kann man wirklich viel machen und lernen - Ampelschaltungen bauen, Melodien abspielen lassen, Text auf LCD anzeigen lassen usw. Da werd ich das RN-Control erstmal so schnell nicht brauchen, sondern eher erst, wenn ich wirklich sage, ich bin jetzt soweit, dass ich auch wirklich Servos und Schrittmotoren ansteuern will und Roboter entwerfen möchte.

Ähnliche Themen

  1. Einstieg in Microcontrollerprogrammierung
    Von 2linkehaende im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 2
    Letzter Beitrag: 13.11.2009, 13:27
  2. Absoluter Neuling will in C einsteigen
    Von Michael 123 im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 21.09.2008, 12:11
  3. Wie soll ich einsteigen?
    Von pras_18 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 3
    Letzter Beitrag: 13.05.2008, 20:41
  4. mit RN-Control einsteigen und das zum Robot erweitern?
    Von StoredProc im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 2
    Letzter Beitrag: 12.12.2006, 14:37
  5. Microcontrollerprogrammierung mit C/C++
    Von mArc2k5 im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 31.05.2005, 06:56

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

    Werbung      Solar Speicher und Akkus Tests