JAVA - praca so seroivym portom

Programovacie jazyky, rady, poradňa...
greengold
Amateur
Amateur
Príspevky: 11
Registrovaný: 22 máj 2007, 0:38
Kontaktovať používateľa:

JAVA - praca so seroivym portom

Príspevok od používateľa greengold »

cafte!
nesom nijaky expert no ucim saprogramovat v jave a napadlo ma ze si spravim program na ovladanie nejakych periferii cez seriovy port.
Neviem ale vobec ako sa so seriovym portom robi a nenasiel so mziadny schopny material na nete.viete pomoct?
dakujeeem :)
vivaSlovakia
Guru wannabe
Guru wannabe
Príspevky: 2119
Registrovaný: 29 júl 2006, 10:30

Re: JAVA - praca so seroivym portom

Príspevok od používateľa vivaSlovakia »

greengold napísal:cafte!
nesom nijaky expert no ucim saprogramovat v jave a napadlo ma ze si spravim program na ovladanie nejakych periferii cez seriovy port.
Neviem ale vobec ako sa so seriovym portom robi a nenasiel so mziadny schopny material na nete.viete pomoct?
dakujeeem :)
pozri si kniznice http://www.rxtx.org/

btw, najdu sa aj vhodnejsie jazyky na komunikaciu so seriovym portom :)
greengold
Amateur
Amateur
Príspevky: 11
Registrovaný: 22 máj 2007, 0:38
Kontaktovať používateľa:

Príspevok od používateľa greengold »

tak som sa s tym trochu hral ,staahol som si kniznice,pridal aa chcel som odskusat jeden predpisany kod z wiki...zevraj to nema main class...podlamna tak je (: ...pozrete s a mi nato ? ..:

Kód: Vybrať všetko

package serial;


import gnu.io.*;

import java.util.*;

public class Main {

    
  
    public static HashSet getAvailableSerialPorts() {
        HashSet h = new HashSet();
        Enumeration thePorts = CommPortIdentifier.getPortIdentifiers();
        while (thePorts.hasMoreElements()) {
            CommPortIdentifier com = (CommPortIdentifier) thePorts.nextElement();
            switch (com.getPortType()) {
            case CommPortIdentifier.PORT_SERIAL:
                try {
                    CommPort thePort = com.open("CommUtil", 50);
                    thePort.close();
                    h.add(com);
                } catch (PortInUseException e) {
                    System.out.println("Port, "  + com.getName() +  ", is in use.");
                } catch (Exception e) {
                    System.err.println("Failed to open port " + com.getName());
                    e.printStackTrace();
                }
            }
        }
        return h;
    }


}
konyk87
King
King
Používateľov profilový obrázok
Príspevky: 1709
Registrovaný: 24 okt 2007, 15:56

Príspevok od používateľa konyk87 »

greengold napísal:tak som sa s tym trochu hral ,staahol som si kniznice,pridal aa chcel som odskusat jeden predpisany kod z wiki...zevraj to nema main class...podlamna tak je (: ...pozrete s a mi nato ? ..:
nema to main-class :) tak sa oznacuje trieda, ktora obsahuje metodu main() - ta sa spusta ako prva po spusteni programu a vola ostatne metody (u jednoduchych programov je cely kod v tejto metode)..

btw daj si to do code, lebo takto sa to neda citat :wink:

este jedna vec..ake mas vyvojove prostredie? lebo takato organizacia kodu sa pouziva v NetBeans, ale napr v JCreator-e taky kod neskompilujes..
greengold
Amateur
Amateur
Príspevky: 11
Registrovaný: 22 máj 2007, 0:38
Kontaktovať používateľa:

Príspevok od používateľa greengold »

konyk87 napísal:
este jedna vec..ake mas vyvojove prostredie? lebo takato organizacia kodu sa pouziva v NetBeans, ale napr v JCreator-e taky kod neskompilujes..
Ano,je to z NetBeans...a mohol by si mi ten kod upravit,prosimta?...btw. toto je len na zistovanie poctu seriovych portov,ale ja by som chcel aj nastavovat konkretne piny...pomohol by si mi s tym?nikde nevim najs t dobre materialy a ja som iba zaciatocnik :oops:
dikyy dik
konyk87
King
King
Používateľov profilový obrázok
Príspevky: 1709
Registrovaný: 24 okt 2007, 15:56

Príspevok od používateľa konyk87 »

ja tiez nie som profesional a nikdy som nic taketo nerobil :) ale myslim, ze pokial si skutocne zaciatocnik, tak by si mal zacat inymi vecami ako toto :)
ale..ked si si vytvaral novy projekt v NetBeanse, tak si zrejme nezaskrtol moznost "Create Main class" - v tom generovanom kode by bola automaticky aj metoda main(), z ktorej by si tu metodu getAvailableSerialPorts(), mohol volat..
ale viac ti asi neporadim :oops:
greengold
Amateur
Amateur
Príspevky: 11
Registrovaný: 22 máj 2007, 0:38
Kontaktovať používateľa:

Príspevok od používateľa greengold »

noo,programujem iba jeden semester co som na skole (:
takze main calss sa mi vytvorila,ale sak hento uz obsahovalo

Kód: Vybrať všetko

public static HashSet getAvailableSerialPorts()
tak som to zal namiesto main() ...aby to nehlasilo chyby :D jako to my vyzerat? :?
--==[ RA ]==--
Light Professional
Light Professional
Používateľov profilový obrázok
Príspevky: 841
Registrovaný: 03 mar 2006, 18:07
Bydlisko: Kosice
Kontaktovať používateľa:

Príspevok od používateľa --==[ RA ]==-- »

No urobil som ti tam to tak aby to bolo spustitelne, aspon dufam, nemozem to vyskusat pretoze nemam prilinkovane tie subory co si tahal z netu. Urobil som Main class a v nej som vytvoril instanciu triedy SerialPort a potom som na nom volal metodu getAvailableSerialPorts() ci ako to bolo. Vyskusaj a uvidis.
Prílohy
Serial.rar
(9.07 KiB) 38 stiahnutí
greengold
Amateur
Amateur
Príspevky: 11
Registrovaný: 22 máj 2007, 0:38
Kontaktovať používateľa:

Príspevok od používateľa greengold »

--==[ RA ]==-- napísal:No urobil som ti tam to tak aby to bolo spustitelne, aspon dufam, nemozem to vyskusat pretoze nemam prilinkovane tie subory co si tahal z netu. Urobil som Main class a v nej som vytvoril instanciu triedy SerialPort a potom som na nom volal metodu getAvailableSerialPorts() ci ako to bolo. Vyskusaj a uvidis.
dobree,skompiluje to,ale nejde to...neviem to vyladit lebo tam je strasne vela funkcii ktore nepoznam...vies,alebo hocikto iny narabat so seriovym potrom? vsetko co chcem je nastavit nejaky pin/piny.
nechcem robit ziadny komunikacny kanal cez com port iba nastavit nejaky pin..chcem tak vela?..vie mi v tom nekto pomoct?

dakujem za akekolvek rady

EDIT: vlastne so msi akorat uvedomil ze to nemusi ist zato ze na notebooku nemam ziadne COM porty ,zajtra prejdem na desktop (: ..ale ajtak by to malo aspon vyhodit vynimku.
takze zahajujem boj o ovladnutie COM portu (:
diky za spojenecke rady este raz (:
Napísať odpoveď