Signale + USB



  • Ich würde dafür gerne Windows XP nutzen.



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Was meinst du jetzt mit Echtzeitfähigkeit?
    Oder meinst du jetzt Delay, wie lange Windows dazu braucht um an die USB-S Daten auszugeben? Ich weiß nur, dass man durch das Kabel schon alleine nen Jitter im µSek Bereich hat



  • was usb betrifft: es ist nicht möglich usb einfach mal so zum generieren eines rechteckes oder sonst was zu benutzten. usb nummeriert beim anschluss das entsprechende gerät, d.h. das endgerät gibt an was es will. in deinem fall müsstest du halt sagen: ich brauch die und die bandbreite, es darf nur x ms delay auftretten etc. das ganze geht noch relativ einfach wenn dein endgerät hid - konform ist. wenn nicht musst du nen entsprechenden treiber einschieben. das ddk brauchst du auf jeden fall; wo's das allerdings ohne msdn - abo gibt kA.

    echtzeit ist nur bedingt möglich da windows - systeme 10ms auflösen. für alles was schneller bearbeitet werden muss kenne ich jetzt keine lösung.



  • Psycho schrieb:

    was usb betrifft: es ist nicht möglich usb einfach mal so zum generieren eines rechteckes oder sonst was zu benutzten. usb nummeriert beim anschluss das entsprechende gerät, d.h. das endgerät gibt an was es will. in deinem fall müsstest du halt sagen: ich brauch die und die bandbreite, es darf nur x ms delay auftretten etc. das ganze geht noch relativ einfach wenn dein endgerät hid - konform ist. wenn nicht musst du nen entsprechenden treiber einschieben. das ddk brauchst du auf jeden fall; wo's das allerdings ohne msdn - abo gibt kA.

    Wenn ich Dich richtig verstanden habe, kann ich nicht mein Endgerät anschliessen und der Software sagen "generiere das Siganal" und dieses Signal kann ich dann am Endgerät abnehmen. Ich muss also vorher dem Endgerät sagen, dass es sich am USB anmelden muss?

    Psycho schrieb:

    echtzeit ist nur bedingt möglich da windows - systeme 10ms auflösen. für alles was schneller bearbeitet werden muss kenne ich jetzt keine lösung.

    Ok, das wäre nicht dramatisch!



  • Psycho schrieb:

    echtzeit ist nur bedingt möglich da windows - systeme 10ms auflösen. für alles was schneller bearbeitet werden muss kenne ich jetzt keine lösung.

    Windows ist de-facto kein Echtzeitbetriebssystem... das hat aber gar nichts mit der Auflösung von 10 ms zu tun... sondern die Echtzeitfähigkeit definiert sich durch "determinismus". Der kann sich auch im Sekunden Bereich abspielen! Windows kann es aber nicht garantieren. Das ist der ganze knackpunkt. Zu 99% der Fälle mag das ja mit 10-15 ms og sein, aber in 1% geht es eben drüber und somit ist es nicht Echtzeitfähig (man spricht hier teilweise auch von "weicher" Echtzeit).



  • das mit der echtzeit ist mir schon klar... das problem ist aber das manche leute unter echtzeit was anderes verstehen. aber schön das du es klar gestellt hast.

    nochmal zu usb:
    das anmelden ist so ne sache. grundsätzlich unterscheidet man die geräte nach typ. ein endgerät hat meistens einen anderen usb - chip als der pc eingebaut. das hängt z.b. schon mal am preis für einen "root - chip". das endgerät wird vom root als full - speed oder low - speed - device erkannt (das passiert schon auf hw - ebene). danach führt der root eine initialisierung durch auf die das endgerät entsprechend anworten !muss!. die verbindung wird enstprechend aufgebaut und danach können daten ausgetauscht werden. wie dies aussehen hängt dann von deiner app ab (da gibts noch keinen standard).



  • hi,
    also es gibt da was: InTime, ist ein Echtzeitbetriebsystem, das läuft unter windows oder auch ohne windows, braucht selber nur wenige mb! InTime wurde von Intel entwickelt -> läuft nur auf Intel Prozessoren!
    mit InTime kannst du direkt auf die Hardware zugreifen:
    und in den samples gibt es ein:
    * usbkbd.c: INtime USB Keyboard driver example to illustrate use of API.
    * Simple example which dumps the returns from the keyboard device.

    wäre vielleicht interessant...
    einen treiber unter windows zu entwickeln ist nicht ganz easy....vor allem das debuggen! unter InTime geht das recht einfach!

    übrigens da hätt ich so ein sample das dir so einen schönen rechteck ausgibt, aber ist für die serielle schnittstelle...

    cu





  • noch was gutes:
    http://www.b-kainka.de/usb.htm

    n8


Anmelden zum Antworten