PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Was ist die Programmiersprache



Ganxta2
19.01.2006, 19:58
peinlich: Kann mir mal jemand erklären was die progrmmiersprache ist :-k :-s

kalledom
19.01.2006, 20:06
Hallo,
wenn Du ein Programm schreiben möchtest, mußt Du dich für eine 'Sprache' entscheiden, was allerdings wenig mit Landessprachen zu tun hat, sondern eben mit Programmiersprachen:
Basic, Fortran, Cobol, C, Delphi, Clipper, Visual-Basic, uvm.
Für Prozessoren gibt es noch Assembler, C, und andere Programmiersprachen.

Ganxta2
19.01.2006, 20:16
danke aber hat jeder Roboter eine andere sprache welche sprache hat denn der ASURO??? Danke Timo

askazo
19.01.2006, 20:21
Generell ist es so, dass jeder Mikroprozessor eine eigene 'Muttersprache' hat, nämlich seinen Befehlssatz. Man kann aber jeden Prozessor mit einer beliebigen Programmiersprache programmieren, vorrausgesetzt es gibt einen Übersetzer, der bei Programmiersprachen Compiler genannt wird.
Dieser Compiler ist ein Programm, der auf Knopfdruck ein Programm, das in C, Basic oder was auch immer geschrieben wurde, in den Befehlssatz des Prozessors umwandelt.

Welche Compiler es für den Asuro gibt, kann ich Dir allerdings nicht sagen....

askazo

listner
19.01.2006, 20:26
asuro hat soviel ich weiß c oder??

Ganxta2
19.01.2006, 20:26
Danke kann man die prozessoren mit einer schnittstelle oder mit was programmieren

Ganxta2
19.01.2006, 20:27
ach hallo listener hast du auch nen asuro

listner
19.01.2006, 20:29
nein habe kein aber ich habe hir irgendwo vorher gelesen das es c ist ich blaube wen du in ebay asuro eingibst kommen 2 und bei eim steht mit was man den proggen (programmieren) kann;);) einfach kreativ sein (als ob ebay was mit robotic zu tun hat) ;);)

Ganxta2
19.01.2006, 20:31
Ich hab nur die lego mindstorms

kalledom
19.01.2006, 20:41
Für jeden Mikro-Controller (PIC, AVR, 80C166-Familie, uvm.) ist eine Entwicklungsumgebung und ein Programmiergerät erforderlich. Beides gibt es von kostenlos über sehr preiswert bis sau-teuer.
Je nach Entwicklungsumgebung kann dann in Assembler, C oder einer anderen Programmiersprache das Programm erstellt werden. Die unterschiedlichen C-Compiler übersetzen das C-Programm in ein Assembler-Listing. Ein Assembler (evtl. noch ein Linker) generiert aus einem Assembler-Listing den erforderlichen Hex-Code zum 'Brennen' des Controllers.
PS: es wäre erst mal zu klären, welcher Mikro-Contoller in welchem Robbi / Gerät drin ist.

Ganxta2
20.01.2006, 13:57
also hab nu ma geguckt die sprache ist in C im katalog steht mit RISC prozessor

listner
20.01.2006, 14:00
aha was ist das fürn proz?

askazo
20.01.2006, 14:21
RISC bezeichnet nur die Architektur des Prozessors (RISC = Reduced Instruction Set Computing = Rechnen mit reduziertem Befehlssatz).
Wichtig wäre die genaue Bezeichnung des Prozessors...

askazo

Ganxta2
20.01.2006, 20:03
Danke an alle doch back zur Programmiersprache wie kann man sie lernen ?gibt es keine übersetzungs softwares??? :-k Ganxta2

chr-mt
20.01.2006, 20:13
Hi,

?gibt es keine übersetzungs softwares???
Doch. Eben deine Programmiersprache.
Du schreibst deine Befehle zB. in einer Hochsprache wie "Basic" oder "C"
und die übersetzt das dann in eine, für den Mikrocontroller verständliche Sprache.
Was hast du dir denn vorgestellt ?
Sowas wie in "Raumschiff Enterprise" ? "Controller, bitte schalte mal die Leutdiode an"
Das geht leider noch nicht. :D



zur Programmiersprache wie kann man sie lernen

Du kannst zB.

Bücher kaufen
Im Internet rumsuchen
In Foren lesen

Am besten, du probierst einfach mal was aus.

Lade dir mal die BASCOM Demo.
Dort schaust du dir die Beispiele an und liest die Hilfe.
Irgendwann schreibst du dann dein erstes eigenes Programm und kannst es gleich im Simulator von BASCOM testen.
Alles kostenlos.


Gruß
Christopher

Ganxta2
20.01.2006, 20:15
cool werd ich machen

chr-mt
20.01.2006, 20:48
Hi,
"Basic" (also zB. Bascom) ist schon recht nahe an der "normalen Sprache

