hi,
es sieht wie folgt aus:
-die elektronik soll über den pc angesteuert werden. genauergesagt über die COM1 schnittstelle

-das Java programm kann nur bitmuster rausschicken, das eigentlich aus ASCII zeichen besteht, ich habe geplant einsen und nullen auszugeben und damit einen IC anzusteuern, der dann wiederrum den rest der schaltung schaltet. andererseits muss ich erst herausfinden, wann die schnittstelle welche bitmuster ausgibt.

-ich weis nicht welches IC bitmuster verwerten kann

-auserdem weis ich nicht wie genau die schaltung aussehen soll, da der strom verstärkt werden muss, aber in einem beitrag weiter oben hab ich eine skizze gemacht. die aber wahrscheinlich überarbeitet werden muss.

- Die motoren müssen in der drehzahl steuerbar sein, da habe ich an einen poti gedacht, aber auch da muss ich euch fragen, da ich nicht der experte in dem gebiet bin.


ahja hier ein teil vom java programm

ich habe es mit javax.comm gemacht und da wiederrum die beispielklassen
portlisting und sipmlewrite.
diese beispielklassen hab ich ein kleines bischen verändert.

ich habe led´s an die schnittstelle gesteckt und irgendwie tut sich da noch nichts

hier das prog:
portlisting

public class PortListing {

public static void main(String[] args) {

Enumeration en = CommPortIdentifier.getPortIdentifiers();

while (en.hasMoreElements()) {
CommPortIdentifier cpi = (CommPortIdentifier)en.nextElement();
System.out.print(cpi.getName()+" => ");
System.out.println(cpi.getPortType());

}

}

und hier das simplewrite:

public class SimpleWrite {

static Enumeration portList;
static CommPortIdentifier portId;
protected static String messageString;
static SerialPort serialPort;
static OutputStream outputStream;
static boolean outputBufferEmptyFlag = false;
protected static String defaultPort;

public SimpleWrite(String message, String port){

SimpleWrite.messageString = message;

SimpleWrite.defaultPort = port;

}

public static void main(String[] args) {

boolean portFound = false;

portList = CommPortIdentifier.getPortIdentifiers();

while (portList.hasMoreElements()) {

portId = (CommPortIdentifier) portList.nextElement();

if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {

if (portId.getName().equals(defaultPort)) {

System.out.println("Found port " + defaultPort);

portFound = true;

try {
serialPort = (SerialPort) portId.open("SimpleWrite", 2000);

} catch (PortInUseException e) {

System.out.println("Port in use.");

continue;
}

try {

outputStream = serialPort.getOutputStream();

} catch (IOException e) {


}

try {

serialPort.setSerialPortParams(1200, SerialPort.DATABITS_7, SerialPort.STOPBITS_2, SerialPort.PARITY_NONE);

} catch (UnsupportedCommOperationException e) {


}

try {

serialPort.notifyOnOutputEmpty(true);

} catch (Exception e) {

System.out.println("Error setting event notification");

System.out.println(e.toString());

System.exit(-1);

}


System.out.println("Writing \""+messageString+"\" to "+serialPort.getName());

try {

outputStream.write(messageString.getBytes());

} catch (IOException e) {


}

try {

Thread.sleep(2000); // Be sure data is xferred before closing

} catch (Exception e) {


}

serialPort.close();

System.exit(1);

}

}

}

if (!portFound) {

System.out.println("port " + defaultPort + " not found.");

}

}

}

hier muss ich noch den commportdentifier einfügen.




und

BITTE FRAGT, wenn ihr nicht ganz versteht was ich meine, bin bei den sachen echt ein bischen ratlos....

danke für die antworten
MfG Denis