Forum: PC-Programmierung Ausgang für 2 sek setzen


von Schüler F.F. (Gast)


Lesenswert?

Hallo,
möchte mit C einen kleinen Roboter programmieren der frei herumfährt;
hat jemand ein fertiges Programm oder kann mir jemand helfen:
1. Ausgangs Port (Motor) für 2 Sekunden setzen, wie lautet die
Anweisung?
2. Wie kann ich 2 Signal(eingänge) einlesen mit Abbruchbedingung?
MfG

von Bartli (Gast)


Lesenswert?

1.setport(motor);
  usleep(2000000);
  unsetport(motor);

2. while(1) {
     readinput(1);
     readinput(2);
   }

von mr.chip (Gast)


Lesenswert?

Hallo

Was kannst du den so in C bzw. was hast du bisher so programmiert?
Welchen Controller verwendest du, und wie sieht die Hardware für den
Robboter aus? Deine Frage ist etwas gar allgemein abgefasst, etwas mehr
Angaben wären für eine brauchbare Antwort unerlässlich.

Gruss

Michael

von Schüler F.F. (Gast)


Lesenswert?

Also, vor hab ich das mit einem ATmega8 µC auf einem Anfänger
MyAVR-Board. Entwicklungsumgebung ist AVR Studio 4.12. Soll also ein
Roboter (wie so ein Panzer, mit Ketten und so, also Motor
links&rechts)
werden, der durch die gegen fährt. Vorne hab ich Ihm drei
Infrarot-Sensoren drangebaut; einer direkt vorne und die anderen
beiden
vorne an den Ecken. Und dann wenn der Robi Hindernis erkennt z.B. die
Sensoren "vorne" und "rechts" sind geschaltet dann soll er
anhalten
Sekunde später nach links drehen (Motor links läuft rückwärts, Motor
rechts vorwärts für 1sek (nicht 2 wie oben angegeben), und dann färt
er
wieder gerade aus.
Also wie das Programm aussehen soll weiß ich wohl nur die genauen
Befehle nicht. Hab mir ein C-Tutorial durchgelesen, bin dann aber mit
den dort erwähnten Ports, Pins und Registern voll durcheinander
gekommen, weil irgendwie steht in zwei Kapiteln dasselbe aber doch
irgendwie anders.
Hilfe wäre sehr hilfreich:-)
MfG

von mr.chip (Gast)


Lesenswert?

Hallo

Eine einfache Lösung gibt es da leider nicht. Da musst du dir wohl oder
übel C beibringen, um deine Idee umsetzen zu können. Ohne ein
grundsätzliches Verständnis, wie man Ports/Pins und Register setzt und
wie man herausfindet, was sie bedeuten (=> Datenblatt) kommst du
nirgendwo hin.

Da ist die Realität leider ziemlich hart ;-)

Gruss

Michael

PS: Eventuell wäre auch Bascom eine Alternative, das ist ein bisschen
unkomplizierter für den Anfang.

von Karl heinz B. (kbucheg)


Lesenswert?

> Hab mir ein C-Tutorial durchgelesen

Durchlesen ist zuwenig.
Du musst die Programme auch ausprobieren, eigene Entwürfe machen
und klein anfangen.
Dann kommt dir auch nichts mehr durcheinander.
Vergiss einfach mal deinen Panzer. Du wirst doch auf dem
Gefährt irgendwo eine LED haben, oder nicht? Dein erstes Ziel
ist es diese LED einzuschalten. Das nächste Pgm, zur Kontrolle,
schaltet die LED aus. Danach kannst du schon an die Schalter
rangehen: Ein Taster gedrückt -> LED soll leuchten. Taster
wieder losgelassen -> LED verlischt wieder. Und so führt
eines zum anderen. Und durch das klein anfangen, brauchst
du auch nicht so viel Information auf einmal aufnehmen sondern
dir immer nur ein paar Dinge neu aneignen und merken.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.