Den IO Warrior 40 mit 8 Digitalen Eingängen via .NET
Moderator: Guido Körber
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
Den IO Warrior 40 mit 8 Digitalen Eingängen via .NET
Hallo,
ich habe mich leider noch nicht viel mit dem IO-Warrior befasen können, hoffe aber mir kann hier jemand helfen.
Und zwar habe ich einen IO-Warrior 40 mit 8 Didigalten Eingängen, 8 Ausgängen, USB-Anschluss.
Diesen möchte ich jetzt mit .NET (c#) ansprechen, habe aber keine große Ahnung davon. Es scheitert schon bei dem Versuch die Eingänge abzufragen, weil dazu der "schieber" erst richtig getimed werden muss.
Kann mir da jemand helfen?
Oder gibt es bereits jemanden der sich damit beschäftigt hat, und eine .NET DLL oder Klasse hat?
MFG
Don
ich habe mich leider noch nicht viel mit dem IO-Warrior befasen können, hoffe aber mir kann hier jemand helfen.
Und zwar habe ich einen IO-Warrior 40 mit 8 Didigalten Eingängen, 8 Ausgängen, USB-Anschluss.
Diesen möchte ich jetzt mit .NET (c#) ansprechen, habe aber keine große Ahnung davon. Es scheitert schon bei dem Versuch die Eingänge abzufragen, weil dazu der "schieber" erst richtig getimed werden muss.
Kann mir da jemand helfen?
Oder gibt es bereits jemanden der sich damit beschäftigt hat, und eine .NET DLL oder Klasse hat?
MFG
Don
c#- anbindung unter
http://www.schnedl.at/iowarrior/
Dieser Link steht auch auf der Codemercs-Homepage im Bereich "Iowarrior" -> "Iowarrior-Links"
Eberhard
http://www.schnedl.at/iowarrior/
Dieser Link steht auch auf der Codemercs-Homepage im Bereich "Iowarrior" -> "Iowarrior-Links"
Eberhard
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
-
- Site Admin
- Posts: 2876
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
-
- Site Admin
- Posts: 2876
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
Sorry aber ich habe nicht wirklich die ahnung davon. Mit dem IOwarrior mit 4 eingängen bekomm ich ein ByteArray zurück das eine länge von 5 hat. also 5 spalten in dem array.
Darin habe ich dann in der spalte 3 den byte-code für die 4 eingänge. also 255 - 1 (Eingang 1) - 2 (Eingang 2) - 4 (Eingang 3) - 8 (Eingang 4).
Wenn ich jetzt den IO-warrior anschließe mit 8 Eingängen funktioniert das Prinzip nicht mehr. Ehrlich gesagt tut sich da quasi überhaupt nichts...
Was ist da jetzt mein Problem?
Darin habe ich dann in der spalte 3 den byte-code für die 4 eingänge. also 255 - 1 (Eingang 1) - 2 (Eingang 2) - 4 (Eingang 3) - 8 (Eingang 4).
Wenn ich jetzt den IO-warrior anschließe mit 8 Eingängen funktioniert das Prinzip nicht mehr. Ehrlich gesagt tut sich da quasi überhaupt nichts...
Was ist da jetzt mein Problem?
-
- Site Admin
- Posts: 2876
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
Ich verwende den IOWarrior 40.
Wir haben in der Schule 2 Geräte. Eines mit LCD und 4 Ein- und ausgängen.
Ein anderes hat kein LCD und 8 ein- und ausgänge sowie ein Analog-Wandler.
Wie ich diese 4 Eingänge abfragen kann ist mir klar, aber bei dem IOWariror 40 mit 8 eingängen harpert es.
meine Frage ist jetzt WARUM?
Oder besser gesagt woe genau arbeitet das gerät. Vielleicht kann ich daraus rückschlüsse ziehen. Denn unsere Dokumentation ist etwas unzureichend.
Programmiersprache ist c# und mit Spalten sind die Ebenen eines Arrays gemeint.
byte[] Hans = new byte[5] < Dieses Array hat 5 Spalten
Wir haben in der Schule 2 Geräte. Eines mit LCD und 4 Ein- und ausgängen.
Ein anderes hat kein LCD und 8 ein- und ausgänge sowie ein Analog-Wandler.
Wie ich diese 4 Eingänge abfragen kann ist mir klar, aber bei dem IOWariror 40 mit 8 eingängen harpert es.
meine Frage ist jetzt WARUM?
Oder besser gesagt woe genau arbeitet das gerät. Vielleicht kann ich daraus rückschlüsse ziehen. Denn unsere Dokumentation ist etwas unzureichend.
Programmiersprache ist c# und mit Spalten sind die Ebenen eines Arrays gemeint.
byte[] Hans = new byte[5] < Dieses Array hat 5 Spalten
-
- Posts: 543
- Joined: Mon Dec 01, 2003 6:09 pm
Bitte mal dem Lehrer sagen das er nicht seine eigene Terminologie einfuehren soll. Ein Array hat Elemente.
Unsere Dokumentation ist durchaus ausreichend, aber erstens in englisch und zweitens fuer den erfahrenen User gedacht.
Das Problem ist das sie natuerlich den IO-Warrior ohne weitere angeschlossene Peripherie beschreibt. Wir wissen ja nicht was alles angeschlossen wird.
Der IO-Warrior 40 hat 32 IO-Pins. Wir koennen von hier aus natuerlich nicht sagen welche bei Ihnen verwendet werden.
Unsere Dokumentation ist durchaus ausreichend, aber erstens in englisch und zweitens fuer den erfahrenen User gedacht.
Das Problem ist das sie natuerlich den IO-Warrior ohne weitere angeschlossene Peripherie beschreibt. Wir wissen ja nicht was alles angeschlossen wird.
Der IO-Warrior 40 hat 32 IO-Pins. Wir koennen von hier aus natuerlich nicht sagen welche bei Ihnen verwendet werden.
-
- Site Admin
- Posts: 2876
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Also dem IO-Warrior ist es völlig egal was man mit den Pins macht, der hat da keine Vorurteile. Es werden immer die Daten für alle 32 Pins gleichzeitig übertragen.
Was da jetzt an Hardware dranhängt kann ich natürlich nicht wissen. Auf jeden Fall ist die Vorgehensweise prinzipiell immer die gleiche, egal wie viele und welche der Pins man abfragt. Im Zweifelsfalle sollte man aber wissen welcher Pin den nun was tut, sonst fragt man möglicherweise den falschen ab.
Was da jetzt an Hardware dranhängt kann ich natürlich nicht wissen. Auf jeden Fall ist die Vorgehensweise prinzipiell immer die gleiche, egal wie viele und welche der Pins man abfragt. Im Zweifelsfalle sollte man aber wissen welcher Pin den nun was tut, sonst fragt man möglicherweise den falschen ab.
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
Ahso, also habe ich 32 IOs von denen dann quasi 8 Ausgänge und 8 Eingänge sind. Und die restlichen 16 werden einfach nicht verwendet...
Stimmt erfahren bin ich mit diesen dingern ehrlich noch nicht, und in englisch erst recht net.
Naja ist diese Theorie richtig? Falls ja, kann ich also in einem Rutsch mit dem Read-Befehl alles auslesen, muss es dann nur richtig auswerten... ?
Stimmt erfahren bin ich mit diesen dingern ehrlich noch nicht, und in englisch erst recht net.
Naja ist diese Theorie richtig? Falls ja, kann ich also in einem Rutsch mit dem Read-Befehl alles auslesen, muss es dann nur richtig auswerten... ?
-
- Site Admin
- Posts: 2876
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Richtig, immer alle 32 Pins auf einmal.
Und es gibt keine Unterscheidung zwischen Eingang und Ausgang, alle Pins sind immer Eingänge, wird eine Null auf einen Pin geschrieben dann aktiviert der seinen Open Drain Treiber.
Was das Englisch betrifft: Dringend dran arbeiten, oder Fachbereich wechseln. Ohne Englisch geht in keinem technischen Beruf mehr was.
Und es gibt keine Unterscheidung zwischen Eingang und Ausgang, alle Pins sind immer Eingänge, wird eine Null auf einen Pin geschrieben dann aktiviert der seinen Open Drain Treiber.
Was das Englisch betrifft: Dringend dran arbeiten, oder Fachbereich wechseln. Ohne Englisch geht in keinem technischen Beruf mehr was.
-
- Posts: 9
- Joined: Thu Apr 06, 2006 10:31 am
Ahso, jetzt geht mir so langsam ein Licht auf:
Also: Der IO Warrior 40 hat 32 IOs.
Davon können x-beliebige eingänge und x-beliebige ausgänge sein. Das heißt wenn ein pin auf 1 steht ist quasi ein ausgang aktiviert und wenn ein pin auf 0 steht ist quasi ein Eingang deaktiviert. oder aktiviert. je nach dem. Es liegt quasi an mir für was ich welchen Pin definiere...
Also: Der IO Warrior 40 hat 32 IOs.
Davon können x-beliebige eingänge und x-beliebige ausgänge sein. Das heißt wenn ein pin auf 1 steht ist quasi ein ausgang aktiviert und wenn ein pin auf 0 steht ist quasi ein Eingang deaktiviert. oder aktiviert. je nach dem. Es liegt quasi an mir für was ich welchen Pin definiere...