C++ Programman Microcontroller

Gast #609060
Lesenswert?

Hallo,

Wir haben derzeit an unserer FH ein Projekt laufen in welchem wir einen 
Rasenmäher ansteuern müssen.

Jetzt haben wir schon einiges in C++ programmiert und würden nun das 
ganze an die Microcontroller Software übergeben, nur wie???
Könnt ihr mir da helfen, würde mich auch über E-Mais freuen!

Danke im Voraus,
Kathrin
Gast #609117
Lesenswert?

Was heißt "an die Microcontroller Software übergeben"? Den Controller 
Programmieren?
Einfach Programmer anschließen, das Programm in die Programmiersoftware 
laden (zum Beispiel AVR Studio mit der C-Erweiterung, weiß gerade nicht 
wie die heißt) und dann programmieren. Beim AVRISP mkII ist die ganze 
Software schon dabei.
Gast #609126
Lesenswert?

wrote
"Jetzt haben wir schon einiges in C++ programmiert und würden nun das
ganze an die Microcontroller Software übergeben, nur wie???"

Was soll das nun heißen ? Ist hier ein PC (C++) Programm gemeint, 
welches mit dem µC kommunizieren soll ? Oder ein Download in den µC ? 
Oder einfach nur C++ Code (ohne Rücksicht auf µC Eigenschaften!) der auf 
dem PC läuft und nun auf dem µC laufen soll ? Ziemlich unpräzise die 
Angabe ... mäht doch lieber Hand oder nehmt doch Schafe (... sind auch 
niedlicher :-) )
Gast #609175
Lesenswert?

>würde mich auch über E-Mais freuen

hmm...Gen-Mais kenne ich, aber E-Mais? Aber da du dich freust, ist es 
sicherlich was gutes :-)

Also mal als Schuss ins blaue: Habt ihr für euer Projekt schon sowas wie 
ein Konzept? Einen Projektplan o.ä.?

Welchen Mikrocontroller verwendet ihr? Das sollte man wissen bevor man 
überhaupt was macht. Weiterhin ist man dadurch festgelegt, wie man den 
Code in den Controller bekommt (Seriell-Bootloader, Parallel, JTAG,...).

Danach müsstet ihr euch einen Compiler suchen (C oder C++) je nach 
verwendetem Controller. Und nein, C/C++ ist nicht C/C++ ist nicht C/C++. 
Es gibt wohl einige Sachen, die lt. Standard nciht 100% definiert sind. 
Bestes Beispiel sind wohl die Interrupts (bei jedem Compiler irgendwie 
anders).

Und überhaupt, ihr müsst doch schon sowas wie Formeln, Algorithmen u.ä. 
bedacht haben? Davon hängt doch ab, welche Controller ihr verwendet 
(8-Bit, 16-Bit, 32-Bit,...)????

Frohes Schaffen.
Gast #609180
Lesenswert?

>Jetzt haben wir schon einiges in C++ programmiert und würden nun das
>ganze an die Microcontroller Software übergeben, nur wie???

Daras folgere ich dass der Zielprozessor schon kein 8 Bitter mehr ist. 
Da offensichtlich keine Peripherie involviert ist, denke ich ein 
embedded PC, zB ein VIA EPIA wird etwa die passende Klasse sein. Das 
Glueck ist hold, dass der benoetigte Code sogar PC kompatibel ist, dh 
man braucht keine Kohle fuer ueberteuerte Tools rausblasen.
Gast #609354
Lesenswert?

Also ich freue mich ja nicht über E-Mails, die von Stellen kommen, denen 
ich die Adresse nie gegeben hab...

Zur Frage: Die Antworten schießen hier ziemlich ins Blaue (von AVR bis 
zum Embedded-PC ist alles dabei), weil die Frage viel zu vage ist.
Solange nicht geklärt ist, was "das ganze an die Microcontroller 
Software übergeben" überhaupt bedeuten soll, kann man sowieso keine 
sinnvolle Antwort geben. Was ist "das ganze"? Was ist gemeint mit 
"übergeben"? Und an was für Mikrocontroller-Software soll es übergeben 
werden? An welchen Controller?
Gast #609579
Lesenswert?

hey bleibt nett, da sucht jemand Hilfe.

@kathrin

du musst erstmal in Erfahrung bringen was genau der µC ist. Also ob das 
ein PC da drin ist, ein ARM ,ein AVR oder sonst was.

