Im Prinzip ja, nur laut doku ist "sbi" am Aussterben
PORTC |= 1 << 3; setzen
PORTC &= ~(1<<3); löschen
Vergiss aber nicht, daß du "0" brauchst, um eine deiner Spulen unter Saft zu setzen 0 = Strom, 1 = nix mfg robert
joa die andere Reihenfolge hat auch nix gebracht, leider
Vielleicht ist der Port kaputt oder so?
Ich kann das ganze ja auch an einen anderen Port legen, ist halt nur ärgerlich.
Wie aktiviert man nochmal in C einen Pin an einem Port ohne den ganzen neuzubelgen?
So?
sbi(PORTC,3) // Pin 3 aktivieren (auf Spannung ziehen)
Im Prinzip ja, nur laut doku ist "sbi" am Aussterben
PORTC |= 1 << 3; setzen
PORTC &= ~(1<<3); löschen
Vergiss aber nicht, daß du "0" brauchst, um eine deiner Spulen unter Saft zu setzen 0 = Strom, 1 = nix mfg robert
Ok werde ihc das so machen, jetzt sollte dem ganzen ja nichts mehr im Wege stehen.
Vielen Dank für deine ausführliche schnelle Hilfe!
Eine abschließende Frage noch:
Im Datenblatt meines Motors sind folgende Kräfteangaben:
Detent Torque: 80g-cm
Holding Torque: 504g-cm
Wie rechne ich das ganze jetzt in Ncm um?
Wären das nur 5Ncm bei der Holding Torque??
Bei welcher Frequenz wird dieser Wert erreicht?
mfg, Rodney
Oh jeh, ich fürcht', ich bin der falsche mfg
Es gibt also auch was worauf du keine Antwort parat hast... [-(
Nee ist ja nicht nur ein 2er Gespräch hier, kein Problem^^
Die Angaben in gramm sind natürlich nicht ganz sauber formuliert aber die Umrechnung sollte so stimmen. Unten noch ein paar Definitionen zu Torque.
Die beiden Daten sind für die Geschwindigkeit null definiert. Die Geschwindigkeit sonst nach Datenblatt, oder gibt es sonst Angaben über den Motor?
Manfred
http://www.usdigital.com/products/ms23/index.shtml
Torque
Detent Torque: The amount of torque required to rotate a Stepper motor shaft without power applied to the windings.
Holding Torque: The amount of torque required to rotate the Stepper motor shaft while the windings are energized with maximum DC current at zero speed.
Pull In Torque: The amount of torque a Stepper motor can produce without losing synchronism starting from a zero speed state, then given a fixed frequency step sequence.
Pull Out Torque: The amount of torque a Stepper motor can produce at a particular operating speed without losing synchronism.
so, langsam bin ich wirklcih am Ende...
die LED´s haben alle richtig geblinkt aber warum funktioniert dieser Code nicht mit dem Motor:
Motor_links funktioniert, motor_rechts dagegen nicht.Code:void motor_links(void) { static int schritt1; schritt1++; if (schritt1 > 4) schritt1 = 1; if (schritt1 == 1) PORTC = B00001010; if (schritt1 == 2) PORTC = B00001001; if (schritt1 == 3) PORTC = B00000101; if (schritt1 == 4) PORTC = B00000110; } void motor_rechts(void) { // Pin 5 (TDI) funktioniert nicht / kaputt deswegen dort zusätzlcih PortD, Pin 7 static int schritt2; schritt2++; if (schritt2 > 4) schritt2 = 1; if (schritt2 == 1) { PORTC = B10000000; PORTD |= 1 << 7;} if (schritt2 == 2) { PORTC = B10010000; PORTD &= ~(1<<7);} if (schritt2 == 3) { PORTC = B01010000; PORTD &= ~(1<<7);} if (schritt2 == 4) { PORTC = B01000000; PORTD |= 1 << 7;} }
Beide Motoren sind gleich angeschlossen nur halt an verschiedenen Pins.
Links und recht testest du erst mal einzeln ? Sonst müssen wir das anders machen mit dem Programm.
Trotzdem solltest du den jeweils anderen Motor mit 1-ern deaktivieren.
if (schritt1 == 1) PORTC = B11111010; // links
bzw
if (schritt2 == 1) { PORTC = B10001111; PORTD |= 1 << 7;} //rechts
PoRTD Pin 7 könnte vom Timer 2 belegt sein.
Wenn du den nicht brauchst, dann TCCR2 auf NULL setzen
(Auf output setzen is eh logo)
wenn der zweite L293 analog angeschlossen ist
Pin2 <> PORTC.7
Pin7 <> PORTC.6
Pin10 <> PORTC.5/ PortD.7
Pin15 <> PORTC.4
seh ich so mal keinen Fehler *seufz* mfg robert
gott bin ich blöd, ich Dummkopf hab im Eifer des Gefechts beide Motoren gleichzeitig angesteuert, was natürlich nicht funktionieren kann, da die beiden Routinen sich gegenseitig behindern...
Ich muss jetzt erstmal das Programm umschreiben, ich schätz mal das wars jetzt^^
Wollen wir mal hoffen, das der thread hier zu Ende ist.
mfg, Rodney
Ok alles hat funktioniert, damit wäre das Motorproblem wohl gelöst, danke an alle die hier gepostet haben, aber natürlich besonders PicNick.
Eben sind mir zwar beide Treiber um die Ohren geflogen (Verpolung, die Dinger warn nicht gesichert weil sie direkt am Akku hängen) aber immerhin funktioniert hat alles.
Lesezeichen