| Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme. |
Diskussion: Datenuebertragung per Null-Modem-Kabel im Forum Code Kitchen, in der Kategorie Software Home; Anzeige An Java- und andere Programmier-Geeks: Brauche mal support, ich sitze schon die ganze Zeit dran und finde den Fehler ...
![]() |
| | #1 (permalink) |
| Registriert seit: 07.10.01 ![]() Likes: 0 | Anzeige An Java- und andere Programmier-Geeks: Brauche mal support, ich sitze schon die ganze Zeit dran und finde den Fehler nicht (wahrscheinlich simpel) Das Prog. soll Daten ueber ein Null-Modem-Kabel an einen anderen Rechner senden, mit einzelnen Zeichen geht das auch wunderbar, nur irgendwie will er keinen String senden. Hoffe, einer von euch findet was :) Code: import support.Console;
import directio.IOPortAccess;
public class Datenübertragung {
IOPortAccess ioPort;
public Datenübertragung () {
ioPort = new IOPortAccess();
ioPort.openDriver();
}
public void übertragen(String string) throws Exception {
for(int i=0; i<string.length(); i++)
sendeByte(string.charAt(i));
}
public void sendeByte (char zeichen) throws Exception {
// 1. lo-Nibble senden
byte lo = (byte)(zeichen & 0x0F);
ioPort.writePort(0x378, lo);
// 2. auf Bestätigung warten
while((ioPort.readPort(0x379) & 0x80) != 0x80) {
}
// 3. hi-Nibble senden
byte hi = (byte)((zeichen >> 4) | 0x10);
ioPort.writePort(0x378, hi);
// 4. Warten auf Bestätigung
while((ioPort.readPort(0x379) & 0x80) != 0x00) {
}
}
public char empfange ()throws Exception {
byte lo, hi, zeichen;
while((ioPort.readPort(0x379) & 0x80) != 0x80) {
}
lo= (byte)((ioPort.readPort(0x379) & 0x78) >> 3);
ioPort.writePort(0x378, 0x00);
while((ioPort.readPort(0x379) & 0x80) != 0x00){
}
hi= (byte)((ioPort.readPort(0x379) & 0x78) << 1);
ioPort.writePort(0x378, 0x10);
zeichen= (byte)(hi+lo);
Console.println((char)zeichen);
return (char)zeichen;
}
public static void main(String[] args) {
Datenübertragung jo = new Datenübertragung();
try {
//jo.sendeByte((byte)'B');
//jo.empfange();
jo.übertragen("Hallo Welt!!!");
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
} |
| | |
| | #2 (permalink) |
| Member of Honour ![]() Registriert seit: 28.05.03 ![]() Likes: 1 | wie sieht denn die main funktion beim empfänger aus? also wird die empfange() funktion nach empfang eines zeichens auch wieder aufgerufen? weil die funktion empfängt ja immer nur 1 zeichen. ansonsten würde ich dir empfehlen das programm mal zu debuggen und dann gucken wo das programm hängt. oder anstatt zu debuggen ein paar statusmeldungen in der console ausgeben wie "warte auf bestätigung", "bestätigung erhalten" usw. dann weißt du an welchem teil des codes es liegt und findest vielelicht den fehler.
__________________ http://livehabo.hackerboard.de | http://livebb.sourceforge.net |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Themenstarter Registriert seit: 07.10.01 ![]() Likes: 0 | Auf beiden Rechnern wird der selbe Code gestartet, nur jeweils die andere Methode ausgeklammert (senden/empfangen) aber *patscht* natuerlich! Wenn ich empfange() nur einmal aufrufe, kanns auch nur ein Zeichen empfangen ![]() Ich dank dir |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| MYSQL: NULL =0 Oo | kcirta | Applikationen | 6 | 14.08.08 07:11 |
| 2 Rechner über ein modem mit W-Lan und Kabel? | Qkiller | WLAN-Zone | 5 | 13.11.07 08:58 |
| Kabel-Modem | H4life | Hardware Probleme | 1 | 02.02.07 18:17 |
| von null auf hundert in 2 sec | Crux | Fun Section | 1 | 28.05.05 10:45 |
| USB Modem langsamer als Com-Port-Modem??? | madox80 | Die Problemzone | 7 | 27.12.03 19:46 |