Stell' dir mal vor, du willst einen Blinker bauen, bei dem eine Leuchtdiode jeweils 1 Sekunde an ist, dann wieder eine Sekunde aus usw.
Du hast eine Leuchtdiode am Mikrocontroller.
Die ist am Porta am Anschluss 0 .
(bei den Ports wird von 0-7 gezählt, nicht von 1-8 )
Ports sind bei den AVR Controllern Ausgänge oder Eingänge (umschaltbar) mit 8 "Beinchen" (Mal sehr grob ausgedrückt)
Also. Deine Leuchtdiode hängt am ersten "Beinchen" vom Port A.


Zuerst mußt du der Programmiersprache mal sagen, welchen Quarz dein Mikrocontroller hat, damit nachher alle Zeiten stimmen.
Der Quarz bestimmt die Taktfrequenz, also die Arbeitsgeschwindigkeit des Mikrocontrollers

Nehmen wir mal an, dein Quartz schwingt mit 8 MHz (=8000000 Hertz)

$Crystal =8000000

Dann mußt du dem Mikrocontroller mitteilen, ob der PortA ein Ausgang oder ein Eingang sein soll.
Es soll was raus (Spannung zur Leuchtdiode) also muß es ein Ausgang sein.

config porta = output

Da die Leuchtdiode nicht nur einmal blinken soll, mußt du eine "Schleife" programmieren.

Eine einfache Schleife ist "DO" "LOOP"
Übersetzt: Mache (DO) eine Endlosschleife (LOOP)
Alles was zwischen "Do" und "Loop" steht wird ständig widerholt.

Du willst die Leuchtdiode einschalten:
Porta.0=1 (1 = AN, 0=AUS)
Dann eine Sekunde warten:
Wait 1 (Wait = Warten)
Dann wieder ausschalten:
Porta.0=0
Wieder eine Sekunde warten:
Wait 1

An den Schluss kommt dann noch ein "End" = Programmende


Dein komplettes Programm würde also so aussehen:

$Crystal=8000000

Config Porta=Output

Do
Porta.0=1
Wait 1
Porta.0=0
Wait 1
Loop

End

Viele Sachen lassen sich auf mehreren Wegen erreichen.

Du könntest zB. auch schreiben:

$Crystal=8000000

Config Porta=Output

Do
Toggle Porta.0
Wait 1
Loop

End

"Toggle" heißt "Umschalten"
Also, wenn Spannung aus war, dann wird sie duch Toggle wieder eingeschaltet, wenn sie eingeschaltet war, dann wird sie ausgeschaltet.

So, das war zum Anfang mal sehr vereinfacht ;)
Aber vielleicht hilft dir das ja zu verstehen wie sowas aussieht.


Gruß
Christopher

7eddi
20.01.2006, 21:46
Wenn Du nur mal sehen möchtest, wie bestimmte Programmiersprachen syntaktisch aussehen, dann kann ich dir

http://www.99-bottles-of-beer.net/

empfehlen. Dort sind ein Haufen Programmiersprachen aufgelistet, die alle die gleiche Aufgabe lösen sollen (mehr auf der Seite).
Dabei sind nicht alle Programmiersprachen für die Programmierung von Robotern geeignet, sondern haben ein mehr oder weniger enges Einsatzgebiet.

Gruß,
Lucas

chr-mt
20.01.2006, 22:04
Hier gibt's auch einen netten Vergleich zwischen Assembler, C und BASCOM
https://www.roboternetz.de/wissen/index.php/Sourcevergleich

Gruß
Christopher

Ganxta2
21.01.2006, 10:51
aaaah jetz hab ichs kapiert vielen vielen dank also is bascom sozusagen in english und ne zahlen kombi vielen dank!!!!!!! =D> :cheesy: \:D/

Andree-HB
21.01.2006, 11:11
also is bascom sozusagen in english und ne zahlen kombi


...und Du hast es wirklich verstanden ? :-k

Ganxta2
21.01.2006, 22:47
nich ganz wie wird geproggt??? :-k :-k

chr-mt
21.01.2006, 23:09
Hi,
Wo ist denn jetzt dein Verständnissproblem ???

1.Programiersprache kaufen oder Demo runterladen.
2.Programmiersprache auf dem PC installieren.
3. Neues File aufmachen.
4.Programm schreiben.
(Das Programm ist ein Text. Schreibst du also so, wie zB. einen Brief, ganz normal mit deiner Tastatur.)
5.Programm kompilieren, also für den Chip übersetzen lassen.
(Das ist ein Kopfdruck)
6.Programm simulieren lassen, muß aber nicht sein.
(Noch ein Knopfdruck)
7.Programm mit einem Programmieradapter auf den Chip laden.
8. Gucken ob's geht
Wenn's nicht geht, weiter bei Punkt 4
So lange, bis es geht. ;)
Ab und zu speichern nicht vergessen ..

Du machst also erstmal nix anderes, wie wenn du einen Brief mit Word etc. schreibst.
Nur eben nicht in Deutsch, sondern in Basic oder einer anderen Programmiersprache.
Schließlich schreibst du ja nicht an deine Freundin, sondern an den Controller ;)

Einfach ausprobieren.

Gruß
Christopher

Ganxta2
22.01.2006, 09:59
achso jtz hab ichs echt kapiert viiielen thank