Hallo, ich glaube ich steh grad schon wieder ein bischen aufm Schlauch! Ich hab ein paar von diesen Schrittmotor-Treibern bekommen, und versuche vergeblich diesen mit meinem Atmega8 zum laufen zu bringen! Kann mir vielleicht jemand auf die Sprünge helfen, wie ich den kack ansteuere, damit er sich wenigstens mal in irgendeine richtung dreht? Bis jetzt springt er wirr rum, und macht nicht gerade das was er machen soll. Vielleicht hat ja jemand von euch schon mal mit diesem gearbeitet! wär prima! gruß Anbei das Datenblatt des Treibers.
>wie ich den kack ansteuere,
Auf welcher Datenblattseite finde ich den kack? Ist das vielleicht ein
spezieller Pin, der rückwärts getriggert werden muß?
Alles aus Datenblatt, Seite 14, Figure 5: Eingänge I10 und I20 auf H und Eingänge I11 und I21 auf L für Normalmode. "Linksdrehung" Sequenz:
1 | Phase1-Phase2 |
2 | 0-0-> Stepp 1 |
3 | 0-1->Stepp 2 |
4 | 1-1->Stepp 3 |
5 | 1-0-> Stepp 4 |
6 | 0-0->Stepp 1 |
7 | .. |
"Rechtsdrehung" Sequenz:
1 | Phase1-Phase2 |
2 | 0-0-> Stepp 1 |
3 | 1-0-> Stepp 4 |
4 | 1-1-> Stepp 3 |
5 | 0-1-< Stepp 2 |
6 | 0-0-> Stepp 1 |
7 | .. |
So, nun hab ich es aufgebaut, und mal ein kleine programm dazu geschrieben! Aber irgendwie will der motor nicht so richtig! hab ich da evtl was falsch gemacht? gruß
1 | ' *************************************************************************** |
2 | ' * |
3 | ' * Title : Schrittmotor |
4 | ' * Version : |
5 | ' * Last Updated : |
6 | ' * Target : |
7 | ' * Author : |
8 | ' * Program code : |
9 | ' * Hardware req. : |
10 | ' * Description : |
11 | ' *************************************************************************** |
12 | |
13 | $regfile = "m16def.dat" |
14 | |
15 | $crystal = 16000000 |
16 | |
17 | Config Porta = Output |
18 | Config Pind.2 = Input |
19 | |
20 | I10 Alias Porta.0 |
21 | I11 Alias Porta.1 |
22 | I20 Alias Porta.2 |
23 | I21 Alias Porta.3 |
24 | |
25 | Phase1 Alias Porta.4 |
26 | Phase2 Alias Porta.5 |
27 | |
28 | I10 = 1 |
29 | I11 = 0 |
30 | I20 = 1 |
31 | I21 = 0 |
32 | |
33 | |
34 | Do
|
35 | |
36 | If Pind.2 = 1 Then |
37 | |
38 | Phase1 = 1 |
39 | Phase2 = 0 |
40 | Waitms 50 |
41 | Phase1 = 0 |
42 | Phase2 = 0 |
43 | Waitms 50 |
44 | Phase1 = 0 |
45 | Phase2 = 1 |
46 | Waitms 50 |
47 | Phase1 = 1 |
48 | Phase2 = 1 |
49 | Waitms 50 |
50 | End If |
51 | |
52 | Loop
|
53 | End
|
>Aber irgendwie will der motor nicht so richtig! hab ich da evtl was >falsch gemacht? Geht es auch etwas genauer? MW
Er dreht etwa 4 schritte nach rechts, dann wieder 4 nach links. Irgendwie seltsam! Inzwischen arbeite ich mit einem Mega16. Deshalb "m16def.dat" gruß
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.