Hallo Leute, Ich würde gerne am Cortex M3 den Interruptkanal nutzen um kleine datenpackete hin und her zuschicken. Also Paralell zu dem eigentlichen Datenkanal. Ist sowas prinzipiell möglich? und Wenn ja, kennt ihr vieleicht Beispiele oder Vorschläge wie sowas gemacht werden könnte? danke im Voraus MFG
Was machst du überhaupt und was ist ein Interruptkanal? Sowas wie ein Lokusabfluss?
Es gibt doch soweit ich weis einen extra kanal für interruptroutine. Diesen will ich eben nicht für Interrupt nutzen sondern für I/O-Datentransfer halt.
Meinst Du vielleicht während des Debug-Modus die ITM-Kanäle oder ähnliches ? Anhand Deiner Beschreibung werd' ich nicht schlau, sorry.
Jetzt weis ich wiederum nicht was mit ITM-Kanal gemeint ist. Sorry ich bin eigentlich auchn Anfänger. Also im Auftrag der Firma soll ein C-Programm mit µVision geschrieben werden, das aus gründern der effizienz und Geschwindigkeit die Datentpackete zwischen PC und Controller über Intrruptkanal, also da wo normalerweise die Interruptbefehle geschickt werden versendet. So oder so lautet jedenfalls die Aufgabe.
Wird schwierig, dir Tipps zu gegen, wenn du weder die Fragestellung noch die Arbeitsweise von Controllern und Interrupts verstanden hast, und auch die Fragestellung nicht im Original hier reinstellst, sondern nur das was du da reininterpretierst.
K.P.M schrieb: > Datentpackete zwischen PC und Controller über Intrruptkanal Ich verstehe das so, dass einfach die Interrupts des UART USB Ethernet benutzt werden sollen. Evtl. noch über DMA!?
A. K. schrieb: > Wird schwierig, dir Tipps zu gegen, wenn du weder die Fragestellung noch > die Arbeitsweise von Controllern und Interrupts verstanden hast, und > auch die Fragestellung nicht im Original hier reinstellst, sondern nur > das was du da reininterpretierst. Indeed. K.P.M schrieb: > Also im Auftrag der Firma soll ein > C-Programm mit µVision geschrieben werden, das aus gründern der > effizienz und Geschwindigkeit die Datentpackete zwischen PC und > Controller über Intrruptkanal, also da wo normalerweise die > Interruptbefehle geschickt werden versendet. So oder so lautet > jedenfalls die Aufgabe. Und was hast du dann damit zu tun? Hast du da etwa im Vorbeigehen was an einer offenstehenden Tür aufgeschnappt? Bitte sag, daß es so oder so ähnlich war. Und mach um Gottes willen nicht noch den Fehler, den Namen der Firma hier zu nennen. Das wäre ein Kündigungsgrund aus dem Lehrbuch, Kapitel Kundenabschreckung, mit deinem Bild daneben. Gemeint sein wird wohl DMA.
Wegen "[...]Datentpackete zwischen PC und Controller über Intrruptkanal[...]" könnten auch USB Interrupt Transfers gemeint sein. Ist aber auch nur fischen im Trüben der Fragestellung.
Ok, sorry für die Verwirrung, Ich versuche das Problem besser zu formulieren. Der @Martin hats glaube ich richtig erfasst. Also es soll so ablaufen: Ich schliesse mein Board per USB am PC und das Board wird als HID erkannt. Nun will ich per Interrupt-Betriebsart (Es gibt ja bei USB, 4 solche Betriebsarten. sehe Endpoint Decriptor) kleine Datenmengan versenden. Theoretisch wie bei einer USB-Tatatur. Von Firma Keil gibt es ein Beispielprogramm(USBHID), die sich normalerweise im Ordner C:\Keil\ARM\Boards\Keil\MCB1700 befindet (wenn man MDK runter geladen und installiert hat)an dem orientiere ich mich. Aber bis jetzt habe ich es nicht geschafft heraus zu finden was ich an dem Programm verändern soll damit ich daten z.B Strings per Interupt versenden kann. Danke schon mal für eure Coments.
Und was hast Du herausgefunden, als Du nach "USB interrupt endpoint" gegoogelt hast? Bitte Deine Erkenntnisse hier präsentieren. ZiZi.
A. R schrieb: > Ok, sorry für die Verwirrung, Ich versuche das Problem besser zu > formulieren. > Der @Martin hats glaube ich richtig erfasst. Also es soll so ablaufen: > Ich schliesse mein Board per USB am PC und das Board wird als HID > erkannt. Nun will ich per Interrupt-Betriebsart (Es gibt ja bei USB, 4 > solche Betriebsarten. sehe Endpoint Decriptor) kleine Datenmengan > versenden. Theoretisch wie bei einer USB-Tatatur. Von Firma Keil gibt es > ein Beispielprogramm(USBHID), die sich normalerweise im Ordner > C:\Keil\ARM\Boards\Keil\MCB1700 befindet (wenn man MDK runter geladen > und installiert hat)an dem orientiere ich mich. Aber bis jetzt habe ich > es nicht geschafft heraus zu finden was ich an dem Programm verändern > soll damit ich daten z.B Strings per Interupt versenden kann. > > Danke schon mal für eure Coments. Bevor du zu laufen probierst, solltest du es erstmal mit Krabbeln versuchen. Mir deucht, du hast das Konzept "Interrupt" nicht wirklich verstanden.
Frank Bär schrieb: > hast das Konzept "Interrupt" nicht wirklich > verstanden. Den Vorwurf wird man aber wohl auch an die USB-Spezifizierer richten müssen... ZiZi.
Sorry, dass ich das so hart formulieren muss, aber: Fang erst mal mit einer blinkenden LED an. USB ist noch eine Nummer zu groß für dich. Und ein Cortex vielleicht auch. Das ist als wenn du gestern noch mit Stützrädern Fahrrad gefahren bist und heute schon in einen Porsche steigst. Das ist nicht schlimm. Wir haben auch mal klein angefangen.
ZiZi schrieb: > Und was hast Du herausgefunden, als Du nach > "USB interrupt endpoint" gegoogelt hast? Bitte Deine Erkenntnisse hier > präsentieren. Ich habe unteranderem diesen Link gelesen: http://www.sprut.de/electronic/interfaces/usb/usb.htm#endpunkt Ich muss zugeben dass ich das Problem am Anfang nicht detailliert genug beschrieben hab und nicht auf USB eingegangen bin. Ich habs einfach so in den Raum geworfen und habe gehoft einen Anhaltspunkt finden zu können. Aber was ist bei der zweite Beschreibung unlogisch? Was genau habe ich eure Meinung nach nicht richtig verstanden? Heißt das, dass es so garnicht funktioneren kann? wenn nicht, warum? danke und 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.