Motorsteuerung mit L293D

Hallo ! Bin neu hier und habe mein"Fritzing" Kit seit Heiligabend (Geschenk an mich selber XD ) Nun hab ich schon einiges ausprobiert und bin gerade dabei einen kleinen "Roboter" zu bauen. Grundgestell ist ein Kettenantrieb eines Raupenbaggers aus Lego Technik (die Kinder spielen eh nicht damit :P) Eben habe ich ein Programm soweit fertig gestellt, das sich schon mal was bewegt. Er stupst irgend wo gegen, fährt zurück, dreht sich etwas und fährt wieder gerade aus.

Ich habe mir noch einen Entfernungsmesser bestellt. Soweit ich das gesehen habe, muss dieser an PWM Anschlüsse an den Arduino Uno. Diese sind aber schon alle durch die zwei Motoren belegt.

Nun meine eigentliche Frage: Können die beiden Leitungen die im Programm auf

digitalWrite(motor_A,HIGH); 
digitalWrite(motor_B,LOW);

gesetzt werden, nicht auch auf normale Klemmen wie 4,7,8,12,13 angeschlossen werden ? Ich wollte das jetzt nicht einfach so testen, bin im Moment noch etwas vorsichtiger. Der Pin für die Geschwindigkeit muss ja bestimmt an einen PWM Ausgang?! Wie ist das mit dem 13er ? Kann man den auch als Eingang für einen Taster benutzen ? Habe mich etwas erschrocken, als die LED ausging, wenn ich auf einen Taster gedrückt habe !

Zweite Frage: Wie macht ihr das wenn man ein neues Programm auf den Arduino schickt. In dem Moment wenn ich den an USB anschließe, wird er ja gestartet. Was aber, wenn man ein Programm drauf hat, was nicht zu der neuen Schaltung passt ? Kann dann auch was kaputt gehen ? Ich habe mit dem oben genannten Projekt auch eine 9V Batterie am Adruino. Nur USB lassen die Motoren nur langsam drehen, was den USB Port sicher zu sehr belastet. Ich habe es so gemacht, das ich den Reset Knopf gedrückt habe, um das Programm anzuhalten und dann schnell das neue drauf gemacht...aber irgend wie denke ich, das man das sicher anders macht ?

Dritte und letzte Frage: Habe hier was wegen 5V und USB gelesen. DIe 9V Batterie habe ich wie auch im Beispiel an die Vin Klemme angeschlossen. Habe gelesen, das der Arduino das erkennt wenn man ihn an USB anschließt. Eben habe ich aber irgend wo was anderes gelesen, das man besser den Netzteilanschluss nehmen soll ?

Würde mich sehr über Antworten freuen.

Hoi,

um es gaaanz kurz zu machen:

  1. Ja (das ist ja nur HIGH oder LOW) 1b. Ja, dann geht die LED beim Drücken halt aus
  2. vorher ARDUINO "leer" machen oder z.B. mit einer 5 Sekunden-Verzögerung starten
  3. Ja (aber Netzteilanschluss ist halt sicherer)

Kann man Pin 13 auch als Eingang benutzen ?
Wie ist das eigentlich mit Pin 1 und 2? Hab gelesen man solle es vermeiden diese zu nutzen. Aber vermeiden ist ja nicht verbieten.
Wie kann man den Arduino vorher leer machen ?

Hoi, auch Pin13 ist ein ganz normaler Pin (nur mit LED gekoppelt).

Pin1 und Pin2 sind quasi "reserviert" für den SerialMonitor.

Und leer machen geht mit einem Leer-Sketch - also einfach die IDE starten und den dann angezeigten leeren Script hochladen;-) Oder den Blink BeispielSketch - da weisst Du beim Einschalten des Boards dass es "leer" ist :D

A.R.Ty: Pin1 und Pin2 sind quasi "reserviert" für den SerialMonitor.

Pin 0 und 1 sind für die serielle Kommunikation, also nicht explizit für den Serial Monitor, sondern ebenso für jedes andere Terminal-Programm und vor allem für die Programmierung über den Arduino-Bootloader.

A.R.Ty: Und leer machen geht mit einem Leer-Sketch - also einfach die IDE starten und den dann angezeigten leeren Script hochladen;-) Oder den Blink BeispielSketch - da weisst Du beim Einschalten des Boards dass es "leer" ist :D

Wozu soll das gut sein? Ist die Hardwareseite In Ordnung, besteht kein Risiko für den Mikrocontroller, wurde beim Hardwareanschluss geschlampt, ist es auch egal, ob nun ein für "leer" gehaltener oder mit dem Blink-Sketch bespielter Mikrocontroller oder aber eine gänzlich andere Programmierung vorliegt.

Wozu soll das gut sein?

Das musst Du nicht MICH fragen

quasi "reserviert"

heßt genau das was da steht

Wenn du in setup() Serial.end() machst, kannst du TX und RX als normale I/Os verwenden.

Habe ich mal gemacht, weil es anders nicht praktisch war. Man verliert halt die Debug-Option, aber es geht :)

A.R.Ty:

Wozu soll das gut sein?

Das musst Du nicht MICH fragen

Den Tipp hast du gegeben. Und der ist unsinnig...

A.R.Ty:

quasi "reserviert"

heßt genau das was da steht

Mit der Formulierung und ohne nähgere Erklärung machst du es Einsteigern nur unnötig schwer, zumal du auch die falschen Pins benannt hast. Und sowas sollte ganz einfach richtiggestellt werden...

Mit der Formulierung und ohne nähgere Erklärung machst du es Einsteigern nur unnötig schwer, zumal du auch die falschen Pins benannt hast. Und sowas sollte ganz einfach richtiggestellt werden...

ICH konnte sofort nachvollziehen, dass er zwar Pin0 und Pin1 meint, aber da er NewBee ist, Pin1 und Pin2 geschrieben hat. Manchmal ist es nicht nötig, kompliziert zu denken und viele Worte um so einen Tinneff zu machen :%

Ja ja ich hab Pin 0 und 1 gemeint ! :P Aber gut das man die doch nutzen kann, wenn es denn mal sein muss. Danke für den Tipp dafür.

Das ich nun auch Pin 13 normal nutzen kann, ist auch eine Super Info.

Der Gedanke mit dem falschen Programm kommt weil man ja die verschiedensten Sachen machen kann. Also einmal ein Pin ein Eingang, einmal ein Ausgang. Dann gibt es noch diese PWM Pins. Deshalb der Gedanke, das man da irgend was beschädigen kann, wenn die Schaltung nun gar nicht zum Programm passt.

Habe gerade hier was gelesen :

http://playground.arduino.cc/Code/CapacitiveSensor

DO NOT CONNECT ANY ACTIVE DRIVER TO THE USED PIN ! the pin is toggled to output mode to discharge the port, and if connected to a voltage source, will short circuit the pin, potentially damaging the Arduino and any hardware attached to the pin.

Also kann doch was kaputt gehen, wenn man eine Schaltung hat, bei der ein Pin als Eingang genutzt wurde, man dann umbaut, an USB anschließt um ein neuen Programm einzuspielen und der Pin wird nun als Ausgang genutzt (oder anders rum) ?

Also kann doch was kaputt gehen, wenn man eine Schaltung hat, bei der ein Pin als Eingang genutzt wurde, man dann umbaut, an USB anschließt um ein neuen Programm einzuspielen und der Pin wird nun als Ausgang genutzt

So ungefähr, aber generell natürlich ja.