komunikation med serial-port i java??

Få hjælp til at sætte programmer eller funktioner op.
zharc
Indlæg: 3
Tilmeldt: 11. nov 2009, 23:23

komunikation med serial-port i java??

Indlæg af zharc »

Har nu prøvet at få min kode som virkede i windows til at virke i linux. men har kæmpe problemet med at få "comm"-pakken til at fungere. har prøvet et utal af dem men til ingen verdens nytte :(

tænker på om man ikke direkte kan tage koden fra win (har selvf. skiftet device ;) ), og så den virker med linux comm-pakkerne???
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: komunikation med serial-port i java??

Indlæg af lath »

zharc skrev:Har nu prøvet at få min kode som virkede i windows til at virke i linux. men har kæmpe problemet med at få "comm"-pakken til at fungere. har prøvet et utal af dem men til ingen verdens nytte :(

tænker på om man ikke direkte kan tage koden fra win (har selvf. skiftet device ;) ), og så den virker med linux comm-pakkerne???


Hej, og velkommen til forum. :)

Har lige kigget i javax.comm pakken.

Prøv at droppe lidt kode her i et nyt indlæg her i tråden.

Jeg er selv interesseret i hvor du angiver hvilken seriel port du vil snakke med: (dvs. noget a la /dev/ttyS0, som svarer til første COM port i windows.)

Læg mærke til følgende tekst i beskrivelsen af javax.comm.CommPort:
SerialPort and ParallelPort are subclasses of CommPort that include additional methods for low-level control of physical communications ports.

There are no public constructors for CommPort. Instead an application should use the static method CommPortIdentifier.getPortIdentifiers to generate a list of available ports. It then chooses a port from this list and calls CommPortIdentifier.open to create a CommPort object. Finally, it casts the CommPort object to a physical communications device class like SerialPort or ParallelPort.

After a communications port has been identified and opened it can be configured with the methods in the low-level classes like SerialPort and ParallelPort. Then an IO stream can be opend for reading and writing data. Once the application is done with the port, it must call the close method. Thereafter the application must not call any methods in the port object. Doing so will cause a java.lang.IllegalStateException to be thrown.


/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
jlouis
Indlæg: 56
Tilmeldt: 10. aug 2009, 00:23
IRC nickname: jlouis

Re: komunikation med serial-port i java??

Indlæg af jlouis »

zharc skrev:Har nu prøvet at få min kode som virkede i windows til at virke i linux. men har kæmpe problemet med at få "comm"-pakken til at fungere. har prøvet et utal af dem men til ingen verdens nytte :(

tænker på om man ikke direkte kan tage koden fra win (har selvf. skiftet device ;) ), og så den virker med linux comm-pakkerne???


Har du rettighed til at snakke med devicet?
zharc
Indlæg: 3
Tilmeldt: 11. nov 2009, 23:23

Re: komunikation med serial-port i java??

Indlæg af zharc »

Takker for velkomsten :) - hvordan citere man indlæg :)

jeg bruger /dev/ttyACM0 - laver en dmesg for at se hvor devicen er.

Den kommer ud med:
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: com.sun.comm.SunrayInfo.isSessionActive()Z

lath - du kan godt være inde på noget at det rigtige, for den når ikke længere ind , getPortIdentifier.

Kan godt få adgang til mobil'en via minicom. har ændret rettighederne på devicen nu, og er det samme.


koden:

portId = CommPortIdentifier.getPortIdentifier("/dev/ttyACM0"); <---------------- det er her den siger fejl!

serialPort = (SerialPort) portId.open("ComControl", 2000);

setSerialPortParameters();

outputStream = serialPort.getOutputStream();
inputStream = serialPort.getInputStream();

og nogen "cathes"
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: komunikation med serial-port i java??

Indlæg af lath »

zharc skrev:Takker for velkomsten :) - hvordan citere man indlæg :)

jeg bruger /dev/ttyACM0 - laver en dmesg for at se hvor devicen er.

Den kommer ud med:
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: com.sun.comm.SunrayInfo.isSessionActive()Z

lath - du kan godt være inde på noget at det rigtige, for den når ikke længere ind , getPortIdentifier.

Kan godt få adgang til mobil'en via minicom. har ændret rettighederne på devicen nu, og er det samme.


koden:

portId = CommPortIdentifier.getPortIdentifier("/dev/ttyACM0"); <---------------- det er her den siger fejl!

serialPort = (SerialPort) portId.open("ComControl", 2000);

setSerialPortParameters();

outputStream = serialPort.getOutputStream();
inputStream = serialPort.getInputStream();

og nogen "cathes"


portId variabelen er en liste af porte på systemet
the static method CommPortIdentifier.getPortIdentifiers to generate a list of available ports


/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
zharc
Indlæg: 3
Tilmeldt: 11. nov 2009, 23:23

Re: komunikation med serial-port i java??

Indlæg af zharc »

kan heller ikke sådan her:

CommPortIdentifier.getPortIdentifiers();

stadig samme fejl.
laoshi
Redaktør
Indlæg: 5515
Tilmeldt: 26. apr 2008, 20:52
IRC nickname: laoshi
Geografisk sted: Vejle

Re: komunikation med serial-port i java??

Indlæg af laoshi »

hvordan citere man indlæg

Hvis du vil citere et helt indlæg, så er der en 'citer' knap nederst. Hvis du kun vil citere en del af et indlæg, så bruger du 'Quote' knappen som står over det tekstfelt, som du skriver dit indlæg i.
Der er også andre knapper til formatering der oppe, bl.a. 'Code' som du bruger til at angive terminalkommandoer med.
"Von guten Mächten wunderbar geborgen
erwarten wir getrost was kommen mag.
Gott ist mit uns am Abend und am Morgen
Und ganz gewiss an jedem neuen Tag"

(Dietrich Bonhoeffer 1906-1945)

http://www.stromata.dk
https://wiki.ubuntu.com/FlemmingChristensen
https://launchpad.net/~laoshi
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: komunikation med serial-port i java??

Indlæg af lath »

zharc skrev:kan heller ikke sådan her:

CommPortIdentifier.getPortIdentifiers();

stadig samme fejl.


Indsæt følgende i et nyt indlæg i denne tråd:

  • 1)Hvilken exception?
    Start programmet fra Programmer > Tilbehør > Terminal og fortæl os hvad der bliver skrevet til STDERR, og/eller paste indholdet fra STDERR fra dit favorit IDE.
  • 2) Det kunne også være at jeg kunne få din kildekode*, så er det nemmere at hjælpe dig. Hvis det er noget firmakode, så eventuelt lade problemet være isoleret i noget testkode. (helst som konsol-kode)

*: lidt mere end den snip kode du gav - det giver lidt mere kontekst.

Edit:
Tjek også jlouis' forslag om du har rettigheder:
  • 1) System > Administration Brugere og Grupper
  • 2) Unlock og indtast kodeord, og tryk på Autoriseringsknap
  • 3) marker dit brugernavn
  • 4) tryk på egenskaber
  • 5) kig i fanebladet rettigheder

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags