Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: I2C Befehlsfolge Kategorie: Programmierung (von Epp - 28.01.2005 18:37)
Als Antwort auf Re: I2C Befehlsfolge von Harald Kotte - 28.01.2005 10:32
Ich nutze:
C164CI-ControllerBoard, CC2-StarterBoard, OSOPT V3.0
Hallo Hako,
das ist sehr interessant. Ich habe auch schon mit unterschiedlichen Delays gearbeitet,aber auch damals
und auch bei Deinem Beispiel fängt bei mir sofort die grüne LED an zu leuchten. Die LED soll besagen,
dass zu wenig Strom geliefert wird, was ich als sehr seltsamempfinde, da ich ein altes Computernetzteil
benutze, die ja genügend Strom liefern sollten. Ausserdem funktionieren meine Schrittmotoren mit meiner
selbstgebauten L297/ L298 Schaltung einwand frei!

Was für eine Stromquelle benutz Du?
Was mich aber auch wundert, ist dass meine selbstgebaute Treiberschaltung weder mit einem alten
Druckernetzteil (30V, 400mA) noch mit meinem neuen Notebooknetzteil (19V, 6,32A) funktioniert!!??

Danke für Deine Hilfe

Epp

> Hallo Epp,
>
> die Kombi aus RN-Motor und CC2 benutze ich auch und hatte anfangs gleiche Probleme.
> Die Ursache liegt nicht in Deiner Programmierung, sondern in der Lese- und
> Schreibgeschwindigkeit des Motorcontrollers auf dem Bus.
> Was funktioniert sieht programmtechnisch nicht schön aus, aber was soll es...
>
>
>
> //-------------------------------------------
>   function direction (byte motor, byte direct)
> //-------------------------------------------
> {
>   /* Motor Drehrichtung */
>   i2c.cstart(0x56); sleep 10;
>   i2c.write (10); sleep 10;
>   i2c.write (04); sleep 10;
>   i2c.write (motor); sleep 10;
>   i2c.write (direct); sleep 10;
>   i2c.write (0); sleep 10;
>   i2c.stop();
>
>   sleep 100;
>  
> }
>

>
>
> GruÃ? hako
>
>
>
> > Hallo zusammen,
> > ich habe mir den RN-Motor (Version I2C) von robotikhardware gekauft um damit 2 Schrittmotoren
> > anzusteuern. Problem ist, dass das Ding bei mir nicht läuft und die vom Service kennen sich mit der
> >  CC2 nicht aus... vermuten aber einen Programmierfehler.
> > Das Board verlangt immer 5 Bytes als Befehlsfolge. Das im Manual angegebene Beispiel ist leider in
> >  Bascom und sieht so aus:
> >
> > Dim I2cdaten(6) As Byte
> > I2cdaten(1) = 10                       'Kennung muss bei RN-Motor immer 10 sein
> > I2cdaten(2) = 1                         ' Befehlscode
> > I2cdaten(3) = 241                     '1 Parameter
> > I2csend &H56, I2cdaten(1),5     'Befehl wird gesendet
> >
> > dadurch wird dann z.B. der maximal zulässige Motorstrom gesetzt.
> > Mein CC2 Programm sieht wie folgt aus:
> >
> > i2c.start(86);         //Hex56=Dec86
> > i2c.write(10);         //Byte 1  Kennung
> > i2c.write(10);        //Byte 2   Befehlscode_Motorstrom setzen
> > i2c.write(0);          //Byte 3  Linker Motor
> > i2c.write(100);      //Byte 4   1 Ampere
> > i2c.write(0);         //Byte 5    Ungenutzt
> > i2c.stop();
> >
> > Ich würde mich wirklich wahnsinnig freuen, wenn ich Feedback bekäme (auch wenn Ihr denkt, dass
> > das Beispiel richtig aussieht)
> >
> > Epp
> >


    Antwort schreiben


Antworten:

Re: I2C Befehlsfolge (von Harald Kotte - 29.01.2005 10:43)