Hallo, Ich bin gerade dabei einen rotary encoder auf der Entwicklungsboard Texas Instruments EK-TM4C1294XL zu programmieren. Als Entwicklungsumgebung wird CCS7 vom TI eingesetzt. Meine Schwierigkeiten liegen darin, dieses Modul so richtig über SPI anzusprechen bzw. zu steuern! Hat wer Erfahrungen mit diesen Tools gesammelt? Bin für alle Antworten rechtherzig dankbar! LG
:
Bearbeitet durch User
Hallo, Versuch's doch erstmal mit ein paar Beispielprojekten für deine Plattform; bei TI (im sogenannten Resource Explorer) gibt es da ganz viele von: http://dev.ti.com/tirex/#/?link=Software%2FTM4C%20ARM%20Cortex-M4F%20MCU Wenn dir die vom EK-TMM4C129... nicht genügen, kannst du auch die vom DK-TM4C129X nehmen, ist ja derselbe Prozessor. Und wenn du spezifische Probleme hast, dann kannst du gerne nochmal nachfragen, aber dann, indem du auch dein Problem erklärst. P.S.: damit ich aber auch hier deine Frage beantworte und man mir nicht nachsagt, dass ich daneben geantwortet habe: Ja, ich habe Erfahrungen mit den Tools gesammelt.
Im CCS gibt es eine Wissenstonne an Informationen (weiß nicht mehr genau wie diese Beispiel und Hilfssektion heißt), die schon genau auf das Evalboard vorkonfiguriert sind. Das ist echt sehr einfach. Dazu bietet die Community von TI in deren Foren auch eine gute Basis unzufangen. Welchen Wissensstand bringst du denn mit?
Zunächst vielen vielen Dank für euer Antworten! Wie ich auch in meinem ersten Beitrag beschrieben habe muss ich auf das TI Launchpad ein rotary encoder programmieren. der Encoder ist von der fa. mikroe.com und die Information wie man den Encoder auf das Board mittels Software mountet ist leider sehr spärlich! Merkwürdigerweise für Arduino oder Raspberry Pi gibt es eine fülle an Infos. Laut der Informationen von Hersteller [mikroe] kann der Encoder über SPI Busprotokoll angesprochen werden. Meine Schwierigkeit ist, dass ich immer noch nicht gefunden habe wie ich die Signalen vom Encoder-Rotate-Button auslesen kann. Den dementsprechend muss ich dann auch die Dioden einschalten. Mit einem Wort welche GPIO's ich wie (Input/Output) konfigurieren muss um einen reibungslosen SPI Kommunikation zwischen Board und Encoder gewähren kann. Meine Erfahrungen sind mehr als ein guter Anfänger was µC angeht. Ich habe ein Termin bis ende Februar und habe nicht so viel Zeit! @mcload Alle die Infos kenne ich schon. Die sind Teilweise auch im CCS eingeführt. Achso für einen Erfahrenen ist das nicht mehr als eine oder zwei Stunden arbeit.
Woran hapert es denn jetzt nun? Hardware (die Beschaltung zwischen Launchpad und Rotary Encoder) oder Software (SPI Funktionen)? Wäre vielleicht auch interessant die genaue Referenz (oder einen Link zum Produkt) vom Rotary Encoder mitzugeben, ich weiß nicht wieviele es bei Mikroe davon gibt.
Hallo, in mom. happert es daran dass ich nicht weiß wie man den rotary ausließt. der link zur rotary: https://www.mikroe.com/rotary-g-click ich habe die ganze zeit versucht den über SPI auszulesen aber dann bekam ich einen Tip den über QEI auszuleßen !!! Danke für deine Unterstützung !
Tja, mikroes proprietaeres Zeug. Lad dir die Testversion von deren (ansonsten schrecklichen) ARM-Compiler und die Lib fuer den Encoder dazu. Dann kannst du wenigstens im Compilat mal schauen wie es geht. P.S.: Nimm dir mal ne Zange und reiss das 'ß' aus deiner Tastatatur. Das liest ja scheußlich.
Da fällt mir noch etwas ein. Falls du für Arduino ja schon die Bibliotheken gefunden hast, kannst du diese ganz bestimmt einfach in Energia einbauen. Energia ist sowas ähnliches wie Arduino, nur halt für die TI Chips und das EK-TM4C129EXL wird da unterstützt.
Mit Energia kenne ich mich überhaut nicht aus und um das jetzt zu lernen kostet mir viel Zeit, die ich leider nicht habe. Laut einigen Kommentaren die ich im Internet gelesen habe, kommuniziert der rotary über QEI und der Dioden Ring über SPI. Der Button von Rotary kommuniziert über irgendwelchen Interrupts vermute ich ! Ein bischen Code wäre für mich sicherlich viel viel Hilfsreicher !!! Danke!
maxm_45 schrieb: > Ein bischen Code wäre für mich sicherlich viel viel Hilfsreicher !!! Die Schaltung und SPI Kommunikation funktioniert grundsätzlich, und du kannst nur die empfangenen Daten deuten, oder woran scheitert es genau? Die Leute haben besseres zutun als alles selbst zu suchen und einem aus der Nase zu ziehen. Darum beschreibe das Problem genauer sowie was du unternommen hast es zu lösen, und poste Libs für Arduino und Raspberry hier. Evtl sieht man da wie Kommunikation und der StateFlow aussehen könnte.
Hallo an alle, zunächst Danke für euren Beitragen ! @Entwiggler Der Rotary besteht aus zwei Teilen 1. den Encoder und 2. den Dioden Ring. Der Dioden Ring lässt sich über SPI steuern, während die Encoder Signalen [phA0 und phB0] kann man nur über QEI auslesen. Mittlerweile kann ich QEI initialisieren und debugen können! Die Frage ist wo und wie die Signalen auszulesen sind? welche Registern enthalten die Sigs? Danke.
Max M. schrieb: > der Encoder ist von der fa. mikroe.com und die Information wie man den > Encoder auf das Board mittels Software mountet "mounted"? Gewöhn dir mal dieses Bullshit-Gerede ab. Was soll "mounten" in diesem Zusammenhang bedeuten? Aus deiner ganzen Beschreibung kann man nur lesen, dass "irgendwas" nicht geht. Eine verständliche Problembeschreibung sieht anders aus. Wirklich, was ist das Problem? Das "Manual" enthält die komplette interne Schaltung https://download.mikroe.com/documents/add-on-boards/click/rotary-g/rotary-g-click-manual-v100.pdf Das Ding besteht nur aus zwei TTL Schieberegistern ('595, generischer geht es gar nicht), Pegel-Konvertern, Encoder und Hühnerfutter. Alle Komponenten sind handelsüblich und Datenblätter erhältlich. Sollte was in der Schaltung unklar sein kann man die Platine mit einem Multimeter durchklingeln. Genau so auf der Board-Seite, alles ausreichend, wenn auch nicht perfekt, dokumentiert. Du musst dich halt mal hinsetzen und alle Informationen zusammensetzen. Ist das vielleicht dein Problem? Keine Lust die einzelnen Informationen zusammenzusetzen? Keine Lust die Lösung zu planen?
@Jack, bevor du hier was schreibst bitte genau lesen was ich vorhin geschrieben habe! Der Teil besteht aus zwei 595-er TTL und zwei 74LVC1T45 (Encoder) 595- er TTL -> SPI 74LVC1T45 (Encoder) -> QEI wurde mir gesagt: bitte um Bestätigung !
maxm_45 schrieb: > Laut einigen Kommentaren die ich im Internet gelesen habe, kommuniziert > der rotary über QEI und der Dioden Ring über SPI. > > Der Button von Rotary kommuniziert über irgendwelchen Interrupts vermute > ich ! rotary nix kommunißiert! Das ist ein simpler Quadraturencoder (obendrein sogar mechanisch): https://www.mikrocontroller.net/articles/Drehgeber
Auf Seite 1749 vom Datasheet des TM4C1294NCPDT hast du das Diagramm des QEI und wenn ich das so sehe, würde ich mir sagen, dass dich das Register QEIPOS da interessiert. Ich würde dir aber anraten das ganze Kapitel zu lesen und zu verstehen. Die anderen Register für dieses Modul müssen nämlich auch richtig gesetzt werden (wie z.B. QEIMAXPOS und QEICTL). Falls du nicht den Hardware QEI benutzen möchtest, kannst du das alles auch per Bitbanging machen, aber das wäre natürlich schade...
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.