Hi.
Es ist unsinnig den Wert zu definieren, wenn dieser nicht bereits in der Headerdatei drin steht. Selbstverständlich kann die ioctl Funktion damit nichts anfangen.
Die TIOCSERSETRS485 Konstanten sind ausschließlich für die CRIS Architektur definiert. Welche Architektur benutzt du?
Gruß
.:Mitglied des 1. offiziellen Sven Uwe Fan-Clubs:.

Zitat von
Johson
Da geb ich dir völlig, eine Funktion die -1 als Fehler zurück gibt macht nicht viel Sinn. ioctl is aber nun eine systemfunktion aus sys/ioctl.h und dort ist der Fehlercode -1 nun mal festgelegt.
Du hast da was missverstanden. Ich sprach über die Konstanten die du selbst festgelegt hast. Es ist unsinnig das zu tun, denn die ioctl Funktion kann damit nichts anfangen.

Zitat von
Johson
Ich habe den Fehler aber mal mit perror() ausgelesen. Und perror() gibt Invalid Argument zurück. Sagt mir also jetzt was? ....Enweder hat die Übergabe in der Funktion nicht geklappt und der Wert ist ungültig.
Letzteres. Wie soll das denn funktionieren? 

Zitat von
Johson
Ich werde berichten.
Welche Architektur verwendest du? Hast du das denn vor CRIS kompiliert? Hast du das entsprechende SDK verwendet? \edit: Diese Angaben solltest du natürlich auch in deiner Supportanfrage einfließen lassen; kurzum: was genau hast du überhaupt gemacht?
Gruß
.:Mitglied des 1. offiziellen Sven Uwe Fan-Clubs:.

Zitat von
Johson
Oh.. so langsam werde ich schlauer... Mit der ioctl-Funktion will ich quasi den RS485 Standard bekannt geben. Denn über die struct aus meinen ersten Thread will - muss - ich die Enable - Leitung steuern. Ich hoffe du kennst den RS485 Standard.

Nö. :-D

Zitat von
Johson
CRIS?
... ist eine Rechnerarchitektur, so wie Intel 386, PowerPC, SPARC etc.

Zitat von
Johson
Das fehlt mir glaubig? Denn unter asm/ioctls.h ist
#define TIOCSERSETRS485 0x5461
#define TIOCSERWRRS485 0x5462
nicht aufgeführt.
Von welcher asm/ioctls.h Datei sprichst du? Die unterscheiden sich je nach Architektur.

Zitat von
Johson
Woher kann ich jetzt CRIS beziehen? Ich dachte, wenn ich GCC komplett installiere, sind alle Header Files vorhanden.
Das hat nichts mit GCC zu tun. asm/ioctls.h ist ein Systemheader aus dem Linux-Kernel. Standardmäßig wird der Header für deine Architektur, die du benutzt auch unter /usr/include installiert, allerdings vermute ich mal du verwendest einen Intel PC? Dann bräuchtest du erstmal einen Cross-Compiler der als Targetsystem die CRiS Architektur hat. Siehe http://developer.axis.com/wiki/doku....mpiler_install

Zitat von
Johson
Hat CRIS ausschliesslich was mit axis zutun?
Ja.

Zitat von
http://www.mjmwired.net/kernel/Documentation/cris/
CRIS is an acronym for 'Code Reduced Instruction Set'. It is the CPU
architecture in Axis Communication AB's range of embedded network CPU's,
called ETRAX. The latest CPU is called ETRAX 100LX, where LX stands for
'Linux' because the chip was designed to be a good host for the Linux
operating system.

Zitat von
Johson
Kannst du mir jetzt da weiterhelfen? Denn die Karte (CP 134U - moxa.com) funktioniert wohl einwandfrei.
Also hast du den Treiber installiert? http://www.moxa.com/support/download.aspx?d_id=1662
Gruß
Geändert von deepthroat (03.09.09 um 17:26 Uhr)
.:Mitglied des 1. offiziellen Sven Uwe Fan-Clubs:.

Zitat von
Johson
Super... ich dachte ich hätts jetzt. Wenn CRIS von Axis kommt, frage ich mich, warum mir der Support von moxa nichts erzählt. denn die Treiber liefern Sie ja mit und installiert habe ich se auch.
Und die Beispielprogramme sind dir auch aufgefallen?

Zitat von
Johson
Wenn ich CRIS jetzt über einen Cross Compiler zum laufen bekomme, kann ich es denn ganz normal nutzen unter gcc? oder gibs da abhängigkeiten zu axis.
Nochmal: CRiS ist eine Architektur, also Hardware. Die cross-compilierten Programme sind nur auf einer CRiS Hardware lauffähig. Die du vermutlich nicht hast?

Zitat von
Johson
Und ja, ich habe hier nur einen Intel PIII .
So wie es aussieht möchtest du eine Lochstreifenkarte auf einem Abakus ausführen.... 
Gruß
.:Mitglied des 1. offiziellen Sven Uwe Fan-Clubs:.

Zitat von
Johson
Ja die sind mir aufgefallen, aber das habe ich schon versucht dem support vom moxa zu erklären. Ich muss eine Application unter Linux schreiben. Dazu brauche ich die termios.h, die unteranderem die Baudraten zur Verfügung stellt. Somit ist die Windows.h nicht wirklich hilfreich.
Ich rede nicht von den Windows Beispielen, sondern von den Beispielen, die beim Linuxtreiber dabei sind - siehe Link 
- msterm A simple terminal program which is useful in testing serial
ports.
- muestty Device configuration tool for MUE series PCI Express
multiport board(CP-102E, CP-102EL, CP-132EL, CP-132EL-I,
CP-114EL, CP-114EL-I).
The tool provides two functions to set and get inerface
and terminator resistor on the device.
Gruß
.:Mitglied des 1. offiziellen Sven Uwe Fan-Clubs:.
Lesezeichen