Hallo zusammen, ich möchte mit meinem Windows XP Rechner Daten auf der seriellen Schnittstelle (10.400 kbps) mitloggen. Das Problem ist, dass es zu unkontrollierten Stromausfällen kommen kann, nach denen der Rechner neu booten muss. Das Booten dauert locker 60s - zu lange. Meine Idee zur Abhilfe war erst, auf MS-DOS statt auf XP zu setzen. Leider habe ich entdeckt, dass der dortige "mode"-Befehl nur vorkonfigurierte Baudraten unterstüzt und 10.400 kbps leider nicht dabei sind. Anders ist es bei der Dos-Box unter Windows XP - dort kann ich 10.400 kbps einstellen. Also müsste ich XP daz bringen, im DOS-Modus zu starten. Das war bei den alten Windows Versionen ja noch möglich. Bei XP aber leider nicht mehr. Meine nächste Idee wäre jetzt, eine Startdiskette zu erstellen und diese, mangels Diskettenlaufwerks, per USB booten zu lassen... Aber ich bin mir nicht sicher, ob ich mich da nicht verrenne... Deshalb meine Frage an Euch: Habt ihr eine einfachere Lösung? Ziel ist es, die serielle Schnittstelle mit 10.400 kbps zu überwachen (=Empfangsdaten in Datei schreiben) und diesen Zustand nach einem evtl. Stromausfall vollautomatisch und schnell wieder einzunehmen. Ich freue mich auf Eure Antworten! Steffen
Wie wäre es mit einem Linux-System? Wenn du dich damit auskennst dauert der Bootvorgang keine 10s.
es gibt keine dos-box unter xp. und ältere versionen von windows liessen sich auch nicht in einem "dos-modus" hochfahren. es wurde jediglich das zugrunde liegende dos gebootet und windows nicht gestartet. probiere es mal mit freedos.
Daran habe ich auch gedacht, aber leider kenne ich mich mit Linux überhaupt nicht aus :-( Ist es realistisch, das als Anfänger innerhalb von 1-2 Abenden hinzubekommen?
Steffen Hausinger schrieb: > Daran habe ich auch gedacht, aber leider kenne ich mich mit Linux > überhaupt nicht aus :-( Ist es realistisch, das als Anfänger innerhalb > von 1-2 Abenden hinzubekommen? ein Linux bootet auch nicht viel schneller als ein Windows. Bau einen SSD ein und schon bootet Linux und Windows in 5-7 Sekunden. Oder kaufe eine USV.
Steffen Hausinger schrieb: > Anders ist es bei der Dos-Box unter Windows XP - dort kann ich 10.400 > kbps einstellen. Das ist keine "Dos-Box", das ist die Windows-Eingabeaufforderung. Die hat mit DOS exakt gar nichts zu tun, daher sind Deine nachfolgenden Vermutungen über Bootdisketten etc. auch nicht zielführend. Wenn Du Dir tatsächlich den Betrieb mit DOS antun willst, musst Du nur die Schnittstelle selber "von Hand" konfigurieren, statt auf die beschränkten und völlig antiquitierten Funktionen des BIOS zur Ansteuerung der seriellen Schnittstelle zuzugreifen. Das empfiehlt sich sowieso, weil die noch nicht mal eine gepufferte Übertragung hinbekommen (sprich: interruptgesteuertes Senden/Empfangen). Und wenn Du die UART direkt ansprichst (also mit I/O-Zugriffen die verschiedenen Register programmierst), dann kannst Du auch beliebige Baudraten einstellen, sofern diese durch einen ganzzahligen Teiler aus 115200 erzeugt werden können. Das ist mit Deinen 10400 Baud übrigens nicht ohne Baudratenfehler möglich; bist Du Dir dessen bewusst? Die Hardware der PC-Schnittstelle erzeugt die Baudrate aus einem Takt von 1.8432 MHz, der durch 16 geteilt die höchste erreichbare Baudrate (die oben erwähnten 115200 Baud) erzeugt, und jede niedrigere durch einen ganzzahligen Teiler davon. Die physikalisch erzielbare Baudrate beträgt etwa 10473 Baud (bei einem Teiler von 11) und weicht damit um etwa ein Prozent von der gewünschten Baudrate ab. Natürlich bist Du dann auf "echte" Onboard-Schnittstellen angewiesen und kannst weder USB-Seriell-Adapter noch Schnittstellen auf PCI/PCIe-Karten verwenden. Was spricht gegen die Verwendung einer USV?
Löse das Problem doch elektrotechnisch: http://www.alternate.de/BlueWalker/PowerWalker-VFD-600-IEC-USV/html/product/1017669?
Ich werde heute Abend FreeDOS ausprobieren. Die Alternativen mit einer USV (oder einem Laptop - kommt ja aufs Gleiche hinaus) ist charmant, aber nicht rechtzeitig darstellbar. Ich habe nur 1-2 Abende. Der UART-Teiler sollte so passen, da es unter Windows bereits funktioniert. Dennoch danke für den Hinweis!
Steffen Hausinger schrieb: > seriellen Schnittstelle (10.400 kbps) Wer gibt denn solch eine krueppel baudrate vor?
Steffen Hausinger schrieb: > Ich werde heute Abend FreeDOS ausprobieren. Hast Du denn schon eine Software, die die UART ansteuert? Oder wie stellst Du Dir das ganze vor? Einfach nur mit dem mode-Kommando die Baudrate einstellen ist nur ein Bruchteil der Miete.
Rufus Τ. Firefly schrieb: > Hast Du denn schon eine Software, die die UART ansteuert? Ich dachte, mit "mode" konfiguriere ich die Schnittstelle und mit dem Umleitungsoperator leite ich den eintreffenden Datenstrom in eine Datei um. Geht das so nicht? Wie gesagt, es geht nur ums loggen. Es wird nichts gesendet. Falls das so nicht klappt, danke für den Tipp mit Telix!
Steffen Hausinger schrieb: > und mit dem > Umleitungsoperator leite ich den eintreffenden Datenstrom in eine Datei > um. Geht das so nicht? Das geht nur mit reinem Text; wenn da Binärdaten kommen, ist mit dem ersten Auftreten eines Ctrl+Z die Aufzeichnung beendet. Ein richtiges Terminalprogramm ist da eindeutig zu bevorzugen; wobei zu prüfen wäre, ob Telix auch Nicht-Standardbaudraten zulässt. Das ist bei DOS-Terminalprogrammen durchaus unüblich, und ich kenne keines (mehr), bei dem das geht (ist aber auch schon über 20 Jahre her, daß ich mir DOS-Terminalprogramme angetan habe).
Steffen Hausinger schrieb: > mit dem > Umleitungsoperator leite ich den eintreffenden Datenstrom in eine Datei > um. Das gibt fürchte ich ein Problem mit dem Ende - die Aufzeichnung wird beendet, wenn ein Ctrl-Z empfangen wird. Telix: kann alles, aber wahrscheinlich keine 10400 Baud, das gibt DOS nicht her und Programme wie Telix oder Procomm sind recht ordentlich programmiert, gehen also nicht direkt an die Hardware. Georg
Steffen Hausinger schrieb: > Ich werde heute Abend FreeDOS ausprobieren. Dann schau Dir Telix genau an. Vor allem die mächtige Scriptsprache SALT, die sehr nach C aussieht. Damit habe ich damals viel gemacht, aber ob 10400 Baud möglich sind weiss ich heute nicht mehr. Viel Erfolg
Kaj schrieb: > Wer gibt denn solch eine krueppel baudrate vor? Das ist genau ein Viertel von 41.6 kbit/s. Macht doch Sinn. Die bei der ISO machen keine halben Sachen ;-(
Georg schrieb: > Programme wie Telix oder Procomm sind recht ordentlich > programmiert, gehen also nicht direkt an die Hardware. Oh, und ob die das tun. Unter DOS gibt es keine brauchbare Unterstützung der seriellen Schnittstellen; wenn man vernünftig mit denen umgehen möchte und auch noch Baudraten jenseit der 19200 Baud nutzen will, dann muss man die unter Umgehung der jämmerlich primitiven BIOS-Routinen direkt ansprechen. Die BIOS-Routinen (die auch von DOS genutzt werden) kennen noch nicht einmal gepuffertes Senden/Empfangen von Daten, ganz zu schweigen von den Hardware-FIFOs neuerer Schnittstellenbausteine (16550).
Wieso nimmst du da keinen ELM323? Der ist doch extra dafür da.
Christian R. schrieb: > Wieso nimmst du da keinen ELM323? Der ist doch extra dafür da. Vermutlich weil er schon paarmal gesagt hat, daß er nur 1-2 Abende hat, die Geschichte zum Laufen zu bringen...
Mike schrieb: > Das ist genau ein Viertel von 41.6 kbit/s. Macht doch Sinn. Die bei der > ISO machen keine halben Sachen ;-( Keine halben Sachen... aber wie du selber sagst: dafür machen sie viertel Sachen :D
npn schrieb: > Vermutlich weil er schon paarmal gesagt hat, daß er nur 1-2 Abende hat, > die Geschichte zum Laufen zu bringen... OK, wenn man die Lieferzeit mit einrechnet, wirds echt knapp. Ich dachte die Zeitangabe sei netto.
Das Steuerzeichen Ctrl-Z... nicht schlecht, daran hab ich überhaupt nicht gedacht! Dann klappt das mit den Bordmitteln von DOS also nicht zuverlässig. Ich hab gestern Abend ein paar Dinge erfolglos ausprobiert und mich heute Morgen dann dazu entschieden, das ganze mit Windows und Makros zu lösen. Bleiben die 60s Totzeit - ich habe in meinem Bekanntenkreis aber einen Laptop mit ausreichend kräftigem Akku auftreiben können. Ich hoffe, das reicht. Herzlichen Dank für alle Tipps!! Steffen
Mit einem raspi sollten mit dem entsprechenden System die 10 s drinnen sein. Und unter Linux ist die serielle Schnittstelle einfach zugreifbar. Das sollte als einzeiler für die config und nochmal ein einzeiler in der Shell fürs loggen gehen.
Die FTDI können auch "fractional Divisor", also mit Nachkomma im Teiler. Einfach mal googln : FTDI fractional divisor.
uwe schrieb: > Die FTDI können auch "fractional Divisor", also mit Nachkomma im Teiler. > Einfach mal googln : FTDI fractional divisor. nur wird er den bestimmt unter dos nicht zum laufen bringen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.