-
        

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 25

Thema: Highspeed Komunikation zwischen PC und externem IO-Adapter

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    11.03.2005
    Ort
    Kissing bei Augsburg
    Alter
    27
    Beiträge
    443

    Highspeed Komunikation zwischen PC und externem IO-Adapter

    Anzeige

    Hallo,

    für ein neues Projekt brauch ich jetzt eine Möglichkeit 32 I/O Pins möglichst schnell zu schalten.

    Die Schaltfrequenz sollte 1 Mhz betragen. Für jeden I/O Pin. Nach Möglichkeit sollten die I/O Pins das Signal parallel und nicht ein pseudo parallel sein. Also wirklich gleichzeitig schalten. Und nicht irgendwie nacheinander, wie bei schieberegistern.

    Da ich hierfür warscheinlich USB nehmen muss, da der seriall Port das auf keine Fall und der LPT warscheinlich nur sehr beding packen würde, würde sich dort ein µC anbeiten. Nur ist die Frage welcher? Ein AtMegaxxx geht warscheinlich auch nicht, da er nie und nimmer die Frequenzen mitmacht. Er muss ja das USB-Protokoll mitmachen, und gleichzeitig die 32 I/O Pins schalten.

    Das ganze soll in einem VB-Programm ausgewertet werden können.
    Das Programm schickt z.B. 4 1Byte Packete an den Controller, der dann das Signal ausgibt.

    Am genialsten wäre es, wenn man den Controller auch noch mit ein paar kleinen Rotinen versehen könnte. Nach dem Motto: Wenn Eingang 1 1ms an war, dann Schalte sofort Ausgang 3 aus. Oder wenn vom PC ein 5tes 1Byte Packet kommt, dann Schalte Ausgang 5, 6, 10 und 32 an/aus. Aber das wäre nur wunderbar, und ist kein muss.

    Insgesammt werden 32 I/Os benötigt, wie die genau verteilt sind weiß ich noch nicht, kommt halt auf den Speed an

    Ich hoffe ihr könnt mir bei der Suche / Realisierung helfen.

    Ach ja, Programmieren kann ich eigentlich nur in Bascom, anderes, wie C, hatte ich mal versucht zu lernen, blieb aber daran stecken, das es neu ist

    gruß
    Michael
    Besuch mal meine HP: www.highcurrent.de

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.378
    analysiere nochmal deine eigenen ansprüche, erwartest du, dass du echte und perfekte 1Mhz allein mit dem PC versenden kannst ? der arbeitet selbst nichtmal in echtzeit die programme ab, also wird allein das schon schwer die kommunikation über USB ist da auch nur ein trugschluss, ein FTDI ist nichts weiter als nen virtueller COM port und der geht am PC genausoschnell wie ein echter ^^

    erklär nochmal genau was du willst und welche bedingunen du vorliegen hast, dann kann man dir vielleicht mit einem anderen lösungsweg helfen

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Kandel
    Alter
    29
    Beiträge
    1.220
    Naja, theoretisch könntest du über Schieberegister und ein gemeinsam angesteuertes Latch-Signal tatsächlich 32 simultan schaltende Ausgänge bekommen - direkt mit dem AVR schalten ist nicht drinne, das gibt bestenfalls 8 Pins (ein Port) je Taktzyklus (+Wert Laden etc.) her.

    mfG
    Markus

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    30.09.2006
    Beiträge
    734
    ftdi kann 1mbit.
    Schau dir deine anforderungen nochmal genau an. Vielleicht sagst du auch, wofür du das brauchst?

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.02.2009
    Beiträge
    195
    Windows kann aber kein 1mbit

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.378
    und er brauch 4mbit bei 32 I/Os 4byte pro schaltvorgang

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Kandel
    Alter
    29
    Beiträge
    1.220
    Ceos, nochmal zurück ins Bett und mit dem richtigen Bein aufstehen
    4 Byte / Schaltvorgang machen 32 Bit / Schaltvorgang und bei einer Frequenz von 1 Mhz sind dass 4 MByte/s bzw. 32 MBit/s
    Wohlgemerkt, in SI-Einheiten, nicht in MiBytes

    mfG
    Markus

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.378
    40 Mbit sogar wenn man von UART/COM protokoll ausgeht hast ja recht ^^

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    11.03.2005
    Ort
    Kissing bei Augsburg
    Alter
    27
    Beiträge
    443
    Hallo,

    danke schon mal für die Antworten.

    Es geht dabei um eine Modellbahnsteuerung.

    An die 32 I/O Leitungen werden Schieberegister angschlossen. Ein paar für input ein paar für Output.
    Da es auf der Modellbahn um bewegte abläufe geht, ist eine schnelle Reaktion auf best. Ereignisse erfoderlich. Wenn man sich vorstellt, das ein Zug mit 0,5m/s fährt. Naja, das ist Vorbildgeschwindigkeit, wenn jetzt die Kinder meiner Schwester kommen, dann erhöt sich das ganze schon mal auf 1-2m/s.
    Gehen wir mal auf 2m/s aus. Die kürzeste Meldestelle ist 10cm lang. Das bedeutet, das der Zug/Lok dort gerade mal 1/20s darauf ist. Sprich ich müsste alle 50ms messen. Um auf Nummer sicher zu gehen alle 25ms. So da es aber nicht nur eine Melde stelle gibt, sondern auf meiner Anlage bereits 80, müssen alle 0,3ms die Kontakte abgefragt werden. Das wären immerhin 3000Hz. Da aber das ganze bei mir nur eine Probestrecke ist, und später mal auf die Anlage von meinem Vater übertragen werden soll, und er allein schon im Schattenbahnhof mal eben diese 80 Kontakte verbrät, die ganze Anlage wird dann so ca. 4000 Kontakte haben. Das wäre das 50 fache. Also auch die 50fache Frequenz. Das macht dann 150000Hz. Hee? Ich hatte dort doch was von 750kHz ausgerechnet und nicht 150kHz.

    Es gibt aber dann auch noch die Ausgabe, dort werden, kann man fast sagen alle 4 Besetzmelder ein neuer Block. Pro Block werden 8bit für die Fahrspannug und 1bit für die Fahrrichtung benötigt. Für meine Anlage also 20 an der Zahl.
    Das würde dann 20x(8bit+1bit)=180bit machen. Diese wieder alle 25ms. Macht dann 7200bit/s. Also 7,2kHz. Für meinen Dad wieder das 50fache. Macht dann 360kHz.
    Da waren es 1,08Mhz.

    Ich muss mich da wohl verrechnet haben.

    Das ganze ist auch noch 1Leitung. Ich hatte es für 5 Leitungen berechnet. Muss mir wohl ein Fehler unterlaufen sein. Sorry. Brauch dann keine 1Mhz sondern ein bisschen weniger.

    Trotzdem bräuchte ich eure Hilfe, da mein PC keine LPT Port und keine COM Port mehr hat.

    mfg
    Michael
    Besuch mal meine HP: www.highcurrent.de

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    30.12.2008
    Beiträge
    1.418
    com1 kanst du dir über adapter machen. ich würd aber nicht die ganze bahn anlage über ein µC laufen lassen sondern bissel verteilen

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •