PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Arduino UNO, I2C mit einem TMC222



wolly
11.07.2011, 21:01
Hallo zusammen,

hab mir gedacht jetzt probiere ich es halt mal, ich bin praktisch neu in diesem Geschäft und meine Kenntnisse sind eher von geringer Grundkenntniss.
Meinen ersten Roboter habe ich vor ca. 10 Jahren gebaut und ihn mit einer c-control gesteuert. Ich habe mich dann erstmal eine zeitlang mit Maschinenbau beschäftigt.
Hier mal die Seite http://www.dl5mhy.homepage.t-online.de/maschinenseite.xhtml

Was habe ich vor, der Titel sagt es, ich habe einen Arduino Uno und eine selbstgebaute Leiterplatte für einen TMC222. Die LP mit dem TMC222 habe ich erfolgreich an einer C-Control zum laufen gebracht, mit den Beispielcodes. Steuern möchte ich zum Schluß ein Antennenanpaßgerät, bei dem 5 kleine Schrittmotoren unterschiedliche Positionen fahren sollen.

Am Arduino konnte ich bisher nur unter Mühen das LCD Display von dfrobot mit I2C zum laufen bringen.

Alle Versuche den TMC222 am Arduino zum laufen zu bringen scheiterten kläglich und zwar schon bei den Bibliotheken.

schreibe ich z.B. " # include wire.h " wird wire.h rot heißt wohl Bibliothek erkannt, mache ich das gleiche mit #include TMC222_AVR.h geht gar nix.
Was immer ich hier nicht verstehe " falscher Bootloader ?, falsche Bibliothek, ist die von Trinamic " oder was immer, der Frust ist groß, weil halt gar nix geht.

Was hoffe ich, das das jemand hier im Forum liest und mir ein wenig unter die Arme greift.
Eventuell mit dem richtigen Link für die TMC222 Bibliothek, mit den ersten paar Zeilen des Quellcodes ev bis zu der stelle wo der tmc222 mit getFullstatus1 aktiviert wird, so das ich ihn halt sehe, von dort aus komme ich sicherlich selber weiter, steht ja wirklich viel im Handbuch. Ich habe hier im Forum schon viel über den TMC222 gelesen, scheint echt nicht einfach zu sein, nun habe ich es mir allerdings in den Kopf gesetzt und darum würde ich es auch gerne umsetzten.


Grüße Wolfgang

shedepe
12.07.2011, 22:15
Ich geh mal davon aus dass die TMC22_AVR.h keine Standardbibliothek ist,
dann musst du natürlich das Headerfile und das dazugehörige Codefile noch zum Makefile hinzufügen (oder wenn du eine Entwicklungsumgebung nutzt dort hinzufügen)
Du hast leider noch nicht geschrieben mit welcher Entwicklungsumgebung zu deine Programme entwickelst, sonst wäre eine gezieltere Hilfe möglich

wolly
13.07.2011, 06:38
Hallo,

danke erstmal für die Antwort, nein es ist keine Standartbibliothek.

Als Entwicklungsumgebung verwende ich folgendes.
Ich habe zwei Arduino uno gekauft, und von der Arduino Seite die Software heruntergeladen, das wars und mehr habe ich derzeit nicht.
Ich habe beide am Rechner zum laufen gebracht war auch gar nicht schwer und mit den Beispielen gespielt, einen Sack voll Bücher besorgt und bin mich dort am einlesen.

Es sieht allerdings so aus als wenn ich die Basics mit den Bibliotheken und der verschiedenen Bootloader nicht verstehe.

Das es so Sachen gibt wie AVR Studio und so weiter weis ich erst seit gestern. ( Gibt es noch weniger als blutiger Anfänger ).
Ich habe die Seite von Peter Fleury gefunden und studiert, da hat es dann schon ein wenig klick gemacht.

Es gibt auch verschiedene Bibliotheken, wobei die oben beschriebene allerdings alle Befehle enthält die den TMC222 steuern.

Gibt es den die Möglichkeit, die Bibliothek so zu verändern, das die dann in der Arduino Software passt?


Gruß Wolfgang

shedepe
13.07.2011, 08:34
So wie du das Beschreibst, hört sich das an als ob du noch gar keine Library dafür gefunden hast. Dann wirst du das vermutlich selber proggen müssen mit hilfe des Datenblatts des TMC222. Mit der i2c Lib von Peterfleury kannst du dir allerdings die Verwendung des I2C Buses leichter machen.

Davor würde ich dir allerdings ein Tutorial der Programmiersprache C empfehlen (Der Arduino wird in C programmiert denke ich mal?!)
Auf www.mikrocontroller.net und auch hier im Wiki von Roboternetz gibts einige Tutorials die speziell auf C für mCs zugeschnitten sind

wolly
14.07.2011, 19:13
Hallo,

doch die Librarys habe ich allerdings lassen sich diese nicht in die Arduino Umgebung einbinden. Ich habe mir mal AVR Studio und auch Eclipse angeschaut, das ist dann wohl eine Nummer zu groß, vorerst mal. Ich folge jetzt erstmal deinem Rat und gehe das ganze etwas langsamer an, lese mich ein und schau mal ob ich ev. eine eigene Bibliothek erstellen kann, oder eine bestehende für den Arduino umschreiben kann.
Der Antrieb mit dem tmc222 läuft ja an der c-control und für meine Bastelversuche tut es das vorerst auch. Im laufe der Zeit ergibt sich dann schon mal die Gelegenheit, Möglichkeit das am Arduino auch zu testen.
Ich werde mein Anliegen auch mal im Arduino Forum posten, weil das Problem haben andere bestimmt in irgend einer anderen Form auch und dann wird man sehen.

Ich dank dir recht herzlich für deine Stütze, ich werde wenn sich was ergibt hier dann weiterschreiben.

Gruß Wolfgang

shedepe
14.07.2011, 19:26
Ich weiß nicht wie gut du Englisch kannst, aber das Einbinden einer Bibliothek sollte auch mit der IDE des Arduino gehen:
http://www.arduino.cc/en/Guide/Environment#libraries