Wenn ihr es euch aussuchen könnt, musst du erstmal abschätzen welche 
Leistung-klasse nötig werden könnte. Das ist meist ein Problem, weil man 
für so ein Projekt ja nie die komplette Dimension überblicken kann. 
eventuell soll ja irgendwann eine Bilderkennung mit Papiererkennungen 
rein, nicht das man ausersehen den hamster vom Nachbar mäht :)
also zusammenfassen was soll er machen, dann schauen was soll er 
möglicherweise machen können sollte und dann nicht zu unterschätzen was 
kann ich alles lernen (ist ja schließlich ein Lehrprojekt).

deine email-adresse hast du nicht mit zugeschrieben. versuch mir ein 
Mail zu schreiben.

x l o m x at w e b . d e
Gast #609678
Lesenswert?

> Wir haben derzeit an unserer FH ein Projekt laufen in welchem wir
> einen Rasenmäher ansteuern müssen.
>
> Jetzt haben wir schon einiges in C++ programmiert

Typisches Hochschulprojekt.

Erstmal was machen, dann mal schauen, ob es überhaupt Sinn macht.

Neulich erzählte mir ein Student einer FH (6. Semester), er könne sich 
gar nicht vorstellen, dass man Mikrocontroller in C oder Assembler 
programmiert. In den Praktika haben die armen Studenten immer nur 
irgendwelche Funktionsblöcke zusammen geklickt...

Arme Studenten, armes Deutschland.
Gast #609705
Lesenswert?

>den Praktika haben die armen Studenten immer nur irgendwelche Funktionsblöcke 
zusammen geklic...

Natürlcih, war bei uns auch so, die gibts ja fertig in (vorgefertigten) 
Bibliotheken:
Funktionsbaustein UART, so angekabelt, fertig geht ;-))


ein (noch) FH Student
Gast #609802
Lesenswert?

Also bei euren Antworten war ja schon einiges hilfreiches dabei 
(Abgesehen von den ganzen "witzigen" Sachen wegen der Tippfehler).

Unser Projekt ist in 2 Gruppen aufgespalten. Die eine Gruppe musste ein 
Programm in C++ programmieren in dem der Rasenmäher die Koordinaten des 
zu mähenden Feldes ausrechnet. Die 2. Gruppe (in der auch ich bin) soll 
jetzt den Motor und die Lenkung ansteuern. Dazu müssen die C++ Werte der 
1. Gruppe an die Assembler Software des MC übergeben werden. Wir haben 
einen PIC und ein EVALBoard. Um den Motor anzusteuern haben wir auch 
schon einiges programmiert, jetzt würde uns nur noch das Einspielen der 
Parameter fehlen.
Gast #609806
Lesenswert?

Du solltest vielleicht GENAUER beschreiben, welche/wieviele Parameter 
das sind, über welche Schnittstelle(n) das geschehen soll (RS232, USB, 
Funk) , jeweils nur einmalig oder fortlaufend, ob die Parameter am PC 
gespeichert sind oder bleiben oder ob sie am PIC gespeichert werden 
sollen/müssen etc.
Viele Möglichkeiten.
Gast #609811
Lesenswert?

Also wenn die Werte zuerst auf einem PC bverechnet werden und sich nicht 
mehr verändern, dann kann man sie in die HEX-Datei einbinden, sodass sie 
beim Hochladen des uC-Programms in den EEPROM geschreiben werden.

Wenn der uC aber ständig auf aktuelle Werte des C++-Programms angewiesen 
ist, muss man irgendwie den PC mit dem uC verbinden. Da würde sich die 
serielle Schnittstelle anbieten.
Gast #609996
Lesenswert?

Ja: für so ein Projekt scheint die RS232 recht gut geeignet. Das gute 
ist, dass es Bluetooth-Adapter (oder WLAN) gibt, mit denen man das ganze 
dann auch ohne langes Kabel machen kann.

Vorgehen:
1. Einarbeiten in das RS232 Protokoll (trivial)
2. Diskussion mit Gruppe 1, wie sie die Daten übergeben wollen (wie oft, 
welchen Umfang,...)
3. Festlegen des Übertragungsprotokolls/SChnittstellen
4. Implementieren des Protokolls in C++ und auf dem PIC
5. hoffen dass es funktioniert.

Das sind aber alles Sachen, die eigentlich nicht so schwierig sein 
sollten. Naja, C++ und RS232 kann ich überhaupt nich einschätzen...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren